JDBC Driver for QuickBooks

Build 21.0.7867

Invoices

Create, update, delete, and query QuickBooks Invoices.

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 Invoices 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. The ItemAggregate columns may be used to specify an XML aggregate of Line Item data. The columns that may be used in these aggregates are defined in the InvoiceLineItems tables and it starts with Item. For example, the following will insert a new Invoice with two Line Items:

INSERT INTO Invoices (CustomerName, ItemAggregate) 
VALUES ('Abercrombie, Kristy', '<InvoiceLineItems>
<Row><ItemName>Repairs</ItemName><ItemQuantity>1</ItemQuantity></Row>
<Row><ItemName>Removal</ItemName><ItemQuantity>2</ItemQuantity></Row>
</InvoiceLineItems>')

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.

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

Customers.FullName

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

Accounts.FullName

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

ShippingMethods.Name

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

Class.FullName

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

CustomerMessages.Name

101

A message to 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

SalesReps.Initial

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 the amount already paid.

Tax Double True

The total sales tax applied to this transaction.

TaxItem String False

SalesTaxItems.Name

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.

ItemCount Integer True

The count of item entries for this transaction.

ItemAggregate String False 5000

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

TransactionCount Integer True

The count of related transactions to the invoice.

TransactionAggregate String True 5000

An aggregate of the linked transaction data.

AppliedAmount Decimal True

The total amount of applied credits and payments.

Balance Decimal False

The unpaid amount for this sale.

CustomerTaxCode String False

SalesTaxCodes.Name

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

Templates.Name

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

Currency.Name

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.

CustomFields String False

Custom fields returned from QuickBooks and formatted into XML.

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
Item* String

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

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

Copyright (c) 2021 CData Software, Inc. - All rights reserved.
Build 21.0.7867