BillLineItems
Create, update, delete, and query QuickBooks Bill Line Items.
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.
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 Bills and BillExpenseItems to insert a Bill.
To add a Bill, specify a Vendor, Date, and at least one Expense or Line Item. All Line Item columns can be used for inserting multiple Line Items for a new Bill transaction. For example, the following will insert a new Bill with two Line Items:
INSERT INTO BillLineItems#TEMP (VendorName, Date, ItemName, ItemQuantity) VALUES ('Cal Telephone', '1/1/2011', 'Repairs', 1) INSERT INTO BillLineItems#TEMP (VendorName, Date, ItemName, ItemQuantity) VALUES ('Cal Telephone', '1/1/2011', 'Removal', 2) INSERT INTO BillLineItems (VendorName, Date, ItemName, ItemQuantity) SELECT VendorName, Date, ItemName, ItemQuantity FROM BillLineItems#TEMP
Columns
Name | Type | ReadOnly | References | ColumnSize | Description |
ID [KEY] | String | True | 255 |
The unique identifier in the format BillId|ItemLineId. | |
BillId | String | False |
Bills.ID | 255 |
The bill identifier. |
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. | ||
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. |
Amount | Decimal | True |
Amount of the transaction. This is calculated by QuickBooks based on the line items or expense line items. | ||
Memo | String | False | 5000 |
Memo for the transaction. | |
IsPaid | Boolean | True |
Indicates whether this bill has been paid. | ||
IsTaxIncluded | Boolean | False |
Determines if tax is included in the transaction amount. Available in only international editions of QuickBooks. | ||
ItemLineId | String | True | 255 |
The line item identifier. | |
ItemLineNumber | String | True | 255 |
The line item number. | |
ItemName | String | False |
The item name. | ||
ItemId | String | False |
Items.ID | 255 |
The item name. |
ItemGroup | String | False | 100 |
Item group name. Reference to a group of line items this item is part of. | |
ItemGroupId | String | False |
Items.ID | 255 |
Item group name. Reference to a group of line items this item is part of. |
ItemDescription | String | False | 5000 |
A description of the item. | |
ItemQuantity | Double | False |
The quantity of the item or item group specified in this line. | ||
ItemUnitOfMeasure | String | False | 31 |
In a transaction line item, the name of the unit of measure is selected from within the item's available units. If the company file is enabled only for single unit of measure per item, this must be the base unit. Only available in QBXML Version 7.0 and above. | |
ItemCost | Double | False |
The unit cost for the item. | ||
ItemAmount | Decimal | False |
Total amount for the item. | ||
ItemBillableStatus | String | False | 13 |
Billing status of the item. The allowed values are EMPTY, BILLABLE, NOTBILLABLE, HASBEENBILLED. | |
ItemCustomer | String | False | 1000 |
The name of the customer who ordered the item. | |
ItemCustomerId | String | False |
Customers.ID | 255 |
The Id of the customer who ordered the item. |
ItemInventorySiteId | String | False | 31 |
The inventory site Id of this item. This requires QBXML version at least 10.0 and the Advanced Inventory add-on. | |
ItemInventorySiteName | String | False | 255 |
The inventory site name of this item. This requires QBXML version at least 10.0 and the Advanced Inventory add-on. | |
ItemInventorySiteLocationId | String | False | 31 |
The inventory site location Id of this item. This requires QBXML version at least 10.0 and the Advanced Inventory add-on. | |
ItemInventorySiteLocationName | String | False | 255 |
The inventory site location name of this item. This requires QBXML version at least 10.0 and the Advanced Inventory add-on. | |
ItemSerialNumber | String | False | 5000 |
The serial number of this item. This requires QBXML version at least 11.0 and the Advanced Inventory add-on. | |
ItemLotNumber | String | False | 40 |
The lot number of this item. This requires QBXML version at least 11.0 and the Advanced Inventory add-on. | |
ItemClass | String | False | 1000 |
The name for the class of the item. | |
ItemClassId | String | False |
Class.ID | 255 |
The Id for the class of the item. |
ItemTaxCode | String | False | 3 |
Sales tax information for this item (taxable or non-taxable). | |
ItemTaxCodeId | String | False | 255 |
Sales tax information for this item (taxable or non-taxable). | |
ItemCustomFields | String | False |
The custom fields for this lineitem. | ||
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. |
ExchangeRate | Decimal | False |
Exchange Rate is the market price for which this currency can be exchanged for the currency used by the QuickBooks company file as the 'home' currency. | ||
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 |
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. |
ItemOverrideAccount | String |
The Account Name used to override the default Account for the Item. This is only available during inserts and updates. |
ItemOverrideAccountId | String |
The Account Id used to override the default Account for the Item. This is only available during inserts and updates. |