QuickBooks Online Accounting API Release Notes

For earlier versions of QuickBooks API V3 Data Services not covered here, see Archives.

QuickBooks Accounting API XSDs

Click to see list.
VersionRelease DateLink
v3, minor version 8November 22, 2016v3 minor version 8.zip
v3, minor version 7July 27, 2016v3 minor version 7.zip
v3, minor version 6February 17, 2016v3 minor version 6.zip
v3, minor version 5December 15, 2015v3 minor version 5.zip
v3, minor version 4

Phase 1—September 24, 2015
Phase 2—November 19, 2015

v3 minor version 4.zip
v3, minor version 3

Phase 1—May 29, 2015
Phase 2—August 11, 2015
Phase 3—August 27, 2015

V3 minor version 3.zip
v3, minor version 2March 27, 2015V3 minor version 2.zip
v3, minor version 1March 6, 2014V3 minor version 1.zip

QuickBooks Online v1702

Date: March 9, 2017

New Features

  • The field, Item.FullyQualifiedName, is now filterable.

  • New preferences attribute: Preferences.SalesFormsPrefs.EmailCopyToCompany. If set to true, the QuickBooks company is cc'ed on any email sent to customers for sales transactions. Company email used is specified by CompanyInfo.Email.Address.  Available with minor version 8.
  • New preferences attribute: Preferences.SalesFormsPrefs.UsingPriceLevels. If set to true, the QuickBooks company has price levels enabled for sales transactions. 

About price levels

Scheduled to ship with the v1704 release, custom price rules will be available to select QuickBooks companies via the UI, only. The allows the QuickBooks company to establish custom price rules (known as price levels), rather than base pricing, to use on sales forms for any given customer or item. For companies so enabled, creating transactions with base pricing may not be what the user intends. Make sure your app is aware of how Preferences.SalesFormsPrefs.UsingPriceLevels is set so you can warn your users appropriately. Support for price levels in the QuickBooks API is not planned.

FAQs

  • I have customers who are already using my app, how will they be affected because of this new feature? 
    There is no factor if your app pulls pricing data for the intent of read-only purposes.  That is, it reads pricing information from the QuickBooks online company but doesn't actively write it back or set pricing in sales forms.
  • I am developing a new integration with QBO, what code should I add in my app to address this new feature ? 
    Make sure your app is aware of how Preferences.SalesFormsPrefs.UsingPriceLevels is set in the QuickBooks Online company.  For companies so enabled, make sure your users are aware that your app cannot access custom price levels.
  • What happens if I don’t make this change ? Will this corrupt the user’s data?
    Blindly creating sales transactions with base pricing when the QuickBooks Online company has price levels enabled may not be what the user intends and could result in sales transactions that silently have incorrect pricing.

Resolved Issues

Reference numberEntity 
QBO-34979ItemQueries on Item.FullyQualifiedName are now supported.

QBO-31298
QBO-137516

ClassClass resource now supports soft delete (Active=false).

QuickBooks Online v1701

Internal, only.

QuickBooks Online v1612

Internal, only.

QuickBooks Online v1611

Date: November 22, 2016

New Features

Bcc and Cc email address support in Invoice objects

Invoice objects now support carbon copy (cc) and blind carbon copy (bcc) email addresses. Changes include:

  • New SalesEmailCc and SalesEmailBcc attributes in Preferences object. These hold the default email addresses to use if not specified at Invoice object create time.
  • New BillEmailCc and BillEmailBcc attributes in Invoice objects. Used to override those defined in Preferences.

Available when minorversion=8 is invoked on the Preferences and Invoice endpoints.

Resolved Issues

Reference numberEntity 
QBO-109571Customer
Vendor
Employee
Email addresses with newer style top level domains no longer get rejected.

QuickBooks Online v1610

Date: October 6, 2016

New Features

Inventory valuation summary report

The inventory valuation summary report now includes the SKU column.

Item categories

Item categories are now fully deployed for all locales, including France.  See Item for reference details about item category objects and our developer guide for general integration information.

Item bundles

Item bundles are now supported by QuickBooks Online Accounting API for all eligible companies. An Item bundle is a container for a collection of items with a count for each item. For example, a Gift Basket with 2 apples, 5 pencils and 1 stack of paper. Here, the bundle is the Gift Basket, the bundle items are apples, pencils and paper. Of note:

  • The Item resource is used to manage bundles. Bundles have the Item.type attribute set to Group.
  • Available with all XSD versions.
  • Create and update bundles via the QuickBooks Online UI. The QuickBooks Online API supports read and query options only.
  • Bundles can not contain other bundles.
  • Bundles can not contain categories.
  • An item can be listed in the bundle more than once with same or different quantities.
  • Item bundle objects can be added to sales transactions via the GroupItemLine line type.

See Item for reference details about item bundle objects and the developer guide for general integration information.

Note

If you are a developer working with sales transactions or with items in QuickBooks Online, it is critical that you understand these changes and test your application against sandbox as soon as possible.  Click here for additional information about bundles and how they can affect your applications. 

Resolved Issues

None.

Documentation

  • QuickBooks Online API accounting model—Learn the basics about the account model behind the QuickBooks Online API.
  • Item bundles using groups—Learn about Item bundles: an Item bundle is a container for a collection of items, often sold together, with a quantity that applies separately to each item. 
  • Location tracking—New topic for the QuickBooks Online API: location tracking provides a way to track different areas of the business apart from a particular client or project. For example, different properties, stores, sales regions, territories, and so on.

QuickBooks Online v1609

Internal, only.

QuickBooks Online v1608

Date: September 13, 2016

New Features

The BillPayment resource now includes beta-level support for the void operation. To void a BillPayment object, add the query parameters operation=update&include=void to the resource endpoint, as shown in the example below:

POST <baseURL>/v3/company/<realmID>/billpayment?operation=update&include=void

See BillPayment for complete details.

Resolved Issues

None.

QuickBooks Online v1607

Date: July 27, 2016

New Features

Journal Report for FR locales

Support added for the Journal Report. This report presents a summary of the journal code ledgers for the FR company.

Item categories

Item categories, denoted by item.type=category in Item object payloads, are now available for all sandbox and production companies so enabled to handle them. Click here for more information.

Resolved Issues 

Reference
Number

Entity

 

QBMA-16591Reports

Mapping for Net Income is now correct in Profit and Loss response code. Here is a summary of the corrected mapping:

  • Data for the company's OtherIncome or OtherExpense account types is mapped as folllows in the response code: 
    • Net Operating Income (group:NetOperatingIncome)
    • Net Other iIncome(group:NetOtherIncome) 
    • Net Income(group:NetIncome)
  • Data for the company's Income and Expense account types is included in the Net Income (group:NetIncome) node in the response.
QBO-33891PurchaseThe RemitToAddress field is now returned in the response code, if set during at object create time.
QBO-66413CustomerQueries using ORDERBY now return results in the correct order.
QBO-81815EmployeeWith payroll enabled, Employee objects with incomplete addresses are now created successfully.
QBO-84560PurchaseQueried for PaymentType='Check' now return the correct data.
QBO-93128SalesReceiptIn some circumstances the error, Flat rate is not supported yet, was inappropriately returned.
QBO-94274JournalEntryDelete JournalEntry objects now show up in the CDC response.
QBO-96488JournalEntryUpdates to JournalEntry objects no longer delete the Customer Entity Ref for AR accounts.
QBO-97688ItemQueries with COUNT operation now return correct of items whenminorversion=4 is invoked.
QBO-97720InvoiceIn some circumstances, Invoice objects with a single, subtotal line were not returned in the response.
QBO-97784InvoiceSparse update operations on Invoice objects no longer inadvertently clear  theclassref attribute.
QBO-97791ItemQueries using the IN operation now work when minorversion=4 is invoked.
QBO-98696InvoiceTax incluive calculations are now correct for AU Invoice objects.
QBO-99197AccountAccount objects can now be changed from sub-accounts to parent accounts. That is, setting Account.SubAccount to false is no longer ignored.
QBO-100851InvoiceAn Invoice object that imports a TimeActivity record, from the UI, as a line item can now be updated via the API.
QBO-104238Sales TransactionsIn the UI, the customer's default tax code is now updated with last one used in a sales transaction for that customer. making the behavior consistent with the API.
QBO-105106ItemQueries to a sandbox company where Type='Service' or Type='Inventory' now return correct set of objects.
QBO-105387EmployeeDates in Employee objects are now returned correctly with using Query.
QBO-105553JournalEntryIn JournalEntryLineDetail elements, both PostingType and Amountare required. Omiting either one turns the line into a description.
QBO-106041PaymentLinked transactions of type Expense in Payment objects are no longer returned as $$Expense$$.
QBO-106876BatchBatch calls containing a query for ExchangeRate no longer fail with a 10000 error.

QuickBooks Online v1606

Date: June 28, 2016

New Features

Item bundles

Item bundles are now supported by QuickBooks Online Accounting API. An Item bundle is a container for a collection of items with a count for each item. For example, a Gift Basket with 2 apples, 5 pencils and 1 stack of paper. Here, the bundle is the Gift Basket, the bundle items are apples, pencils and paper. Of note:

  • Currently available with sandbox companies, only.
  • The Item resource is used to manage bundles. Bundles have the Item.type attribute set to Group.
  • Available with all XSD versions.
  • Create and update bundles via the QuickBooks Online UI. The QuickBooks Online API supports read and query options only.
  • Bundles can not contain other bundles.
  • Bundles can not contain categories.
  • An item can be listed in the bundle more than once with same or different quantities.
  • Item bundle objects can be added to sales transactions via the GroupItemLine line type.

See Item for reference details about item bundle objects and our bundles blog post for general integration information.

Note

If you are a developer working with sales transactions or with items in QuickBooks Online, it is critical that you understand these changes and test your application against sandbox as soon as possible.  Click here for additional information about bundles and how they can affect your applications. 

Vendor TaxID masking

Vendor.TaxIdentifier now returns masked value with only the last four characters in the clear.  For example, if the vendor tax id sent with the create request is 12-1236789; it comes back in subsequent responses as xxxxx6789.

Sales by Product report

Sales by Product (ItemSales) report includes three new columns of information: COGS, Gross Margin, and Gross Margin %.

Inline subtotals in Invoice objects

In addition to a CustomerRef element, an Invoice object must have at least one line for either a sales item or, new with this release, an inline subtotal. Specify an inline subtotal with a Description line type and set Line.Description to Subtotal: (case sensitive).

Account subtypes

Three new account subtypes (Account.AccountSubType attribute) are now supported in the Chart of Accounts list: 

  • FinanceCosts
  • UnappliedCashBillPaymentExpense
  • UnappliedCashPaymentIncome

Deposit support for non-US locales

As of this release, the Deposit resource is supported for US locales, only, and no longer available for new, non-US integrations. 

Existing, non-US integrations using the Deposit resource need to be aware of the following inconsistency: the Exchange Gain or Loss amount returned in the DepositLineDetail element is always 0, regardless of the actual amount. As al alternative, retrieve exchange gains and losses amounts from the Profit and Loss report resource.

Documentation

  • Revised the types of accounts that can be referenced with the DepositToAccountRef attribute for DepositRefundReceipt, Payment, and SalesReceipt resources. The DepositToAccountRef attribute is not supported for Invoice and CreditMemo resources—removed from attribute tables.
  • Clarified required physical address fields when creating Employee object with QuickBooks Payroll enabled.

QuickBooks Online v1605

Internal, only.

QuickBooks Online v1604

Internal, only.

QuickBooks Online v1603

Date: March 22, 2016

New Features

​Voiding invoice objects

QuickBooks API now supports the void operation for Invoice objects.  To void an invoice, add the query parameter operation=void to the resource endpoint, as shown in the example below:

POST <baseURL>/v3/company/<realmID>/invoice?operation=void

See Invoice for complete details.

Resolved Issues

None.

QuickBooks Online v1602

Date: February 17, 2016

New Features

 Tax filing date support for global locales

  • New attribute, LastFileDate supported by the TaxAgency resource. This attribute is read-only and automatically populated by QuickBooks business logic at tax filing time. Available for all non-US locales and when minorversion=6 is invoked on the endpoint.

Resolved Issues

Reference
Number

Entity

 

QBMI-10728ItemFull update of an Item object, without using minorVersion=4, did not preserve the Sku attribute value.

QuickBooks Online v1601

Internal, only.

 

 Got Questions? Get Answers in our developer forums.