CData Python Connector for QuickBooks

Build 24.0.9060

Bills

Create, update, delete, and query QuickBooks Bills.

Table Specific Information

Bills may be inserted, queried, or updated via the Bills, BillExpenseItems, or BillLineItems tables. Bills may be deleted by using the Bills table.

This table has a Custom Fields column. See the Custom Fields page for more information.

Select

By default, SupportEnhancedSQL is set to true, and the following will be honored if present. Other filters will be executed client side. If SupportEnhancedSQL is set to false, only the following filters will be honored.

QuickBooks allows only a small subset of columns to be used in the WHERE clause of a SELECT query. These columns can typically be used with only the equals or = comparison. The available columns for Bills are Id, Date, ReferenceNumber, VendorName, VendorId, AccountsPayable, AccountsPayableId, IsPaid, and TimeModified. TimeModified and Date may be used with the >, >=, <, <=, or = conditions and may be used twice to specify a range. ReferenceNumber may be used with the = or LIKE conditions to establish a starts-with, ends-with, or contains syntax. For example:

SELECT * FROM Bills WHERE TimeModified > '1/1/2011' AND TimeModified < '2/1/2011' AND ReferenceNumber LIKE '%12345%'

Insert

You can also use BillLineItems and BillExpenseItems to insert a bill.

To add a Bill, specify a Vendor, Date, and at least one Expense or Line Item. The ItemAggregate and ExpenseAggregate columns may be used to specify an XML aggregate of Line or Expense Item data. The columns that may be used in these aggregates are defined in the BillLineItems and BillExpenseItems tables and it starts with Item and Expense. For example, the following will insert a new Bill with two Line Items:

INSERT INTO Bills (VendorName, Date, ItemAggregate) 
VALUES ('Cal Telephone', '1/1/2011', 
'<BillLineItems>
<Row><ItemName>Repairs</ItemName><ItemQuantity>1</ItemQuantity></Row>
<Row><ItemName>Removal</ItemName><ItemQuantity>2</ItemQuantity></Row>
</BillLineItems>')
To insert subitems, set the ItemName field to the FullName of the item; for example, '<Row><ItemName>Subs:Carpet</ItemName><ItemQuantity>0</ItemQuantity></Row>'

Columns

Name Type ReadOnly References ColumnSize Description
ID [KEY] String True 255

The unique identifier for the bill.

VendorName String False 1000

Vendor for this transaction. Either VenderName or VendorId must have a value when inserting.

VendorId String False

Vendors.ID

255

Vendor Id for this transaction. Either VenderName or VendorId must have a value when inserting.

ReferenceNumber String False 21

Reference number for the transaction.

Date Date False

Date of the transaction. If it is set in the WHERE clause of a SELECT query, the pseudo columns StartDate and EndDate are overwritten with the value.

Amount Decimal True

Amount of the transaction. This is calculated by QuickBooks based on the Line Items or Expense Line Items.

TxnNumber Integer True

The transaction number. An identifying number for the transaction, different from the QuickBooks-generated Id.

DueDate Date False

Date when payment is due.

Terms String False 100

Reference to terms of payment.

TermsId String False 255

Reference Id for the terms of payment.

AccountsPayable String False 1000

Reference to the accounts-payable account.

AccountsPayableId String False

Accounts.ID

255

Reference Id for the accounts-payable account.

Memo String False 5000

Memo for the transaction.

IsPaid Boolean True

Indicates whether this Bill has been paid.

ExchangeRate Double False

The market price for which this currency can be exchanged for the currency used by the QuickBooks company file as the home currency.

IsTaxIncluded Boolean False

Determines if tax is included in the transaction amount. Available in only international editions of QuickBooks.

ItemCount Integer True

The count of line items.

ItemAggregate String False 5000

An aggregate of the line item data which can be used for adding a bill and its line item data.

ExpenseItemCount Integer True

The count of expense line items.

ExpenseItemAggregate String False 5000

An aggregate of the expense item data which can be used for adding a bill and its expense item data.

TransactionCount Integer True

The count of related transactions to the bill.

TransactionAggregate String True 5000

An aggregate of the linked transaction data.

CurrencyName String False 64

Name of the currency code used for this bill.

CurrencyId String False

Currency.ID

1000

Id of the currency code used for this bill.

CustomFields String False

Custom fields returned from QuickBooks and formatted into XML.

TimeModified Datetime True

When the bill was last modified.

TimeCreated Datetime True

When the bill was created.

OpenAmount Decimal True

The current balance for the Vendor

Pseudo-Columns

Pseudo Column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.

Name Type Description
Item* String

All line-item-specific columns may be used in insertions.

Expense* String

All expense-item-specific columns may be used in insertions.

LinkToTxnId String

A transaction to link the bill to. This transaction must be a purchase order. You will get a run-time error if the transaction specified is already closed or fully received. This is only available on insert and requires a minimum QBXML Version 4.0.

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9060