We launched the Accounting Sample!Manage invoices, payments, expenses, and more across multiple connectors.

How to connect to the QuickBooks API

Apideck enables you to build a native integration with QuickBooks. This explains guide explains how to configure the QuickBooks connnector.

Before you start, you’ll need:

To create your Intuit Developer account, follow the steps below.

  1. Navigate to developer.intuit.com
  2. On the menu bar click Sign up, which will open the Create your account form.
  3. Fill out the form and click Create Account, which redirects you to developer homepage.
  4. Navigate to Account Profile provide a few details to fill out your profile and click Submit.
  5. Watch the email inbox you specified for a confirmation message and a second message that contains some introductory links to get you started.
  6. To create a new app, navigate to Apps dashboard and click on Create an app. Copy the Client ID and Secret.
  7. Add the Apideck Redirect URI
    https://unify.apideck.com/vault/callback
    .
  8. Go back to Apideck to configure the QuickBooks connector with your Client ID and Secret.

Apideck QuickBooks Client ID/Secret

  1. Fill out the App assessment and compliance questionnaire to get your app certified

Before you can list your app on the QuickBooks App Store, it will be reviewed to ensure it meets the following security requirements and complies with the Intuit Developer Terms. This is in addition to meeting the technical and marketing requirements.

After logging into your developer account you can find the questionnaire here or on your app dashboard. Select your app from your dashboard, navigate to the Production Settings tab and click on App assessment questionnaire on the left-side navigation bar.

If you're building an integration through Apideck you can use the following answers when submitting the questionnaire:

  • How often do you request refresh access tokens? Only when access tokens expire.

  • Did you use the Intuit discovery document to get the latest endpoints required in the OAuth2.0 flow? Yes

  • Does your app rely on the OAuth playground or other offline tools to get access or refresh tokens tokens? No

  • Do you use the CDC operation for your app? No

  • Users often change versions of QuickBooks Online. This means they may get access to new features, or lose certain features, at any time. Can your app handle situations where users gain or lose access to version-specific features? Yes

  • Does your app capture the value of the intuit_tid field from response headers? Yes

  • Does your app retry authorization and authentication requests that have failed? No

  • Can you handle the following scenarios? Errors due to expired access tokens? Yes

  • Can you handle the following scenarios? Errors due to expired refresh tokens? Yes

  • Can you handle the following scenarios? Invalid grant errors? Yes

  • Can you handle the following scenarios? CSRF errors? Yes

The security review starts once your app passes the technical review.

Following the initial security review, developers must remediate any critical, high or medium priority issues before they can be published on the app store. For ongoing compliance reviews, these issues should be fixed within 2 weeks of notification by Intuit.

Apps listed on the QuickBooks App Store must continue to meet these requirements after publication. All apps list on the app store, and any app with over 500 connections, will be reviewed by Intuit on an annual basis, or more frequently at Intuit’s discretion, to ensure they continue to meet our required technical and security standards.

You can also go to the Keys & OAuth subsection to update your app’s redirect URLs, host domain, launch URL, and disconnect URL. Some of these settings are important if you're implementing Intuit Single Sign-on.

  • Launch URL: Add a link to the page that implements single sign-on. This URL is the integration settings URL in your app, where you can connect with Quickbooks.

App assessment and compliance questionnaire FAQ

All developers with app(s) on the QuickBooks platform, that are connected to one or more production QuickBooks Online companies, need to submit this questionnaire. Intuit refreshes its app compliance criteria periodically to ensure an appropriate level of quality for all apps on the QuickBooks platform, and to ensure all apps adhere to Intuit's Developer Terms of Service, including our data security and compliance policies.

Do I still need to submit this questionnaire if I'm a private app and don't plan to list it on the app store? Yes. If your app has any connections to production QuickBooks Online companies, you will need to submit this questionnaire even if your app is not listed on the QuickBooks App store. The app assessment and compliance process applies to both private (i.e. unlisted) apps and apps that are, or want to be listed, on the QuickBooks App Store.

Source: https://help.developer.intuit.com/s/article/New-app-assessment-process-FAQ

Do your first API call to the QuickBooks API

  • Connect your QuickBooks account through Vault with a test session.

  • To test the access token, make a query to get your

    Invoices
    endpoint using the Accouting API.

curl --location --request GET 'https://unify.apideck.com/accounting/invoices' \
--header 'x-apideck-consumer-id: test-consumer' \
--header 'x-apideck-app-id: {APIDECK_APP_ID}' \
--header 'x-apideck-service-id: quickbooks' \
--header 'Authorization: Bearer {APIDECK_API_KEY}'
--header 'Content-Type: application/json' \

Start building with the QuickBooks API

Learn what else you can build with the QuickBooks API.

Interested in a personalized demo? Let us know.