Documentation Index

Fetch the complete documentation index at: https://docs.dataddo.com/llms.txt

Use this file to discover all available pages before exploring further.

QuickBooks

Prev Next

QuickBooks is accounting software for small and medium businesses. It manages financial transactions, tracks income and expenses, and creates financial reports. It is a popular choice for bookkeeping.

Refer to our website for the list of metrics and attributes available in Dataddo.

Refer to QuickBooks's official documentation to see all available endpoints from the QuickBooks API.

Authentication Methods

QuickBooks supports more than one way to connect. Pick one when you create the authorizer in Dataddo:

  • QuickBooks - sign in with QuickBooks and approve access (recommended).
  • QuickBooks Custom - use your own app credentials (for advanced setups).

Authorize Connection to QuickBooks

To authorize this service, use OAuth 2.0 to share specific data with Dataddo while keeping usernames, passwords, and other information private.

  1. On the Authorizers page, click on Authorize New Service and select your service.
  2. Follow the on-screen prompts to grant Dataddo the necessary permissions to access and retrieve your data.
  3. [Optional] Once your authorizer is created, click on it to change the label for easier identification.

Ensure that the account you're granting access to holds at least admin-level permissions. If necessary, assign a team member with the required permissions with the authorizer role to authenticate the service for you.

For more information, see our article on authorizers.

Data Coverage

QuickBooks exposes the following datasets. Each dataset maps to a table you can extract. Example fields are a representative sample; each dataset returns more columns.

Dataset Description Example fields Date range
AP Aging Detail Report Account payables aging report Amount, Category, Currency, Document number, Due date, End Period (+7 more) No
AP Aging Detail Report V2 Account payables aging report Start Period, End Period, Amount, Currency, Document number, Due date (+7 more) No
AR Aging Detail Report Account receivables aging report Amount, Category, Currency, Customer name, Document number, Due date (+7 more) No
AR Aging Detail Report V2 Account receivables aging report Start Period, End Period, Currency, Customer name, Location, Document number (+7 more) No
Accounts List of accounts ID, Account Sub Type, Account Type, Account Number, Active, Classification (+13 more) Yes
Balance Sheets Balance Sheet Detail Start Period, End Period, Account, Category, Currency, Report Name (+4 more) Yes
Balance Sheets V2 Balance Sheet Detail Start Period, End Period, Account, Currency, Report Name, Section (+1 more) Yes
Bills List of bills ID, AP Account, AP Account Name, Balance, Create Time, Currency (+25 more) Yes
BillPayments List of Bill Payments ID, Bank Account, Bank Account Name, Create Time, Currency, Currency Name (+12 more) Yes
Budgets List of budgets ID, Active, Budget Detail - Account Reference - Name, Budget Detail - Account Reference - Value, Budget Detail - Amount, Budget Detail - Budget Date (+10 more) No
Cash Flow Retrieve information about Cash Flow Start Period, End Period, Account, Category, Subcategory, Currency (+4 more) No
Cash Flow V2 Retrieve information about Cash Flow Start Period, End Period, Account, Currency, Date Macro, Report Name (+3 more) No
Classes List of Classes ID, Active, Create Time, Fully Qualified Name, Last Updated Time, Name (+4 more) Yes
Credit Memos Flattened list of Credit Memos with line details Credit Memo ID, Billing Address ID, Customer Name, Customer ID, Document Number, Line Amount (+15 more) No
Customers List of Customers ID, Active, Balance, Balance With Jobs, Bill Address - City, Bill Address - Country Sub Division Code (+35 more) Yes
Departments Details about Departments ID, Active, Create Time, Fully Qualified Name, Last Updated Time, Name (+4 more) Yes
Deposits List of Deposits ID, Create Time, Currency, Currency Name, Deposit To Account Name, Deposit To Account Value (+7 more) Yes
Employee List of employees ID, Active, Bill Rate, Billable Time, Create Time, Display Name (+23 more) Yes
General Ledger Report General ledger report Start Period, End Period, Transaction date, Account ID, Account name, Amount (+14 more) Yes
General Ledger Report V2 General ledger report Start Period, End Period, Transaction date, Account ID, Account name, Currency (+10 more) Yes
Invoices List of Invoices ID, Allow Online ACH Payment, Allow Online Credit Card Payment, Apply Tax After Discount, Balance, Billing Address - City (+30 more) Yes
Invoices Flattened list of Invoices with line details Invoice ID, Billing Address ID, Customer Name, Customer ID, Document Number, Sparse (+13 more) Yes
Items List of Items ID, Active, Create Time, Fully Qualified Name, Income Account Name, Income Account ID (+16 more) Yes
Journal Entries List of Journal Entries Adjustment, Create Time, Currency, Currency Name, Doc Number, Last Updated Time (+17 more) Yes
Payments List of Payments ID, Create Time, Currency, Currency Name, Customer ID, Customer Name (+8 more) Yes
Purchases Details about Purchases Account ID, Account Name, Active, Create Time, Currency, Currency Name (+20 more) Yes
Purchase Orders Details about Purchase Orders ID, Ap Account ID, Ap Account Name, Create Time, Currency, Currency Name (+36 more) Yes
Profit and Loss Profit and Loss Summary report Start Period, End Period, Item, Currency, Report Name, Value Yes
Profit and Loss Detail Profit and Loss detailed report Amount, Balance, Category, Currency, Dept Name, Document number (+13 more) Yes
Profit and Loss Detail V2 Profit and Loss detailed report dynamic (from your account) Yes
Profit and Loss V2 Profit and Loss Summary report Start Period, End Period, Account, Currency, Report Name, Section (+1 more) Yes
Terms Details about Terms Active, Create Time, Discount Days, Discount Percent, Due Days, Last Updated Time (+6 more) Yes
Time Activity Retrieve records of time worked by a vendor or employee Billable Status, Class ID, Class Name, Create Time, Customer ID, Customer Name (+18 more) Yes
Transaction Lines Report Transaction Lines report Account name, Amount, Currency, Transaction date, Document number, End Period (+8 more) No
Transaction Lines Report V2 Transaction Lines report Start Period, End Period, Transaction date, Name, Account name, Currency (+9 more) No
Transfers Details about Transfers Amount, Create Time, Currency, Currency Name, From Account ID, From Account Name (+9 more) Yes
Vendors Details about Vendors Account Number, Active, Balance, Bill Address - City, Bill Address - Country Sub Division Code, Bill Address - ID (+19 more) Yes

How Data Extraction Works

What each extraction pulls depends only on whether a dataset supports a date range (see the Date range column above):

  • Date range supported (Yes): the source reads a relative window (for example "last 7 days"), and that window slides forward with the current date. Every run re-reads the window, so a range of "1 day ago" always pulls the previous day (D-1). Each run replaces the window's data rather than adding older history. To load records from before the window, run a full data re-sync with a wider range. See Data Backfilling.
  • No date range (No): every run pulls all currently available data.

Set the relative date range when you create the source.

Metadata Columns

When you create a source, you can add these Dataddo metadata columns to the extracted data:

  • dataddo_hash - a fingerprint built from each record's key fields. It works as a natural key, so it is ideal for upserts (updating existing rows in your destination instead of creating duplicates).
  • dataddo_extraction_timestamp - the date and time the row was extracted. Use it to track how records change over time, for example to build slowly changing dimensions.

How to Create a QuickBooks Data Source

Creating a data source takes you through six steps, shown in the progress bar at the top of the wizard. Each step is explained below.

1. Pick the connector

On the Sources page, click Create Source, then select the connector from the catalog. Use the search bar or the category tabs if you do not see it right away. You can rename the source at any time using the pencil icon next to its name.

2. Select the dataset

A dataset defines the shape of your data: which fields you get and how they relate. Select the dataset you want; you can still fine-tune the exact fields later.

  • Each dataset has a short description of what it contains. Use the search box to find a dataset, attribute, or metric by name.
  • The panel on the right previews the selected dataset's fields. For each field you can see its data type, whether it holds sensitive data (personal fields such as name or email are flagged), and which other datasets it links to, so you can see how the datasets relate.

3. Choose the account

This step selects what Dataddo reads from.

  • Authorizer: Select an account you have already authorized from the drop-down. If you have none yet, choose Add new account and follow the prompts. If no authorizer is selected, Dataddo asks you to authorize before you continue.
  • What to extract from: Select the exact entity you want to pull data from. Depending on the service this may be labelled an account, property, profile, workspace, or similar, sometimes with a sub-level to choose as well.
  • Multiple accounts: To pull the same data from every entity you can access, turn on Automatically collect data from all .... This is multi-account extraction. Leave it off to choose them by hand.

4. Refine the attributes and metrics

The dataset already sets the structure. Here you fine-tune it: tick or untick the specific attributes and metrics you want to keep, and use the search box to find a field quickly. Click Test on Sample Data at any point to preview the result before you continue.

5. Add metadata columns (optional)

Two optional columns help your destination handle the data.

  • Dataddo Hash (Include Row Hash): a fingerprint built from the columns you pick. It works as a natural key, so your destination can deduplicate rows and run upserts instead of creating duplicates. Turn it on, then select the columns that uniquely identify a row.
  • Dataddo Extraction Timestamp: the time each row was extracted. Use it to watermark the data, for example to build slowly changing dimensions or to track when a value last changed.

6. Set the schedule

Decide how often Dataddo runs the extraction.

  • Frequency: how often the pipeline runs, for example daily. Click Show advanced settings to also set the exact hour and minute (UTC).
  • Date range: the relative window each run extracts, for example "Yesterday". The window moves forward on every run.
  • Historical data: a new source starts from the current window. To load older data, run a full data re-sync after the source is created.
  • Allow Empty Data Extractions: when on, a run that returns no data records zero rows instead of failing. Turn it on if the source can legitimately have periods with no data.

Click Save. Your data source is ready.

Limitations

Row Limit

The QuickBooks API allows the extraction of up to 1,000 rows per batch. Extract your data in multiple batches if you have >1,000 rows.

Troubleshooting

Data Preview Unavailable

No data preview when you click on Test Data might be caused by an issue with your source configuration. The most common causes are:

  • Date range: Try a smaller date range. You can load the rest of your data afterward via manual data load.
  • Insufficient permissions: Please make sure your authorized account has at least admin-level permissions.

Related Articles

Now that you have successfully created a data source, see how you can connect your data to a dashboarding app or a data storage.

Sending Data to Dashboarding Apps

Sending Data to Data Storages

Other Resources