Skip to main content

QuickBooks User Connector Setup Guide

This guide provides step-by-step instructions for creating and configuring a QuickBooks user connector with Abacus.AI's ChatLLM platform.

Prerequisites​

Before starting, ensure you have access to:

  • Abacus.AI platform
  • A valid QuickBooks Online account
  • Administrative access to create connectors and projects

Config Connector Setup (Required)​

Config Connector Required

A config connector is required for the QuickBooks user connector to work. Unlike some other connectors where the config connector is optional, QuickBooks user-level authentication depends on the config connector to supply the OAuth client configuration and scopes. Without it, users will not be able to authenticate.

Follow these steps to create a config connector:

  1. Navigate to the Abacus.AI Connected Services Dashboard.
  2. Click on the "Add New Connector" button.
  3. Select the "QuickBooks" option from the "Select a Service" popup.
  4. Toggle Config Only to "Yes".
  5. Enter the Company ID (Realm ID) for your QuickBooks Online company. You can find this in QuickBooks Online under Settings → Additional information. This is required for the QuickBooks tool to make API calls.
  6. (Optional) Customize the Scopes if needed. The default scopes provide full accounting access:
    • com.intuit.quickbooks.accounting — Full access to QuickBooks accounting data (required)
    • email — Access to user's email
    • openid — OpenID Connect authentication
    • profile — Access to user's profile
  7. Click "Create" to save the config connector.

Why is a config connector required? The config connector stores the OAuth configuration (scopes, client settings, and Company ID) that user-level connectors inherit when each end user authenticates. Without it, user connectors have no OAuth context to initiate the authentication flow, and no Company ID to direct API calls to the correct QuickBooks company.

Step-by-Step Instructions​

1. Navigate to Projects Page​

Navigate to the projects page by clicking on the ABACUS.AI logo.

2. Create New Project​

Click on "Create a new project" to begin setting up your ChatLLM project.

3. Select Project Type​

Choose GenAI → Custom Chatbot option from the available project types.

4. Configure Project Name​

Enter a descriptive name for your project that reflects its purpose.

5. Skip to Dashboard​

Select "Skip to project dashboard" to proceed directly to the project configuration.

6. Access Model Training​

  1. Click on the Model option in the left toolbar.
  2. Select "Train Model" in the top right corner of the page.

7. Configure Advanced Options​

Navigate through the following menu structure:

  • Select Advanced Option
  • Choose Tool Use
  • Select Quickbooks_Tool
  • Navigate to Config Connectors and pick the config connector you created in the Config Connector Setup step.
tip

Make sure to select the config connector. Without it, end users will not be able to authenticate with QuickBooks when they use the chatbot.

8. Initiate Model Training​

Click on "Train Model" to begin the training process.

9. Access Trained Model​

Once training is complete:

  1. Click on Models in the navigation.
  2. Select your newly trained model.

10. Create Deployment​

Click on "Create a new deployment" to make your model available for use.

11. Configure Deployment Type​

  1. Select "Offline Batch + Realtime" deployment option.
  2. Click "Next" to proceed.

12. Name Your Deployment​

Enter a user-friendly name that your end users will see, then click "Deploy".

13. Monitor Deployment Status​

  1. Return to your model by clicking Models → [Your Model Name].
  2. Wait for the deployment status to show as "Active".
  3. Click on the deployment name once active.

14. Access Prediction Dashboard​

Click on the "Prediction Dash" option under the Deployment section.

15. Test Your Bot​

Click on "Go to Abacus.AI Chat" to access the testing interface.

16. Start Using the Chatbot​

  • Enter your questions or prompts in the chat interface.
  • Note: Each user will be prompted to log in to QuickBooks Online (via Intuit) once for authentication.

Supported QuickBooks Tool Actions​

The QuickBooks user connector provides a flexible REST wrapper that lets the AI agent call any QuickBooks Online API endpoint. The tool automatically handles authentication, token refresh, and the Company ID (Realm ID) prefix.

Common Operations​

OperationEndpoint ExampleDescription
List CustomerscustomerFetch all customers
Get Customercustomer/{id}Fetch a specific customer by ID
List InvoicesinvoiceFetch all invoices
Get Invoiceinvoice/{id}Fetch a specific invoice by ID
List ItemsitemFetch products and services
List AccountsaccountFetch chart of accounts
List VendorsvendorFetch all vendors
List BillsbillFetch all bills
List PaymentspaymentFetch all payments
List EmployeesemployeeFetch all employees
Query Dataquery?query=SELECT * FROM CustomerRun a QBO SQL-style query
Company Infocompanyinfo/{realmId}Fetch company profile
Run Reportreports/ProfitAndLossRun a standard QBO report
PreferencespreferencesFetch company preferences

Supported Entities​

The tool supports all standard QuickBooks Online entities: Customer, Vendor, Employee, Invoice, Bill, Payment, Purchase, Estimate, CreditMemo, SalesReceipt, Account, JournalEntry, BillPayment, Item, TaxCode, TaxRate, Department, Class, and CompanyInfo.

Important Notes​

  • Config Connector Required: A config connector must be set up before user-level authentication will work. See Config Connector Setup.
  • Authentication: Each end user will be prompted to authenticate with QuickBooks Online on their first interaction with the chatbot.
  • Company ID: The Company ID (Realm ID) must be configured on the config connector. Without it, API calls will fail.
  • Token Refresh: OAuth tokens are refreshed automatically. QuickBooks refresh tokens are valid for 100 days.
  • Rate Limits: QuickBooks enforces API rate limits; the tool automatically retries with exponential backoff when limits are hit.
  • Read & Write: Unlike some connectors that are read-only, the QuickBooks tool supports GET, POST, PUT, PATCH, and DELETE operations depending on the endpoint called.

Troubleshooting​

If you encounter issues:

  1. "Missing realm_id" error: Ensure your config connector has the Company ID (Realm ID) set. Edit the config connector and add it.
  2. Users cannot authenticate: Verify that a config connector exists and is selected in the model's Tool Use configuration.
  3. Token expired: QuickBooks refresh tokens are valid for 100 days. If a token expires, the user will need to re-authenticate.
  4. Permission errors: Ensure the com.intuit.quickbooks.accounting scope was granted during OAuth authorization.
  5. Wrong company data: Verify that the Company ID on the config connector matches the QuickBooks Online company you want to query.