QuickBooks objects and operations accessible with the SDK

This page illustrates the scope of what your application can do through the Desktop SDK by listing the QuickBooks objects that can be accessed through the SDK and the operations that can be performed on those objects. It also identifies the limitations, for both objects and operations, that apply to the QuickBooks Simple Start editions, which are covered farther down the page.

Objects and operations accessible in QuickBooks Desktop editions

This table lists the objects and operations that can be accessed in QuickBooks Desktop editions (as opposed to the QuickBooks Simple Start editions, which are covered further down the page).

QuickBooks object name Object type Query Add Modify Delete Void
Account List yes yes yes yes no
AgingReport Report yes no no no no

ARRefundCreditCard

(not Canada/UK)

Txn yes yes no yes yes
Bill Txn yes yes yes yes yes
Bill payment check Txn yes yes yes yes yes
Bill payment credit card Txn yes yes yes yes yes
Bill to pay Txn yes no no no no
BillingRate List yes yes no yes no
BudgetSummary- Report Report yes no no no no

BuildAssembly

(not Canada/UK)

Txn yes yes yes yes yes
Charge Txn yes yes yes yes yes
Check Txn yes yes no yes yes
Class List yes yes yes yes no
Company Special yes no no no no
CompanyActivity Special yes no no no no
Credit card charge Txn yes yes yes yes yes
Credit card credit Txn yes yes yes yes yes
Credit memo Txn yes yes yes yes yes
Currency List yes yes yes yes no
CustomDetailReport Report yes no no no no
Customer List yes yes yes yes no
Customer message List yes yes no yes no
Customer type List yes yes no yes no
CustomSummary- Report Report yes no no no no
DataEventRecovery- Info Event Notification yes no no yes no
DataEventSubscription Event Notification yes yes no yes no
DataExt Special no yes yes yes no
DataExtDef Special yes yes yes yes no
Date-driven terms List yes yes no yes no
Deposit Txn yes yes yes yes yes
QuickBooks List yes yes yes yes no
Employee List yes yes yes yes no
Entity List yes no no no no
Estimate Txn yes yes yes yes no
Fixed asset item List yes yes yes yes no
GeneralDetailReport Report yes no no no no
GeneraSumaryReport Report yes no no no no
Group item List yes yes yes yes no
Host application Special yes no no no no
Inventory adjustment Txn yes yes no yes no
Inventory assembly item List yes yes yes yes no
Inventory item List yes yes yes yes no
Invoice Txn yes yes yes yes yes
Item List yes no no no no
Item Receipt Txn yes yes yes yes yes
Job type List yes yes no yes no
JobReport Report yes no no no no
Journal entry Txn yes yes yes yes yes
ListDisplay UI Integration no yes yes no no
Non-inventory item List yes yes yes yes no
Non-wage payroll item* List yes no no no no
Other charge item List yes yes yes yes no
Other name List yes yes yes yes no
Payment item List yes yes yes yes no
Payment method List yes yes no yes no
PayrollDetailReport* Report yes no no no no
PayrollSummaryReport* Report yes no no no no
Preferences Special yes no no no no
PriceLevel List yes yes yes yes no
Purchase order Txn yes yes yes yes no
Receive payment Txn yes yes yes yes no
Receive payment to deposit Txn yes no no no no

Sales order

(US Premier Edition and above)

Txn yes yes yes yes no
Sales receipt Txn yes yes yes yes yes
Sales rep List yes yes yes yes no
Sales tax code List yes yes yes yes no
Sales tax group item List yes yes yes yes no
Sales tax item List yes yes yes yes no
Sales tax payment check Txn yes no no no no
Service item List yes yes yes yes no
Ship method List yes yes no yes no
SpecialAccount List yes yes no yes no
SpecialItem List yes yes no yes no
Standard terms List yes yes no yes no
Subtotal item List yes yes yes yes no
Template List yes no no no no
Terms List yes no no no no
Time tracking List yes yes no yes no
TimeReport Report yes no no no no
To do List yes yes no yes no
TransactionQuery Txn yes no no no no
TxnDisplay UI Integration no yes yes no no
UIEventSubscription Event Notification yes yes no yes no
UIExtensionSubscrip- tion Event Notification yes yes no yes no
UnitOfMeasureSet List yes yes no yes no
Vendor List yes yes yes yes no
Vendor credit Txn yes yes yes yes yes
Vendor type List yes yes no yes no
Wage payroll item List yes yes no no no
WorkersCompCode List yes yes yes no no

* Requires that the company file being accessed is currently subscribed to a payroll service.

SDK requests supported in QuickBooks Simple Start Edition

The following table lists all of the SDK requests for the US QuickBooks Desktop editions and indicates whether a request is supported by QuickBooks Simple Start.

Additional notes follow the table.

Request Supported by Quick Books Simple Start?
ARRefundCreditCardAdd (5.0) Yes
ARRefundCreditCardQuery (5.0) Yes
AccountAdd Yes
AccountMod (6.0) Yes
AccountQuery Yes
AgingReportQuery (2.0) Yes
BillAdd No
BillMod (3.0) Yes
BillPaymentCheckAdd (2.0) No
BillPaymentCheckMod (6.0) Yes
BillPaymentCheckQuery (2.0) Yes
BillPaymentCreditCardAdd (2.0) No
BillPaymentCreditCardQuery (2.0) Yes
BillQuery Yes
BillToPayQuery (2.0) Yes
BillingRateAdd (6.0) No
BillingRateQuery (6.0) Yes
BudgetSummaryReportQuery (3.0) Yes
BuildAssemblyAdd (5.0) No
BuildAssemblyMod (5.0) Yes
BuildAssemblyQuery (5.0) Yes
ChargeAdd (2.0) No
ChargeMod (3.0) Yes
ChargeQuery (2.0) Yes
CheckAdd Yes
CheckMod (6.0) Yes
CheckQuery Yes
ClassAdd Yes
ClassQuery Yes
ClearedStatusMod (2.0) Yes
CompanyActivityQuery (2.0) Yes
CompanyQuery Yes
CreditCardChargeAdd Yes
CreditCardChargeMod (6.0) Yes
CreditCardChargeQuery Yes
CreditCardCreditAdd Yes
CreditCardCreditMod (6.0) Yes
CreditCardCreditQuery Yes
CreditMemoAdd Yes
CreditMemoMod (3.0) Yes
CreditMemoQuery Yes
CustomDetailReportQuery (2.0) Yes
CustomSummaryReportQuery (2.0) Yes
CustomerAdd Yes
CustomerMod Yes
CustomerMsgAdd Yes
CustomerMsgQuery Yes
CustomerQuery Yes
CustomerTypeAdd Yes
CustomerTypeQuery Yes
DataEventRecoveryInfoDel (3.0) No
DataEventRecoveryInfoQuery (3.0) No
DataExtAdd (2.0) Yes
DataExtDefAdd (2.0) Yes
DataExtDefDel (2.0) Yes
DataExtDefMod (2.0) Yes
DataExtDefQuery (2.0) Yes
DataExtDel (2.0) Yes
DataExtMod (2.0) Yes
DateDrivenTermsAdd Yes
DateDrivenTermsQuery Yes
DepositAdd (2.0) Yes
DepositQuery (2.0) Yes
EmployeeAdd No
EmployeeMod Yes
EmployeeQuery Yes
EntityQuery Yes
EstimateAdd Yes
EstimateMod (3.0) Yes
EstimateQuery Yes
GeneralDetailReportQuery (2.0) Yes
GeneralSummaryReportQuery (2.0) Yes
HostQuery Yes
InventoryAdjustmentAdd (2.0) No
InventoryAdjustmentQuery (2.0) Yes
InvoiceAdd Yes
InvoiceMod (2.1) Yes
InvoiceQuery Yes
ItemAssembliesCanBuildQuery (5.0) Yes
ItemDiscountAdd No
ItemDiscountMod (3.0) Yes
ItemDiscountQuery Yes
ItemFixedAssetAdd (3.0) No
ItemFixedAssetMod (3.0) Yes
ItemFixedAssetQuery (3.0) Yes
ItemGroupAdd No
ItemGroupMod (3.0) Yes
ItemGroupQuery Yes
ItemInventoryAdd No
ItemInventoryAssemblyAdd (2.0) No
ItemInventoryAssemblyMod (3.0) Yes
ItemInventoryAssemblyQuery (2.0) Yes
ItemInventoryMod Yes
ItemInventoryQuery Yes
ItemNonInventoryAdd No
ItemNonInventoryMod Yes
ItemNonInventoryQuery Yes
ItemOtherChargeAdd Yes
ItemOtherChargeMod (3.0) Yes
ItemOtherChargeQuery Yes
ItemPaymentAdd No
ItemPaymentMod (3.0) Yes
ItemPaymentQuery Yes
ItemQuery Yes
ItemReceiptAdd (4.0) No
ItemReceiptMod (4.0) Yes
ItemReceiptQuery (3.0) Yes
ItemSalesTaxAdd No
ItemSalesTaxGroupAdd No
ItemSalesTaxGroupMod (3.0) Yes
ItemSalesTaxGroupQuery Yes
ItemSalesTaxMod (3.0) Yes
ItemSalesTaxQuery Yes
ItemServiceAdd No
ItemServiceMod Yes
ItemServiceQuery Yes
ItemSubtotalAdd No
ItemSubtotalMod (3.0) Yes
ItemSubtotalQuery Yes
JobReportQuery (2.0) Yes
JobTypeAdd No
JobTypeQuery Yes
JournalEntryAdd Yes
JournalEntryMod (6.0) Yes
JournalEntryQuery Yes
ListDel (1.1) Yes
ListDeletedQuery (2.0) Yes
ListDisplayAdd (3.0) Yes
ListDisplayMod (3.0) Yes
OtherNameAdd Yes
OtherNameMod Yes
OtherNameQuery Yes
PaymentMethodAdd Yes
PaymentMethodQuery Yes
PayrollDetailReportQuery (3.0) Yes
PayrollItemNonWageQuery (3.0) Yes
PayrollItemWageAdd (2.0) No
PayrollItemWageQuery Yes
PayrollSummaryReportQuery (3.0) Yes
PreferencesQuery (1.1) Yes
PriceLevelAdd (4.0) No
PriceLevelMod (4.0) Yes
PriceLevelQuery (4.0) Yes
PurchaseOrderAdd No
PurchaseOrderMod (2.1) Yes
PurchaseOrderQuery Yes
ReceivePaymentAdd (1.1) Yes
ReceivePaymentMod (6.0) Yes
ReceivePaymentQuery (1.1) Yes
ReceivePaymentToDepositQuery (2.0) Yes
SalesOrderAdd (2.1) No
SalesOrderMod (3.0) Yes
SalesOrderQuery (2.1) Yes
SalesReceiptAdd Yes
SalesReceiptMod (5.0) Yes
SalesReceiptQuery Yes
SalesRepAdd No
SalesRepMod (3.0) Yes
SalesRepQuery Yes
SalesTaxCodeAdd Yes
SalesTaxCodeQuery Yes
SalesTaxPaymentCheckQuery (2.0) Yes
ShipMethodAdd No
ShipMethodQuery Yes
SpecialAccountAdd (6.0)

Yes, but only the following accounts can be added:

AccountsReceivable UncategorizedExpenses UncategorizedIncome

SpecialItemAdd (6.0) No
StandardTermsAdd Yes
StandardTermsQuery Yes
TemplateQuery (3.0) Yes
TermsQuery Yes
TimeReportQuery (2.0) Yes
TimeTrackingAdd No
TimeTrackingMod (6.0) Yes
TimeTrackingQuery Yes
ToDoAdd No
ToDoQuery Yes
TransactionQuery (4.0) Yes
TxnDel (1.1) Yes
TxnDeletedQuery (2.0) Yes
TxnDisplayAdd (3.0)

Yes, with limits. You can invoke this only on transaction types supported by QuickBooks Simple Start, because QuickBooks Simple Start lacks the UI components for the unsupported types.

Supported transaction types:

Check

CreditMemo

Deposit

Estimate

Invoice

JournalEntry

ReceivePayment

SalesReceipt

SalesTaxPaymentCheck

Unsupported transaction types:

Bill

BillPayment

BuildAssembly

Charge

CreditCardCharge

CreditCardCredit

InventoryAdjustment

ItemReceipt

PurchaseOrder

SalesOrder

VendorCredit

mt-section-origin=”01_QuickBooks_Desktop/4_API_reference/01_general_reference_pages/05_quickbooks_objects_and_operations_accessible_with_the_sdk “>

NOTE

For the unsupported Bill, BuildAssembly, Charge, CreditCardCharge, CreditCardCredit, InventoryAdjustment, and ItemReceipt request types, invoking TxnDisplayAdd results in QuickBooks displaying the appropriate Add form to the user, which the user can fill out, but the user’s attempt to save the data (perform the transaction) will fail with an error message stating that this feature is not available for this edition.

For the unsupported BillPayment transaction, the above behavior is the same, but there is a differen and potentially misleading error message. That is, the form is displayed in QuickBooks, but whether you do a payment by check or credit card, the transaction fails and the message simply says “there was a problem recording the bill payment for …”.

Also, the attempt to display the add form for PurchaseOrder, SalesOrder, doesn’t display any form in QuickBooks at all.

Instead the TransactionDisplayAdd fails with a message stating that this feature is not supported by this edition (Simple Start).

TxnDisplayMod (3.0)

Yes, with limits. You can invoke this only on transaction types supported by QuickBooks Simple Start, because QuickBooks Simple Start lacks the UI components for the unsupported types.

Supported transaction types:

Bill

BuildAssembly

Charge

Check

CreditCardCharge

CreditCardCredit

CreditMemo

Deposit

Estimate

InventoryAdjustment

Invoice

ItemReceipt

JournalEntry

ReceivePayment

SalesReceipt

SalesTaxPaymentCheck

VendorCredit

Unsupported transaction types:

BillPaymentCheck, BillPaymentCreditCard, fail with an error stating that the check has been deleted, possibly by another user. However, doing a query on that same txnID is successful, and that txn is displayed in the Simple Start check register (bill payment check).

PurchaseOrder and SalesOrder for Mod fail with the error message stating this is not available for this edition (Simple Start).

TxnVoid (1.1) Yes
WorkersCompCodeAdd (7.0) No
WorkersCompCodeMod (7.0) No
WorkersCompCodeQuery (7.0) No
UnitOfMeasureSetAdd (7.0) No
UnitOfMeasureSetQuery (7.0)2 No
VehicleAdd (6.0) No
VehicleMod (6.0) Yes
VehicleQuery (6.0) Yes
VehicleMileageAdd (6.0) No
VehicleMileageQuery (6.0) Yes
VendorAdd Yes
VendorCreditAdd No
VendorCreditQuery Yes
VendorMod Yes
VendorQuery Yes
VendorTypeAdd Yes
VendorTypeQuery Yes
Additional differences for SDK support of QB Simple Start

The Inventory Stock Status by Vendor report is not accessible through the Simple Start UI. When an end-user with Simple Start runs the report via SDK requests on a company file created by Premier or Enterprise that has inventory, the user will not be able to retrieve the columns QuantityOnSalesOrder and QuantityAvailable. The Inventory Stock Status by Vendor report does not have columns QuantityOnSalesOrder and QuantityAvailable for Simple Start.

Also, if you do a PreferencesQueryRq against Simple Start, the PreferencesRet will contain elements that cannot be directly controlled by the user. The Preferences UI in Simple Start is very different from the other editions.