What is QuickBooks Online Accounting API?

QuickBooks, initially built in C++ and powered by Sybase as its backend database, has evolved into a powerful cloud-based platform. At the core of this evolution is the QuickBooks Online Accounting API, which allows developers to integrate and extend QuickBooks Online’s features seamlessly into custom applications.

How It Works

The QuickBooks Online API:

  • Uses the REST architecture

  • Supports HTTP methods (GET, POST, PUT, DELETE)

  • Utilizes JSON for data transmission (input/output)

This API gives your application direct access to QuickBooks Online data and functionality, enabling you to automate processes like invoicing, payments, data entry, and reporting.

Understanding Key API Entities

QuickBooks API provides several entities—structured components representing different elements in your business accounting process. These entities make it easy to integrate and automate various tasks. Here are the key ones:

Bank Account Entity

Allows your app to create and update bank account objects.

Card Entity

Enables users to store debit and credit card information securely for payment processing.

Charges Entity

Used to process, authorize, and record transactions and manage invoices and billing.

eChecks Entity

Facilitates eCheck payments using stored bank account info.

Token Entity

A secure container for storing sensitive data like credit card or bank details, used in API calls without exposing personal information.

How to Build a Custom Demo App with QuickBooks

Step 1: Create an Intuit Developer Account

  1. Go to the official Intuit Developer site.

  2. Fill in the registration form:

    • Email Address

    • First and Last Name

    • Password

    • Phone Number

  3. Click Create Account and verify via email.

Step 2: Set Up Your First Demo App

  1. Log in to your developer account.

  2. Go to Dashboard > Apps.

  3. Click + Create an App.

  4. Select Accounting as your scope.

  5. Follow the on-screen instructions to complete the setup.


Test API Calls with API Explorer

Once your app is set up:

  1. Visit the API Explorer from your dashboard.

  2. Choose a Sandbox company.

  3. Select the API entities needed for your app.

  4. Use the Try It button to simulate calls and review results.

  5. Save the configuration for future use.

Supported Languages for App Development

You can build your QuickBooks app using:

  • .NET

  • Java

  • PHP

These environments support full integration with the QuickBooks Online API and allow real-time data interaction from your demo app.

How to Set Up a Sandbox Company

A sandbox company is a test environment provided by Intuit that mimics a live QuickBooks Online setup:

  1. Log in to your Intuit Developer account.

  2. Go to API Docs & Tools > Add Sandbox Company.

  3. Choose between QuickBooks Online Plus or Advanced.

  4. Select your region (Note: the region is permanent).

  5. Click Add — the sandbox is valid for 2 years.

How to Get Your Custom App Credentials

To authenticate your app:

  1. Go to the Dashboard > Toolbox.

  2. Launch the app you created.

  3. Under:

    • Development: Select Keys & OAuth for testing.

    • Production: Select Keys & OAuth for live use.

  4. Copy your Client ID and Client Secret for API access.

These credentials allow you to securely access and operate your app with QuickBooks Online.