SalesOrderLineItems
Create, Update, Query, and Delete QuickBooks SalesOrder Line Items. Note that while SalesOrder transactions can be created from this table, they may not be deleted from it.
Table Specific Information
SalesOrders may be inserted, queried, or updated via the SalesOrders or SalesOrderLineItems table. SalesOrders may be deleted by using the SalesOrders table.
This table has a Custom Fields column. See the Custom Fields page for more information.
Select
QuickBooks allows only a small subset of columns to be used in the WHERE clause of a SELECT query. These columns can only be used with the equals or '=' comparison. The available columns for SalesOrders are Id, ReferenceNumber, CustomerName and CustomerId. In addition, the pseudo-columns StartModifiedDate, EndModifiedDate, StartTxnDate, and EndTxnDate may also be specified.
Insert
Note: There are two ways to insert a SalesOrder. See SalesOrders for another example of how to insert a SalesOrder.
In order to add a SalesOrder, a Customer and at least one Line Item must be specified. All columns denoted with a # are Line Item columns and can be used for inserting multiple Line Items for a new SalesOrder transaction. For example, the following will insert a new SalesOrder with two Line Items:
INSERT INTO SalesOrderLineItems (CustomerName, ItemName#1, ItemQuantity#1, ItemName#2, ItemQuantity#2) VALUES ('Cook, Brian', 'Repairs', 1, 'Removal', 2)
QuickBooks Online
The QuickBooks Online API does not support SalesOrders.
Columns
| Name | Type | Description | ReadOnly |
| ID [KEY] | String |
The unique identifier in the format SalesOrderId|ItemLineId. | True |
| SalesOrderId | String |
The item identifier. | True |
| ReferenceNumber | String |
Transaction reference number. This may be set to refnumber*, *refnumber, and *refnumber* in the WHERE clause of a SELECT statement to search by StartsWith, EndsWith, and Contains. Refnum1:refnum2, refnum1:, and :refnum1 may also be used to denote a range. | False |
| TxnNumber | String |
The transaction number. An identifying number for the transaction, but different from the QuickBooks generated ID. | True |
| CustomerName | String |
Customer name this transaction is recorded under. This is required to have a value when inserting. | False |
| CustomerId | String |
Customer id this transaction is recorded under. | False |
| Date | Date |
Transaction date. | False |
| ShipMethod | String |
Shipping method. | False |
| ShipMethodId | String |
Shipping method. | False |
| ShipDate | Date |
Shipping date. | False |
| Memo | String |
Memo regarding this transaction. | False |
| Class | String |
A reference to the class of transaction. | False |
| ClassId | String |
A reference to the class of transaction. | False |
| TotalAmount | Double |
Total amount for this transaction. | False |
| DueDate | Date |
Date the payment is due. | False |
| Message | String |
Message to customer. | False |
| MessageId | String |
Message to customer. | False |
| SalesRep | String |
Reference to (initials of) sales rep. | False |
| SalesRepId | String |
Reference to the sales rep. | False |
| Template | String |
The name of an existing template to apply to the transaction. | False |
| TemplateId | String |
The ID of an existing template to apply to the transaction. | False |
| CurrencyName | String |
Name of the currency code used for this Sales Order. | False |
| CurrencyId | String |
Id of the currency code used for this Sales Order. | False |
| ExchangeRate | Double |
Currency exchange rate for this Sales Order. | False |
| TotalAmountInHomeCurrency | Double |
Returned for transactions in currencies different from the merchant's home currency. | False |
| FOB | String |
Freight On Board: The place to ship from. | False |
| BillingAddress | String |
Full billing address returned by QuickBooks. | True |
| BillingLine1 | String |
First line of the billing address. | False |
| BillingLine2 | String |
Second line of the billing address. | False |
| BillingLine3 | String |
Third line of the billing address. | False |
| BillingLine4 | String |
Forth line of the billing address. | False |
| BillingLine5 | String |
Fifth line of the billing address. | False |
| BillingCity | String |
City name for the billing address. | False |
| BillingState | String |
State name for the billing address. | False |
| BillingPostalCode | String |
Postal code for the billing address. | False |
| BillingCountry | String |
Country for the billing address. | False |
| ShippingAddress | String |
Full shipping address returned by QuickBooks. | True |
| ShippingLine1 | String |
First line of the shipping address. | False |
| ShippingLine2 | String |
Second line of the shipping address. | False |
| ShippingLine3 | String |
Third line of the shipping address. | False |
| ShippingLine4 | String |
Forth line of the shipping address. | False |
| ShippingLine5 | String |
Fifth line of the shipping address. | False |
| ShippingCity | String |
City name for the shipping address. | False |
| ShippingState | String |
State name for the shipping address. | False |
| ShippingPostalCode | String |
Postal code for the shipping address. | False |
| ShippingCountry | String |
Country for the shipping address. | False |
| Subtotal | Double |
Gross subtotal. This doesn't include tax/amount already paid. | True |
| Tax | Double |
Total sales tax applied to this transaction. | True |
| TaxAgency | String |
Agency or group sales tax is paid to. Note that you cannot set this value while updating. | False |
| TaxAgencyId | String |
Agency or group sales tax is paid to. Note that you cannot set this value while updating. | False |
| TaxPercent | Double |
Percentage charged for sales tax. | True |
| PONumber | String |
Purchase Order number. | False |
| Terms | String |
Payment terms. | False |
| TermsId | String |
Payment terms. | False |
| ItemLineId# | String |
The line item identifier. | True |
| ItemId# | String |
The item identifier. | False |
| ItemName# | String |
The item name. This is required to have a value when inserting. | False |
| ItemGroup# | String |
Item group name. Reference to a group of line items this item is part of. | False |
| ItemGroupId# | String |
Item group id. | False |
| ItemDescription# | String |
A description of the item. | False |
| ItemQuantity# | Double |
The quantity of the item or ItemGroup specified in this line. | False |
| ItemRate# | Double |
The unit rate charged for this item. | False |
| ItemTaxCode# | String |
Sales tax information for this item (taxable or non-taxable). | False |
| ItemTaxCodeId# | String |
Sales tax information for this item (taxable or non-taxable). | False |
| ItemAmount# | String |
Total amount for this item. | False |
| ItemClass# | String |
The class name of the item. | False |
| ItemClassId# | String |
The class id of the item. | False |
| ItemInventorySiteId# | String |
The inventory site id of this item. This requires QBXML version at least 10.0 and the Advanced Inventory Add-on. | False |
| ItemInventorySiteName# | String |
The inventory site name of this item. This requires QBXML version at least 10.0 and the Advanced Inventory Add-on. | False |
| ItemSerialNumber# | String |
The serial number of this item. This requires QBXML version at least 11.0 and the Advanced Inventory Add-on. | False |
| ItemLotNumber# | String |
The lot number of this item. This requires QBXML version at least 11.0 and the Advanced Inventory Add-on. | False |
| ItemOther1# | String |
The Other1 field of this lineitem. QBXMLVersion must be set to 6.0 or higher. | False |
| ItemOther2# | String |
The Other2 field of this lineitem. QBXMLVersion must be set to 6.0 or higher. | False |
| ItemCustomFields# | String |
The custom fields for this lineitem. | True |
| CustomerTaxCode | String |
The tax code specific to this customer. | False |
| CustomerTaxCodeId | String |
The tax code specific to this customer. | False |
| IsToBePrinted | Boolean |
Whether this Sales Order is to be printed. | True |
| IsToBeEmailed | Boolean |
When true, if no email address is on file for the customer the transaction will fail. | False |
| IsManuallyClosed | Boolean |
Whether this Sales Order is manually closed. | False |
| IsFullyInvoiced | Boolean |
Whether this Sales Order is fully invoiced. | True |
| IsTaxIncluded | Boolean |
Determines if tax is included in the transaction amount. | False |
| CustomFields | String |
Custom fields returned from QuickBooks formatted into XML. | False |
| EditSequence | String |
An identifier for this copy of the object, used for versioning. | True |
| TimeModified | Datetime |
When the SalesOrder was last modified. | True |
| TimeCreated | Datetime |
When the SalesOrder was created. | True |
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 | |
| StartTxnDate | String |
Earliest transaction date to search for. | |
| EndTxnDate | String |
Latest transaction date to search for. | |
| StartModifiedDate | String |
Earliest modified date to search for. | |
| EndModifiedDate | String |
Latest modified date to search for. | |
| ItemPriceLevel# | String |
Item pricelevel name. QuickBooks will not return the PriceLevel. |