ODBC Driver for QuickBooks

Build 24.0.9060

InvoiceLineItems

Create, update, delete, and query QuickBooks Invoice Line Items.

Table Specific Information

Invoices may be inserted, queried, or updated via the Invoices or InvoiceLineItems tables. Invoices may be deleted by using the Invoices 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 Invoices are Id, Date, TimeModified, ReferenceNumber, CustomerName, CustomerId, IsPaid, Account, and AccountId. 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 InvoiceLineItems WHERE TimeModified > '1/1/2011' AND TimeModified < '2/1/2011' AND ReferenceNumber LIKE '%12345%'

Insert

To add an Invoice, specify a Customer and at least one Line Item. All Line Item columns can be used for inserting multiple Line Items for a new Invoice transaction. For example, the following will insert a new Invoice with two Line Items:

INSERT INTO InvoiceLineItems#TEMP (CustomerName, ItemName, ItemQuantity) VALUES ('Abercrombie, Kristy', 'Repairs', 1)
INSERT INTO InvoiceLineItems#TEMP (CustomerName, ItemName, ItemQuantity) VALUES ('Abercrombie, Kristy', 'Removal', 2)
INSERT INTO InvoiceLineItems (CustomerName, ItemName, ItemQuantity) SELECT CustomerName, ItemName, ItemQuantity FROM InvoiceLineItems#TEMP

Columns

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

The unique identifier in the format InvoiceId|ItemLineId.

InvoiceId String False

Invoices.ID

The unique identifier of the Invoice.

ReferenceNumber String False 21

The transaction reference number.

TxnNumber Integer True

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

CustomerName String False 1000

The name of the customer on the invoice. Either CustomerName or CustomerId must have a value when inserting.

CustomerId String False

Customers.ID

255

The Id of the customer on the invoice. Alternatively give this field a value when inserting instead of CustomerName.

Account String False 1000

A reference to the accounts-receivable account where the money received from this transaction will be deposited.

AccountId String False

Accounts.ID

255

A reference to the accounts-receivable account where the money received from this transaction will be deposited.

Date Date False

The 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.

ShipMethod String False 1000

The shipping method associated with the invoice.

ShipMethodId String False

ShippingMethods.ID

255

The shipping method associated with the invoice.

ShipDate Date False

The shipping date associated with the invoice.

Memo String False 5000

A memo regarding this transaction.

Class String False 1000

A reference to the class of the transaction.

ClassId String False

Class.ID

255

A reference to the class of the transaction.

Amount Decimal True

The total amount for this invoice.

Message String False 101

A message to the vendor or customer to appear in the invoice.

MessageId String False

CustomerMessages.ID

255

A message to vendor or customer to appear in the invoice.

SalesRep String False 5

A reference to the (initials of) sales rep.

SalesRepId String False

SalesReps.ID

255

A reference to the sales rep.

FOB String False 13

Freight on board: The place to ship from.

BillingAddress String True

Full billing address returned by QuickBooks.

BillingLine1 String False 500

First line of the billing address.

BillingLine2 String False 500

Second line of the billing address.

BillingLine3 String False 500

Third line of the billing address.

BillingLine4 String False 500

Fourth line of the billing address.

BillingLine5 String False 41

Fifth line of the billing address.

BillingCity String False 255

City name for the billing address.

BillingState String False 255

State name for the billing address.

BillingPostalCode String False 30

Postal code for the billing address.

BillingCountry String False 255

Country for the billing address.

BillingNote String False 41

A note for the billing address.

ShippingAddress String True

Full shipping address returned by QuickBooks.

ShippingLine1 String False 500

First line of the shipping address.

ShippingLine2 String False 500

Second line of the shipping address.

ShippingLine3 String False 500

Third line of the shipping address.

ShippingLine4 String False 500

Fourth line of the shipping address.

ShippingLine5 String False 41

Fifth line of the shipping address.

ShippingCity String False 255

City name for the shipping address.

ShippingState String False 255

State name for the shipping address.

ShippingPostalCode String False 30

Postal code for the shipping address.

ShippingCountry String False 255

Country for the shipping address.

ShippingNote String False 41

A note for the shipping address.

Subtotal Decimal True

The gross subtotal of the invoice. This does not include tax or amount already paid.

Tax Double True

The total sales tax applied to this transaction.

TaxItem String False 100

A sales tax item refers to a single sales tax that is collected at a specified rate and paid to a single agency.

TaxItemId String False

SalesTaxItems.ID

255

A sales tax item refers to a single sales tax that is collected at a specified rate and paid to a single agency.

TaxPercent Double True

The percentage charged for sales tax.

PONumber String False 25

The purchase order number.

DueDate Date False

The date when payment is due.

Terms String False 100

The payment terms.

TermsId String False 255

The payment terms.

CustomFields String False

Custom fields returned from QuickBooks and formatted into XML.

ItemLineId String True

The line item identifier.

ItemLineNumber String True 255

The line item number.

ItemName String False 1000

The item name.

ItemId String False

Items.ID

255

The item identifier.

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 Id. Reference to a group of line items this item is part of.

ItemDescription String False 5000

A description of the item.

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.

ItemQuantity Double False

The quantity of the item or item group specified in this line.

ItemRate Double False

The unit rate charged for this item.

ItemRatePercent Double False

The rate precent charged for this item.

ItemTaxCode String False 3

Sales tax information for this item (taxable or nontaxable).

ItemTaxCodeId String False

SalesTaxCodes.ID

255

Sales tax information for this item.

ItemAmount Decimal False

Total amount for this item.

ItemClass String False 1000

The class name of the item.

ItemClassId String False

Class.ID

255

The class name of the item.

ItemServiceDate Date False

The service date for the item if the item is a type of service.

ItemInventorySiteId String False

InventorySites.ID

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.

ItemExpirationDateForSerialLotNumber String True 1099

The expiration date for serial lot number of this item. It is supported from QB Desktop 2023 version 3 (USA & Canada) and SDK 16.0.

ItemOther1 String False 29

The Other1 field of this line item. QBXMLVersion must be set to 6.0 or higher.

ItemOther2 String False 29

The Other2 field of this line item. QBXMLVersion must be set to 6.0 or higher.

ItemCustomFields String False

The custom fields for this line item.

ItemUOMSetFullName String False 1000

Indicates the price of something as a percent.

ItemUOMSetListID String False

UnitOfMeasure.ID

1000

Indicates the price of something as a percent.

ItemIsGetPrintItemsInGroup String False 1000

If true, a list of this group's individual items their amounts will appear on printed forms.

AppliedAmount Decimal True

The total amount of applied credits and payments.

Balance Decimal False

The unpaid amount for this sale.

CustomerTaxCode String False 3

The tax code specific to this customer.

CustomerTaxCodeId String False

SalesTaxCodes.ID

255

The tax code specific to this customer.

IsToBePrinted Boolean False

Whether this invoice is to be printed.

IsToBeEmailed Boolean False

Whether this invoice is to be emailed.

IsPaid Boolean True

Whether this invoice has been paid in full.

IsTaxIncluded Boolean False

Determines if tax is included in the transaction amount.

IsPending Boolean False

The transaction status (whether this transaction has been completed or it is still pending).

IsFinanceCharge String False 16

Whether this invoice includes a finance charge.

The allowed values are NotSet, IsFinanceCharge, NotFinanceCharge.

The default value is NotSet.

Template String False 100

A reference to a template specifying how to print the transaction.

TemplateId String False

Templates.ID

255

A reference to a template specifying how to print the transaction.

SuggestedDiscountAmount Decimal False

A suggested discount amount for the invoice.

SuggestedDiscountDate Date False

A suggested discount date for the invoice.

ExchangeRate Double False

Currency exchange rate for this invoice.

BalanceInHomeCurrency Double False

Balance remaining in units of the home currency.

CurrencyName String False 64

Name of the currency code used for this invoice.

CurrencyId String False

Currency.ID

1000

Id of the currency code used for this invoice.

Other String False 29

Other data associated with the invoice. The QBXMLVersion connection property must be set to 6.0 for this field to be available.

EditSequence String True 16

An identifier used for versioning for this copy of the object.

TimeModified Datetime True

When the invoice was last modified.

TimeCreated Datetime True

When the invoice was created.

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

Link this transaction to another transaction. This is only available during inserts and requires a minimum QBXML Version 6.0.

SetCreditAggregate String

Apply multiple credit Memos to this transaction. This is only available during inserts and updates requires a minimum QBXML Version 10.0

ItemLinkToTxnId String

Link this individual line item to another transaction. This is only available during inserts and requires a minimum QBXML Version 6.0

ItemLinkToTxnLineId String

Link this individual line item to another transaction line item. This is only available during inserts and requires a minimum QBXML Version 6.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.

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