Skip to main content

QuickBooks Connector Documentation

Connect your QuickBooks to Abacus.AI​

The QuickBooks connector uses OAuth 2.0 to securely authenticate with your QuickBooks Online account via Intuit. No API keys are needed — simply log in and authorize Abacus.AI.

Step 1: Open Connected Services​

  1. In the Abacus.AI interface, click on your profile picture in the top right corner.

    Abacus Profile
  2. Select "Manage Connectors" from the dropdown menu.

    Manage Connectors

Step 2: Add a New QuickBooks Connector​

  1. Click on "Add New Connector", then choose "QuickBooks" from the list of available services.

  2. Enter a name for your connector in the Connector Name field.

  3. (Optional) Enter your Company ID (also called the Realm ID). You can find this in QuickBooks Online under Settings → Additional information. This is optional at connect time and can be added later by editing the connector, but it is required before the connector can make API calls.

  4. Click "Connect QuickBooks" to initiate the OAuth flow. You will be redirected to Intuit's authorization page where you can log in and grant the requested permissions.

  5. After authorizing, you will be redirected back to Abacus.AI and your connector will be verified.

Config Only Mode (Advanced)​

If you want to pre-configure the connector without immediately authenticating (for example, to customize OAuth scopes or to set up a config connector for user-level connectors), toggle Config Only to "Yes". This reveals a Scopes selector where you can choose which QuickBooks permissions to request.

Available Scopes​

ScopeDescription
com.intuit.quickbooks.accountingFull access to QuickBooks Online accounting data (required)
emailAccess to the user's email address
openidOpenID Connect authentication
profileAccess to the user's profile information

All scopes are selected by default. The com.intuit.quickbooks.accounting scope is required and cannot be removed.

How to Use the QuickBooks Connector​

Once the QuickBooks connector is set up, you can import accounting data into Abacus.AI for analysis and model training.

Creating a Dataset​

  1. Create a new project and select the use case, then go to the Datasets tab and click "Create Dataset".

    Create Dataset
  2. Click on "Create New" and name the dataset.

    Create New Dataset
  3. Choose "Read from External Service" and select your QuickBooks connector under "Application Connectors".

    Read from External Service
  4. Configure the dataset import options:

    • QuickBooks Entity: Select the entity type you want to import (e.g., Customer, Invoice, Item). See the full list of supported entities below.
  5. After configuring the data import options, proceed to upload the dataset.

  6. Once the dataset is uploaded, configure the schema mapping and train models with the data.

    Train Model with Data

Supported QuickBooks Entities​

The QuickBooks connector supports importing the following QuickBooks Online entities:

EntityDescription
CustomerCustomers and clients in your books
VendorSuppliers and vendors you do business with
EmployeeEmployees on your payroll
InvoiceSales invoices issued to customers
BillBills received from vendors
PaymentPayments received from customers
PurchasePurchase transactions (checks, credit card charges, etc.)
EstimateEstimates / quotes sent to customers
CreditMemoCredit memos issued to customers
SalesReceiptSales receipts for immediate payments
AccountChart of accounts entries
JournalEntryManual journal entries
BillPaymentPayments made to vendors
ItemProducts and services in your catalog
TaxCodeTax codes configured in your books
TaxRateTax rates associated with tax codes
DepartmentDepartments / locations for tracking
ClassClasses for categorizing transactions
CompanyInfoCompany profile and settings

Exported Data Format​

Each dataset record includes all fields returned by the QuickBooks Online API for the selected entity. Nested objects (e.g., CustomerRef.value) are flattened using dot notation, and list-valued fields are JSON-serialized. Common fields across all entities include:

  • Id — QuickBooks record ID
  • SyncToken — Optimistic concurrency token
  • MetaData.CreateTime — Record creation timestamp
  • MetaData.LastUpdatedTime — Last modification timestamp

Using QuickBooks Data​

  • DataLLM Use Case: QuickBooks data is ideal for structured data interactions, such as querying invoices, analyzing revenue trends, tracking outstanding bills, or generating financial reports.
  • ChatLLM Use Case: QuickBooks data is treated as a custom table and cannot be directly used in ChatLLM projects as a document source.
  • Combined Data+ChatLLM Use Case: QuickBooks data can be combined with other data sources (documents, emails, etc.) to provide conversational insights alongside structured financial data.

Troubleshooting​

If you encounter issues:

  1. Invalid connector status: Your OAuth tokens may have expired. Delete the connector and re-authenticate.
  2. Missing Company ID: The QuickBooks tool requires a Company ID (Realm ID) to call the QBO API. Edit the connector and add it under "Company ID". You can find it in QuickBooks Online under Settings → Additional information.
  3. Empty datasets: Verify that the selected entity contains records in your QuickBooks Online account.
  4. Permission errors: Ensure the com.intuit.quickbooks.accounting scope was granted during OAuth authorization.