Skip to content

QuickBooks ​

QuickBooks is an accounting software package developed by Intuit.

Bruin supports QuickBooks as a source for Ingestr assets, so you can ingest data from QuickBooks into your data warehouse.

To connect to QuickBooks you must add a configuration item to the .bruin.yml file and the asset file. You will need company_id, client_id, client_secret and refresh_token.

Follow the steps below to correctly set up QuickBooks as a data source and run ingestion.

Configuration ​

Step 1: Add a connection to .bruin.yml file ​

Add the connection configuration to the connections section of .bruin.yml:

yaml
connections:
  quickbooks:
    - name: "quickbooks"
      company_id: "123456"
      client_id: "cid"
      client_secret: "csecret"
      refresh_token: "rtoken"
      environment: production
  • 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.

Step 2: Create an asset file for data ingestion ​

Create an asset configuration file to define the data flow:

yaml
name: public.quickbooks_customers
type: ingestr

parameters:
  source_connection: quickbooks
  source_table: 'customers'

  destination: postgres
  • source_connection: name of the QuickBooks connection defined in .bruin.yml.
  • source_table: QuickBooks table to ingest.
  • destination: The destination platform/type, for example postgres.

Available Source Tables ​

TablePKInc KeyInc StrategyDetails
customersidlastupdatedtimemergeRetrieves list of customers.
invoicesidlastupdatedtimemergeRetrieves sales invoices.
accountsidlastupdatedtimemergeRetrieves details of accounts.
vendorsidlastupdatedtimemergeRetrieves vendor records.
paymentsidlastupdatedtimemergeRetrieves payments recorded.
purchasesidlastupdatedtimemergeRetrieves expense transactions such as cash expenses, checks and credit card charges.
billsidlastupdatedtimemergeRetrieves vendor bills.

Step 3: Run asset to ingest data ​

bash
bruin run assets/quickbooks_asset.yml

Executing this command ingests data from QuickBooks into your Postgres database.

quickbooks