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.

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. Available tables are listed in the Ingestr documentation.
  • destination: name of the destination connection.

Step 3: Run asset to ingest data

bruin run assets/quickbooks_asset.yml

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

quickbooks