Intuit QuickBooks
Intuit QuickBooks is a comprehensive accounting and financial management platform designed for small and medium-sized businesses, providing tools for invoicing, expense tracking, payroll management, tax preparation, and financial reporting to streamline business operations and ensure financial compliance.
Power end-to-end data operations for your Intuit QuickBooks API with Nexla. Our bi-directional Intuit QuickBooks connector is purpose-built for Intuit QuickBooks, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Intuit QuickBooks or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Intuit QuickBooks workflows fast, secure, and fully governed.
Features
Type: API
- Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
- Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
- API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
- Request optimization with intelligent batching, retry, and caching to minimize API calls and costs
Prerequisites
Before creating an Intuit QuickBooks credential, you need to have a QuickBooks account. The credential uses the Nexla App for OAuth2 authentication, which simplifies the setup process by using a pre-configured OAuth2 application managed by Nexla.
To use this credential, you need to have a QuickBooks account. Once you have access to your account, you can connect it to Nexla using the OAuth2 authorization flow. The Nexla App handles the OAuth2 authentication process, so you do not need to create your own OAuth2 application. For detailed information about QuickBooks API authentication and setup, refer to the QuickBooks API documentation.
Authenticate
Credentials required
Nexla client for connecting to QuickBooks account
| Field | Required | Secret | Description |
|---|---|---|---|
| API Access Scope | Yes | No | API Access Scope Allowed values: Accounting API; Payments API; Accounting & Payments API |
Create a credential in Nexla
- To create a new Intuit QuickBooks credential, after selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.
New Credential Overlay – Intuit QuickBooks

-
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
-
Select the API access scope from the API Access Scope dropdown menu. Available options include:
- Accounting API:
com.intuit.quickbooks.accounting openid email profile - Payments API:
com.intuit.quickbooks.payment openid email profile - Accounting & Payments API:
com.intuit.quickbooks.accounting com.intuit.quickbooks.payment openid email profile
The default value is
com.intuit.quickbooks.accounting openid email profileif not specified. The selected scope determines what permissions are requested during the OAuth2 authorization flow. - Accounting API:
-
Click the Authorize button to begin the OAuth2 authorization flow. This will redirect you to Intuit's authorization page where you will be asked to sign in with your QuickBooks account and grant permissions to Nexla to access your QuickBooks data.
During the OAuth2 authorization flow, you will be redirected to Intuit's authorization page. You must sign in with a QuickBooks account that has access to the QuickBooks company you want to connect. After signing in, you will be asked to grant permissions to Nexla to access your QuickBooks data. The access scopes determine what permissions are requested. Once you grant permissions, you will be redirected back to Nexla, and the authorization will be completed automatically.
-
After completing the OAuth2 authorization flow, Nexla will automatically obtain and store the access token and refresh token needed to authenticate API requests. The access token is used to authenticate each API request, and the refresh token is used to obtain new access tokens when the current access token expires.
OAuth2 access tokens expire after a certain period for security reasons. Nexla automatically refreshes expired access tokens using the refresh token, so you typically do not need to re-authorize unless you revoke access or the refresh token expires. The access token is sent in the
Authorizationheader with theBearerprefix for all API requests to the QuickBooks API. For detailed information about OAuth2 authentication, token management, and available scopes, see the QuickBooks API documentation. -
Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.
Use as a data source
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Intuit QuickBooks connector tile, then select the credential that will be used to connect to the QuickBooks account, and click Next; or, create a new Intuit QuickBooks credential for use in this flow.
Endpoint templates
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common QuickBooks endpoints. Each template is designed specifically for the corresponding QuickBooks endpoint, making data source setup easy and efficient. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.
Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.
Manual configuration
Intuit QuickBooks data sources can also be manually configured to ingest data from any valid QuickBooks API endpoint, including endpoints not covered by the pre-built templates. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the content format, API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.
QuickBooks API endpoints typically follow the pattern https://quickbooks.api.intuit.com/v3/company/{realm_id}/{endpoint_path}, and the QuickBooks API typically returns data in JSON format. The endpoint requires OAuth2 authentication via the Authorization: Bearer {token} header, which is handled automatically by your credential configuration, and the endpoint URL must include your QuickBooks Online Company ID (Realm ID) in the path. For detailed information about QuickBooks API endpoints and available APIs, see the QuickBooks API documentation.
Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Intuit QuickBooks data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.
Use as a destination
Click the + icon on the Nexset that will be sent to the Intuit QuickBooks destination, and select the Send to Destination option from the menu. Select the Intuit QuickBooks connector from the list of available destination connectors, then select the credential that will be used to connect to the QuickBooks organization, and click Next; or, create a new Intuit QuickBooks credential for use in this flow.
Endpoint templates
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common QuickBooks endpoints. Each template is designed specifically for the corresponding QuickBooks endpoint, making destination setup easy and efficient. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.
Manual configuration
Intuit QuickBooks destinations can also be manually configured to send data to any valid QuickBooks API endpoint, including endpoints not covered by the pre-built templates. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the content format, API method, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.
QuickBooks API endpoints typically follow the pattern https://quickbooks.api.intuit.com/v3/company/{realm_id}/{endpoint_path}, and the QuickBooks API typically uses JSON format for request bodies. The endpoint requires OAuth2 authentication via the Authorization: Bearer {token} header, which is handled automatically by your credential configuration, and the endpoint URL must include your QuickBooks Online Company ID (Realm ID) in the path. For detailed information about QuickBooks API endpoints and available APIs, see the QuickBooks API documentation.
Save & activate
Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Intuit QuickBooks endpoint, open the destination resource menu, and select Activate.
The Nexset data will not be sent to the Intuit QuickBooks endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.