Overview
Pre-built tooling
✅ Authorization
✅ Authorization
✅ Read & write data
✅ Read & write data
| Tools | Status | 
|---|---|
| Pre-built integrations | ✅ | 
| API unification | ✅ | 
| 2-way sync | ✅ | 
| Webhooks from Nango on data modifications | ✅ | 
| Real-time webhooks from 3rd-party API | 🚫 (time to contribute: <48h) | 
| Proxy requests | ✅ | 
✅ Observability & data quality
✅ Observability & data quality
| Tools | Status | 
|---|---|
| HTTP request logging | ✅ | 
| End-to-type type safety | ✅ | 
| Data runtime validation | ✅ | 
| OpenTelemetry export | ✅ | 
| Slack alerts on errors | ✅ | 
| Integration status API | ✅ | 
✅ Customization
✅ Customization
| Tools | Status | 
|---|---|
| Create or customize use-cases | ✅ | 
| Pre-configured pagination | 🚫 (time to contribute: <48h) | 
| Pre-configured rate-limit handling | 🚫 (time to contribute: <48h) | 
| Per-customer configurations | ✅ | 
Pre-built integrations
Accounts
Accounts
Bill Payments
Bill Payments
| Endpoint | Description | Readme | 
|---|---|---|
GET /bill-payments | Fetches all QuickBooks bill payments | 🔗 | 
Bills
Bills
Credit Memos
Credit Memos
Customers
Customers
Deposits
Deposits
| Endpoint | Description | Readme | 
|---|---|---|
GET /deposits | Fetches all QuickBooks deposits | 🔗 | 
Invoices
Invoices
Items
Items
Journal Entries
Journal Entries
Payments
Payments
Purchase Orders
Purchase Orders
| Endpoint | Description | Readme | 
|---|---|---|
POST /purchase-orders | Creates a single purchase order in QuickBooks. | 🔗 | 
Purchases
Purchases
| Endpoint | Description | Readme | 
|---|---|---|
GET /purchases | Fetches all QuickBooks purchases | 🔗 | 
Transfers
Transfers
| Endpoint | Description | Readme | 
|---|---|---|
GET /transfers | Fetches all QuickBooks transfers | 🔗 | 
Not seeing the integration you need? Build your own independently.
Access requirements
| Pre-Requisites | Status | Comment | 
|---|---|---|
| Paid dev account | ✅ Not required | Free, self-signup for an Intuit Developer account. | 
| Paid test account | ✅ Not required | Development/sandbox accounts can be created for free from your Developer account. | 
| Partnership | ✅ Not required | |
| App review | ✅ Not required | Only required for apps published to the Intuit App Store. | 
| Security audit | ✅ Not required | 
Setup guide
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
- From your Developer Dashboard, navigate to My Hub > App Dashboard, then click on the Add button.
 - Select QuickBooks Online and Payments, click Next and provide a name for your app.
 - Click Next to proceed with adding permissions to your app.
 - 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:
- Navigate to the Settings page, then go to the Redirect URIs tab and add the following URL: 
https://api.nango.dev/oauth/callback. - Save your changes.
 
4
Obtain API credentials
- Still in your created app, navigate to Keys and credentials page and toggle the Show credentials button to locate your app’s credentials.
 - Copy the Client ID and Client Secret.
 - 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:
- From your Developer Dashboard, go to My Hub > Sandbox, then click Add to create a new Sandbox company.
 - Follow the prompts to create a test company.
 - 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.
Useful links
Contribute useful links by editing this page
Common Scopes
| Scope | Description | 
|---|---|
| com.intuit.quickbooks.accounting | Access to QuickBooks accounting data | 
| com.intuit.quickbooks.payment | Access to QuickBooks payments data | 
| profile | Access to user profile information | 
| Access to user email address | |
| phone | Access to user phone number | 
| address | Access to user address | 
| openid | Required for OpenID Connect authentication | 
API gotchas
- QuickBooks requires a company ID/realmId for each API request. To obtain this when creating a new connection on Nango, go to Settings and select Your Account and Settings. On the Your Account page, your Company ID (found under the Billing & Subscription tab) will be displayed at the top. 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-sandboxintegration in Nango instead of the regularquickbooksintegration. - QuickBooks access tokens expire after 1 hour, but Nango automatically handles token refresh for you.
 
Contribute API gotchas by editing this page