Skip to main content
This guide shows you how to register your own app with Quickbooks to obtain your OAuth credentials (client id & secret). These are required to let your users grant your app access to their Quickbooks account.

Creating a Quickbooks App

1

Create an Intuit Developer account

Go to Intuit Developer signup page and create a free account.
2

Create a new app in your Developer account

  1. From your Developer Dashboard, navigate to My Hub > App Dashboard, then click on the Add button.
  2. Select QuickBooks Online and Payments, click Next and provide a name for your app.
  3. Click Next to proceed with adding permissions to your app.
  4. Once you have added permissions, click Done and confirm the permissions you selected. Your application will be created.
3

Configure OAuth settings

In the app you just created:
  1. Navigate to the Settings page, then go to the Redirect URIs tab and add the following URL: https://api.nango.dev/oauth/callback.
  2. Save your changes.
4

Obtain API credentials

  1. Still in your created app, navigate to Keys and credentials page and toggle the Show credentials button to locate your app’s credentials.
  2. Copy the Client ID and Client Secret.
  3. You will need these credentials when configuring your integration in Nango.
5

Create a development/sandbox account for testing

If you don’t have a QuickBooks account already:
  1. From your Developer Dashboard, go to My Hub > Sandbox, then click Add to create a new Sandbox company.
  2. Follow the prompts to create a test company.
  3. Note the Company ID/Realm ID as you’ll need it for API requests.
6

Next

Follow the Quickstart.
Need help getting started? Get help in the community.

Understanding Quickbooks Requirements

Quickbooks has flexible requirements for developers:
  • Developer account: Free self-signup available
  • Test accounts: Development/sandbox companies can be created for free from your Developer account
  • App review: Only required for apps published to the Intuit App Store
  • Partnership: Not required

Important Notes

QuickBooks requires a company ID/realmId for each API request. Nango can automatically retrieve this for you, or you can manually override it by specifying the realmId when creating a new connection. You can use getConnection in your integration function to retrieve it, or when you fetch the Connection credentials with the REST API or SDK.
For sandbox testing, use the quickbooks-sandbox integration in Nango instead of the regular quickbooks integration.
QuickBooks access tokens expire after 1 hour, but Nango automatically handles token refresh for you.

Relevant Scopes

When setting up your app, you’ll need to configure OAuth scopes. Quickbooks uses the following main scopes:
  • com.intuit.quickbooks.accounting - Access to QuickBooks accounting data (most commonly used)
  • com.intuit.quickbooks.payment - Access to QuickBooks payments data
For a complete list of available scopes, see Quickbooks OAuth scopes documentation. For more details on Quickbooks OAuth implementation, see Quickbooks OAuth 2.0 guide.