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 | β |
Accounts
| Function name | Description | Type | Source code |
|---|---|---|---|
create-account | Creates a single account in QuickBooks. | Action | π Github |
update-account | Updates a single account in QuickBooks. | Action | π Github |
accounts | Fetches all accounts in QuickBooks. Handles both active and archived accounts, saving or deleting them based on their status. | Sync | π Github |
Bill Payments
| Function name | Description | Type | Source code |
|---|---|---|---|
bill-payments | Fetches all QuickBooks bill payments | Sync | π Github |
Bills
| Function name | Description | Type | Source code |
|---|---|---|---|
create-bill | Creates a single bill in QuickBooks. | Action | π Github |
bills | Fetches all QuickBooks bills | Sync | π Github |
Credit Memos
| Function name | Description | Type | Source code |
|---|---|---|---|
create-credit-memo | Creates a single credit memo in QuickBooks. | Action | π Github |
update-credit-memo | Updates a single credit memo in QuickBooks. | Action | π Github |
credit-memos | Fetches all QuickBooks credit memos | Sync | π Github |
Customers
| Function name | Description | Type | Source code |
|---|---|---|---|
create-customer | Creates a single customer in QuickBooks. | Action | π Github |
update-customer | Update a single customer in QuickBooks. | Action | π Github |
customers | Fetches all QuickBooks customers. Handles both active and archived customers, saving or deleting them based on their status. | Sync | π Github |
Deposits
| Function name | Description | Type | Source code |
|---|---|---|---|
deposits | Fetches all QuickBooks deposits | Sync | π Github |
Invoices
| Function name | Description | Type | Source code |
|---|---|---|---|
create-invoice | Creates a single invoice in QuickBooks. | Action | π Github |
update-invoice | Updates a single invoice in QuickBooks. | Action | π Github |
invoices | Fetches all invoices in QuickBooks. Handles both active and voided invoices, saving or deleting them based on their status. | Sync | π Github |
Items
| Function name | Description | Type | Source code |
|---|---|---|---|
create-item | Creates a single item in QuickBooks. | Action | π Github |
update-item | Update a single item in QuickBooks. | Action | π Github |
items | Fetches all items in QuickBooks. Handles both active and archived items, saving or deleting them based on their status. | Sync | π Github |
Journal Entries
| Function name | Description | Type | Source code |
|---|---|---|---|
create-journal-entry | Creates a single journal entry in QuickBooks. | Action | π Github |
update-journal-entry | Update a single journal entry in QuickBooks. | Action | π Github |
journal-entries | Fetch all journal entries in QuickBooks | Sync | π Github |
Payments
| Function name | Description | Type | Source code |
|---|---|---|---|
create-payment | Creates a single payment in QuickBooks. | Action | π Github |
payments | Fetches all payments in QuickBooks. Handles both active and voided payments, saving or deleting them based on their status. | Sync | π Github |
Purchase Orders
| Function name | Description | Type | Source code |
|---|---|---|---|
create-purchase-order | Creates a single purchase order in QuickBooks. | Action | π Github |
Purchases
| Function name | Description | Type | Source code |
|---|---|---|---|
purchases | Fetches all QuickBooks purchases | Sync | π Github |
Transfers
| Function name | Description | Type | Source code |
|---|---|---|---|
transfers | Fetches all QuickBooks transfers | Sync | π Github |
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.
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