Release Notes
August 2026
v1.9.1
Feature Updates
- Adds DuckDB as a supported destination.
July 2026
v1.9.0
Schema/Data Change
12 total changes • 3 possible breaking changes
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
| All tax line models | Variable configuration (opt-in) | Individual tax line variables sufficient | quickbooks__tax_lines_enabled: true also required | Possible breaking change for dbt Core users If you previously enabled any individual tax line variables, those models will now be disabled by default. See the Enabling Tax Lines section of the README for configuration details. |
quickbooks__general_ledger | Potential new rows | No tax lines for Quickstart users | Tax lines now opt-in | Tax line rows are disabled by default. Set quickbooks__tax_lines_enabled: true and enable individual tax line variables to post tax lines to the tax liability account. Tax lines are added only when you opt in. See the Enabling Tax Lines section of the README for details. |
int_quickbooks__purchase_double_entry | Data change | paid_to_account_id = purchase line expense account; class_id = expense class from purchase line | paid_to_account_id = tax liability account; class_id = null | Possible breaking change for users with using_purchase_tax_line: true and quickbooks__tax_lines_enabled: true. Tax lines now correctly post to the tax liability account. class_id is no longer populated for tax line rows. |
currency_id, exchange_rate, quantity, sales_item_quantity in several header staging tables | Data change | Warehouse-native type | Explicit data cast to string for currency_id, or float for remaining fields | Possible breaking change for downstream consumers with type-sensitive logic built on staging models. |
stg_quickbooks__bill_tax_linestg_quickbooks__bill_tax_line_tmp | New models (opt-in) | — | — | Enabled via quickbooks__tax_lines_enabled: true and using_bill_tax_line: true. See the README for details. |
stg_quickbooks__credit_memo_tax_linestg_quickbooks__credit_memo_tax_line_tmp | New models (opt-in) | — | — | Enabled via quickbooks__tax_lines_enabled: true and using_credit_memo_tax_line: true. See the README for details. |
stg_quickbooks__deposit_tax_linestg_quickbooks__deposit_tax_line_tmp | New models (opt-in) | — | — | Enabled via quickbooks__tax_lines_enabled: true and using_deposit_tax_line: true. See the README for details. |
stg_quickbooks__estimate_tax_linestg_quickbooks__estimate_tax_line_tmp | New models (opt-in) | — | — | Enabled via quickbooks__tax_lines_enabled: true and using_estimate_tax_line: true. See the README for details. |
Feature Updates
Exchange Gain/Loss
- Adds the ability to realize exchange gain/loss entries to
int_quickbooks__bill_payment_double_entryandint_quickbooks__payment_double_entry, which populate inquickbooks__general_ledgerandquickbooks__general_ledger_by_period, to capture the currency impact when a foreign currency transaction is settled at a different exchange rate than when it was originally recorded. Requires an account with a subtype ofExchangeGainOrLossin QuickBooks to generate entries. - Adds the
quickbooks__exchange_gain_loss_enabledvariable (defaultfalse) to opt into exchange gain/loss entry generation. Enable this if your QuickBooks data includes multi-currency transactions and you have anExchangeGainOrLossaccount configured. See the README for configuration details.
June 2026
v1.6.2
Bug Fix
- Corrects vendor credit account selection in
int_quickbooks__vendor_credit_double_entrysocredit_account_idusesexpense_account_idbefore falling back toparent_income_account_idorincome_account_id.- IMPORTANT:
credit_account_idmay change for vendor credits with multiple available account options.
- IMPORTANT:
v1.6.3
Bug Fix
- Fixes Postgres/Redshift unknown datatype errors by explicitly casting string literals in our models as strings.
v1.7.0
Schema/Data Changes
1 total change
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
| All models | source_relation column (when using a single QuickBooks schema) | Empty string ('') | <database>.<schema> | Full refresh required after upgrading. |
Feature Updates
- Introduces the new (recommended)
quickbooks_sourcesvariable for more robust union data configuration. The oldquickbooks_union_schemasandquickbooks_union_databasesvariables will still be supported. See the README for specific details.
Under the Hood
- Adds the
fivetran_using_source_casingvariable for case-sensitive destination support. When enabled, downstream transformations respect source casing to ensure consistent results. See the Additional Configurations section of the README for details. - Updates
partition_by_source_relationmacro to conditionally includesource_relationin partition clauses only when multiple sources are configured.
v1.8.0
Schema/Data Change
3 total changes • 0 possible breaking changes
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
quickbooks__inventory_item_activity | New model | — | — | New line-level view of all item-bearing transactions, including item enrichment details, inventory quantity, unit price, and status indicators for inventory movement analysis. |
stg_quickbooks__item | New fields | — | description, stock_keeping_unit, quantity_on_hand, track_quantity_on_hand, fully_qualified_name | Fields were present in the source but not previously exposed in the model. |
stg_quickbooks__purchase_order_linestg_quickbooks__bill_linestg_quickbooks__purchase_line | New fields | — | item_expense_quantity, item_expense_unit_price | Fields were present in the source but not previously exposed in the model. |
v1.8.1
Under the Hood
- Removes unused
using_purchasevariable fromint_quickbooks__purchase_transactions.
May 2026
v1.6.1
Quickstart Update
- Adds
table_variablesfor tax relevant sources to prevent missing sources from blocking downstream Quickstart models.
April 2026
v1.5.0
Schema/Data Change
3 total changes • 2 possible breaking changes
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
stg_quickbooks__deposit | New column | — | exchange_rate | Exchange rate in home currency units. |
int_quickbooks__deposit_double_entryint_quickbooks__deposit_transactions | Field logic | BREAKING CHANGE: converted_amount may change for records with a non-null exchange_rate, as model logic now prioritizes exchange_rate value instead of home_total_amount / total_amount. |
v1.5.1
Documentation
- Corrects field documentation to match what's used in our models from
tax_rateandpurchase_ordertables.
v1.6.0
Schema/Data Changes
4 total changes • 1 possible breaking change
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
stg_quickbooks__customer_type | New model | BREAKING CHANGE: New staging model when the customer_type table is synced. | ||
stg_quickbooks__customer | New field | customer_type_id | ||
quickbooks__ap_ar_enhanced | New field | customer_type_name | Only populated if the customer_type table is synced. | |
quickbooks__expenses_sales_enhanced | New field | customer_type_name | Only populated if the customer_type table is synced in your connector. |
Feature Update
- For dbt Core users: Introduces
using_customer_typevariable to sync data from thecustomer_typesource table. See the README on how to configure this variable.
March 2026
v1.4.2
Bug Fixes
- With variable configuration now available in Quickstart, the
quickbooks__home_currencyvariable from the v1.1.1-a2 pre-release is now available across all 13 intermediate double-entry transaction models to optimize multi-currency handling. When the variable is set, transactions in the designated home currency will not apply exchange rate conversions onconverted_amount, improving accuracy. When left empty, all transactions will see exchange rate conversions applied. (PR #197)- Updates the README with instructions for configuring the
quickbooks__home_currencyvariable.
- Updates the README with instructions for configuring the
- Applies fixes in
int_quickbooks__sales_receipt_double_entrymodel to correctly referencequickbooks__global_tax_account_referenceandquickbooks__sales_tax_account_referencevariables. (PR #197) - Introduces the
partition_by_source_relationmacro to conditionally includesource_relationin window function PARTITION BY clauses only when multiple sources are configured via thequickbooks_union_schemasandquickbooks_union_databasesvariables. This resolves partition by constant expression errors on Redshift. See the README on how to leverage these variables. (PR #198)
Under the Hood
- Changes default
quickbooks__home_currencyvalue to empty string for easier understanding within Quickstart UI. (PR #197)
February 2026
v1.4.1
Schema/Data Change
1 total change • 0 possible breaking changes
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
quickbooks__general_ledger | running_balance and running_converted_balance logic update | Window function ordered by source_relation, transaction_date, account_id, class_id, transaction_id, transaction_index | Window function now orders by transaction_date, transaction_id, transaction_index | Removes redundant fields (source_relation, account_id, class_id) from ORDER BY clause as they are already in the PARTITION BY clause and do not affect ordering within each partition. These changes eliminate undeterministic behavior in the running balance calculations |
Under the Hood
Removes redundant source_relation field from ORDER BY clauses in window functions where this field was already included in the PARTITION BY clause for the following models:
int_quickbooks__bill_payment_double_entryint_quickbooks__credit_card_pymt_double_entryint_quickbooks__payment_double_entryint_quickbooks__transfer_double_entryint_quickbooks__general_ledger_balancesquickbooks__cash_flow_statement
January 2026
v1.3.1
PR #194 includes the following updates:
Under the Hood (Quickstart Update)
- Removes duplicative variables defined within the quickstart.yml.
v1.4.0
Schema/Data Change
4 total changes • 1 possible breaking change
| Data Model(s) | Change type | Old | New | Notes |
|---|---|---|---|---|
stg_quickbooks__bill | Column rename | due_date_at | due_date | Corrects naming since the datatype is date |
quickbooks__expenses_sales_enhanced | New columns | account_number, parent_account_number | Adds account number fields for easier account identification and grouping | |
quickbooks__general_ledger | New columns | period_first_day, period_last_day | Adds monthly period fields for easier period-based reporting without requiring joins to GL by period model | |
(analysis) quickbooks__income_statement_analysis | New columns | source_relation | Adds multi-source support |
Under the Hood
- Updates
int_quickbooks__general_ledger_date_spinedate generation logic to prevent errors during compilation. - Renames
analysis/directory toanalyses/for consistency with dbt naming conventions. - Corrects misspelling of
payed_to_account_idtopaid_to_account_idwithinint_quickbooks__bill_double_entrymodel. Note this does not result in a schema change.
October 2025
v1.0.0
Breaking Changes
Source Package Consolidation
- Removed the dependency on the
fivetran/quickbooks_sourcepackage.- All functionality from the source package has been merged into this transformation package for improved maintainability and clarity.
- If you reference
fivetran/quickbooks_sourcein yourpackages.yml, you must remove this dependency to avoid conflicts. - Any source overrides referencing the
fivetran/quickbooks_sourcepackage will also need to be removed or updated to reference this package. - Update any
quickbooks_source-scoped variables to be scoped to only under this package. See the README for how to configure the build schema of staging models.
- As part of the consolidation, vars are no longer used to reference staging models, and only sources are represented by vars. Staging models are now referenced directly with
ref()in downstream models.
Schema Updates
14 new models -- 14 potential breaking changes
NOTE: These models are not available to Quickstart users until we have validated tax lines work as expected. Please open a Fivetran support ticket if you'd like to try out the pre-release that contains tax line support. They are available for dbt Core customers only if you enable the appropriate variables (see the README for more details).
| Data Model | Change Type | Old Name | New Name | Notes |
|---|---|---|---|---|
stg_quickbooks__invoice_tax_line | New Staging Model | Source: invoice_tax_line table. Disabled by default, leverage using_invoice_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__journal_entry_tax_line | New Staging Model | Source: journal_entry_tax_line table. Disabled by default, leverage using_journal_entry_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__purchase_tax_line | New Staging Model | Source: purchase_tax_line table. Disabled by default, leverage using_purchase_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__refund_receipt_tax_line | New Staging Model | Source: refund_receipt_tax_line table. Disabled by default, leverage using_refund_receipt_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__sales_receipt_tax_line | New Staging Model | Source: sales_receipt_tax_line table. Disabled by default, leverage using_sales_receipt_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__tax_agency | New Staging Model | Source: tax_agency table. Disabled by default, leverage using_tax_agency variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__tax_rate | New Staging Model | Source: tax_rate table. Disabled by default, leverage using_tax_rate variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__invoice_tax_line_tmp | New Temp Model | Source: invoice_tax_line table. Enabled by default, leverage using_invoice_tax_line variable in dbt_project.yml to disable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__journal_entry_tax_line_tmp | New Temp Model | Source: journal_entry_tax_line table. Disabled by default, leverage using_journal_entry_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__purchase_tax_line_tmp | New Temp Model | Source: purchase_tax_line table. Disabled by default, leverage using_purchase_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__refund_receipt_tax_line_tmp | New Temp Model | Source: refund_receipt_tax_line table. Disabled by default, leverage using_refund_receipt_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__sales_receipt_tax_line_tmp | New Temp Model | Source: sales_receipt_tax_line table. Disabled by default, leverage using_sales_receipt_tax_line variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__tax_agency_tmp | New Temp Model | Source: tax_agency table. Disabled by default, leverage using_tax_agency variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) | ||
stg_quickbooks__tax_rate_tmp | New Temp Model | Source: tax_rate table. Disabled by default, leverage using_tax_rate variable in dbt_project.yml to enable. (Once available in a future update, this will be dynamically handled for Quickstart users.) |
Bug Fixes
- Corrected the
int_quickbooks__invoice_double_entrymodel to accurately map bundled invoice lines to the correctamount,converted_amount,account_id,index, andclass_id.
Under the Hood
- Updated seed files to ensure accurate representation of invoice bundles.
- Updated
run_models.shto execute for when the new variables are enabled. - Updated
general_ledger_amounts_matchintegrity test to properly validate general ledger amounts. - Excluded the
running_balanceandcumulative_running_balancevalues from theconsistency_general_ledgervalidation test as these results can change based on how the window function orders transactions on the same date.