The QuickBooks Online API is a RESTful web service that lets you integrate QuickBooks Online in your own application so that it can perform accounting functions for your users, such as creating transactions including invoices and receipts, keeping customers and vendors in sync, and running P&L reports. The API uses the OAuth 2.0 protocol to authenticate third-party applications, and OpenId Connect to enable single-sign-on.

This Build documentation tells you how to set up your app to use the accounting capabilities of QuickBooks Online. Browse the full documentation in the table of contents on the left side of this page, and see Release Notes for updates.

Here are a few basic resources you might want to get to quickly. 

Authorize and connect your app

To use the API, you create a QuickBooks Online app on this developer portal. Sign in and go to My Apps to do that.

Your QuickBooks Online app contains a set of authentication credentials. When these credentials are authenticated and authorized by the admin user of a QuickBooks company, your app gets a set of tokens that allow it to call the QuickBooks Online API on behalf of the company. Authentication and Authorization has full details.

Explore the API

The QuickBooks Online REST API uses standard HTTP methods and JSON input and output. We officially support SDKs for PHP, Java, and .NET, and recommend that you use them.

Use the API Explorer to perform operations on QuickBooks Online sandbox company data. Once you've created a developer account, you can send requests on behalf of your QuickBooks company. Just select a resource, pick an operation, and submit your request. 

For details about API resources, the QuickBooks Online API Reference is your guide.  

Postman provides an HTTP client for testing web services by displaying API requests and responses in manageable formats.

See Explore the QuickBooks Online API for additional details.

SDKs, samples, and tools

Use an Intuit SDK—available for .NET, Java, and PHP—to help you build your app and integrate it with the QuickBooks Online API. The SDK class libraries provide wrappers for calling the QuickBooks Online REST API methods.

Sample apps and code are available for each of the SDKs to demonstrate how to use the QuickBooks Online API. Sample apps and code are also available to show how to use the QuickBooks Online API if you are not using an SDK.

Third-party tools are available for node.js, Perl, Python, Ruby, and shell script. 


Your QuickBooks Online account comes with a sandbox you can use to test your app's features by making API requests against sample data. 

Did you find this page helpful?
Your feedback helps us make our docs better. Please let us know if this page helped you, or if it needs improvement.

 Got Questions? Get Answers in our developer forums.