Skip to content

QuickBooks ​

QuickBooks is an accounting software package developed and marketed by Intuit.

ingestr supports QuickBooks as a source.

URI format ​

plaintext
quickbooks://?company_id=<company_id>client_id=<client_id>&client_secret=<client_secret>&refresh_token=<refresh_token>&access_token=<access_token>&environment=<environment>&minor_version=<minor_version>

URI parameters:

  • company_id: The QuickBooks company (realm) id.
  • client_id: OAuth client id from your Intuit application.
  • client_secret: OAuth client secret.
  • refresh_token: OAuth refresh token used to obtain access tokens.
  • environment: Optional environment name, either production or sandbox. Defaults to production.
  • minor_version: Optional API minor version.

Setting up a QuickBooks integration ​

Follow Intuit's OAuth setup guide to create an app and generate your credentials.

Once you have the credentials, you can ingest data. For example, to copy customers data into DuckDB:

sh
ingestr ingest \
--source-uri 'quickbooks://?company_id=1234567890&client_id=cid&client_secret=csecret&refresh_token=rtoken' \
--source-table 'customers' \
--dest-uri duckdb:///customers.duckdb \
--dest-table 'dest.details'

This command will retrieve customers data and save it to the dest.details table in the DuckDB database.

quickbooks

Tables ​

QuickBooks source allows ingesting the following tables:

TablePKInc KeyInc StrategyDetails
customersidlastupdatedtimemergeRetrives list of customers.
invoicesidlastupdatedtimemergeRetrives sales invoices.
accountsidlastupdatedtimemergeRetrives details of accounts.
vendorsidlastupdatedtimemergeRetrives vendor records.
paymentsidlastupdatedtimemergeRetrives payments recorded.

Use these as the --source-table parameter in the ingestr ingest command.