Skip to main content

QuickBooks Online Connections

QuickBooks Online is a powerful cloud-based accounting solution designed for businesses of all sizes. It provides real-time access to financial data from any internet-connected device, allowing users to manage bookkeeping, track expenses, generate invoices, and reconcile bank transactions seamlessly. The platform also offers automatic product updates, secure data encryption, automatic backups, and the ability to restore company data when needed. Additionally, QuickBooks Online integrates with numerous third-party applications, enhancing its functionality for payroll processing, tax compliance, and business analytics. For more information, see https://quickbooks.intuit.com/online/.

Dica

This connection is in early preview. It is read-only and available only in SaaS product editions. For more information on early previews, see Early Preview Connection Types.

Limitations and Requirements

Nota

During normal selection or import of an entire table, you may encounter an error indicating a problem with a specific column. Since some tables require filtering based on a particular column, data from them can only be ingested using custom SQL statements. In this case, the problematic column can be used as a filter in the WHERE clause of a custom SQL statement to ingest the table.

Nota

For filtering date columns, this connection type supports a set of literal functions on dates. You can use these to reduce the volume of data extracted from the database using a custom SQL query. For more information, see the pg_dateliteralfunctions.htm page in the driver documentation for this connection type.

Nota

The Payments API for QuickBooks Online is not available.

  • OAuth 2.0 authentication is required. See the page to create a client and authenticate.

  • Column-Specific Errors: Some columns, such as JSON structures, nested arrays, or dynamic fields, may cause errors when importing entire tables. To resolve this, filter problematic data using a WHERE clause in a custom SQL statement, such as:

    SELECT * FROM Transactions WHERE CustomFields IS NOT NULL;

    This ensures only relevant data is ingested while avoiding errors. Some tables require filtering on a particular column, meaning data can only be retrieved using custom SQL statements.

    For more information, see the driver documentation: https://cdn.cdata.com/help/RNK/jdbc/default.htm.

    For guidance on using custom SQL, see Create Dataset with SQL.

  • Date Filtering: QuickBooks Online supports date literal functions to optimize data retrieval. To filter transactions from the last 30 days, use:

    SELECT * FROM Transactions WHERE DateColumn >= CURRENT_DATE - INTERVAL '30' DAY;

Create Connection

via Cloud Portal

When you create the connection, please review the following properties and specify them accordingly:

Connection Property

Description

Company ID

The unique identifier of a given company in QuickBooks Online.

Connect String Options

The following default value sets the connection timeout in seconds:

Timeout=0;

Setting this value to 0 disables timeouts.

OAuth 2.0 client

The OAuth client is created and selected for you.

See the OAuth 2.0 for QuickBooks Online page to create a client and authenticate.

Default Column Data Type Inference

Leave this value as Enabled.

For more information, see the driver documentation https://cdn.cdata.com/help/RNK/jdbc/default.htm.

Data Type Conversions

For more information, see the driver documentation https://cdn.cdata.com/help/RNK/jdbc/default.htm.