Releases: fivetran/dbt_quickbooks
Releases · fivetran/dbt_quickbooks
v0.17.0 dbt_quickbooks
PR #146 introduces the following updates:
Breaking Changes
- Introduced the following fields in the
quickbooks__general_ledger
model to better analyze real-time transaction data::created_at
: The time a transaction was first created.updated_at
: The time a transaction was last updated.- Updated the
*_double_entry
models to add these fields for each transaction type.
- This is a breaking change as this adds new fields to the existing schema.
Full Changelog: v0.16.0...v0.17.0
v0.17.0-a1 dbt_quickbooks
Bug Fix
- Updated the logic in
int_quickbooks__retained_earnings
to ensure accounting periods with no revenue and expense class lines were accounted for.- This will ensure the net income adjustment is available regardless of existing revenue or expenses.
Full Changelog: v0.16.0...v0.17.0-a1
v0.16.0 dbt_quickbooks
PR #143 introduces the following updates:
Upstream Source Package Updates
- Deleted records have been previously been brought into the
dbt_quickbooks
package. To ensure accuracy in reporting, the following updates were made in the v0.11.0 release ofdbt_quickbooks_source
: - We introduced the
_fivetran_deleted
field to filter out deleted records from the following staging models:stg_quickbooks__account
stg_quickbooks__bundle
stg_quickbooks__customer
stg_quickbooks__department
stg_quickbooks__item
stg_quickbooks__vendor
- Since filtering out deleted records that were previously being counted impact all output models, this is being treated as a breaking change.
Documentation update
- Added the
_fivetran_deleted
field to the above corresponding seed files in integration tests.
Under The Hood
- Updated the
consistency_*_amounts
tests to include theconverted_amount
comparisons. They were previously commented out due to introducing multicurrency support in a previous release that would have led to test failures, but can now be brought in to properly validate these changes.
Full Changelog: v0.15.0...v0.16.0
v0.15.0 dbt_quickbooks
PR #142 introduces the following updates:
Bug Fixes
- Updates the
int_quickbooks__sales_receipt_double_entry
model to prioritize theinvoice_lines.sales_item_account_id
as the second viable option in theaccount_id
coalesce statements. This field was previously prioritized last. However, recent observations have made it apparent that when prioritized last, invoice transactions could be attributed to the wrong accounts.- While not a traditional breaking change, we made this a minor upgrade to account for scenarios where the end model results will likely change due to invoices being attributed to the correct accounts.
Full Changelog: v0.14.1...v0.15.0
v0.14.1 dbt_quickbooks
PR #138 introduces the following updates:
Bug Fixes
- Added
nullif
logic to account for "divide by zero" errors inint_quickbooks__deposit_double_entry
andint_quickbooks__deposit_transactions
for whentotal_amount
values from thedeposit
source table
are zero.
Under the Hood
- Added integrity test
deposit_ledger_amounts_match
within integration tests to compare deposit amounts betweenint_quickbooks__deposit_double_entry
and deposittransaction_type
values inquickbooks__general_ledger
. - Modified seed files in
integration_tests
to reproduce issue and confirm fixes.
Full Changelog: v0.14.0...v0.14.1
v0.14.0 dbt_quickbooks
New major feature alert! Multicurrency is here!
🚨 Breaking Changes 🚨
Feature Updates: Multicurrency Support
- We have introduced multicurrency support to the following models by providing these new fields that convert transaction amounts by their exchange rates. (PR #134)
- IMPORTANT: We do not yet have proper
converted_amount
values for credit card payments and transfers. Currently it is being brought in as the equivalent ofamount
, so you might see slight discrepancies if need these values converted as well. Please open an issue with us to help work with us to support this feature. - We have kept the existing cash value fields that provides amounts and balances to ensure full coverage to customers regardless of their currency setup. (PR #134)
- The new multicurrency fields that fulfill the same function as the respective existing fields is below:
Model | New Multicurrency Fields | Respective Single Currency Fields |
---|---|---|
quickbooks__general_ledger | adjusted_converted_amount , running_converted_balance |
adjusted_amount , running_balance |
quickbooks__general_ledger_by_period | period_net_converted_change , period_beginning_converted_balance , period_ending_converted_balance |
period_net_change , period_beginning_balance , period_ending_balance |
quickbooks__profit_and_loss | converted_amount |
amount |
quickbooks__balance_sheet | converted_amount |
amount |
quickbooks__cash_flow_statement | cash_converted_ending_period , cash_converted_beginning_period , cash_converted_net_period |
cash_ending_period , cash_beginning_period , cash_net_period |
quickbooks__ap_ar_enhanced | total_converted_amount , estimate_total_converted_amount , total_current_converted_payment |
total_amount , estimate_total_amount , total_current_payment |
quickbooks__expenses_sales_enhanced | total_converted_amount , converted_amount |
total_amount , amount |
- Introduced
*_converted_*
type fields in our intermediate models to convert amounts where exchange rates exist for those transactions. If there is no exchange rate, these*_converted_*
fields will default back to the already existing fields created for single currency, and all downstream calculations should match the single currency amount, balance and cash values. (PR #134) - For double-entry models that applied a cross-join to either AP/AR accounts, we are now mapping those accounts based on the
currency_id
value in theaccounts
source table for those transactions. (PR #134) - In the
analysis
folder, added theconverted_balance
to thequickbooks__balance_sheet
andending_converted_balance
to thequickbooks__income_statement
models. (PR #134)
Bug Fixes
- Adjusted logic for discount sales receipt lines in
int_quickbooks__sales_receipt_double_entry
model to bring in these values properly as negative adjusted amounts in thequickbooks__general_ledger
.
(PR #130) - Applied filter in
int_quickbooks__invoice_double_entry
to filter out 'Accounts Receivable' accounts that are inactive. (PR #134)
Under the Hood
- Added consistency and integrity tests within integration tests for all end models. (PR #130) & (PR 134)
- Appended
using_credit_card_payment_txn
check inget_enabled_unioned_models
macro tofalse
to match consistency of how the variable is defined throughout our Quickbooks models by default.
Documentation Update
- Updated README to reflect the new multicurrency support. (PR #134)
- Added yml documentation with the new multicurrency fields and descriptions. (PR #134)
Contributors
Full Changelog: v0.13.1...v0.14.0
v0.13.1 dbt_quickbooks
PR #125 includes the following updates:
Bug Fix
- The
period_first_day
andperiod_last_day
fields were mistakenly left out in the quickbooks__profit_and_loss model although they were intended to be introduced as new fields in the v0.13.0 release. We have added these fields into the model.
Full Changelog: v0.13.0...v0.13.1
v0.13.0 dbt_quickbooks
PR #124 includes the following updates:
🚨 Breaking Changes 🚨:
- Updates the int_quickbooks__invoice_join and downstream quickbooks__ap_ar_enhanced models to include and require the
using_payments
config. Previously, these models would fail if thepayment
or thepayment_line
source tables did not exist. - Corrects the misspelled
customer_vendor_webiste
field tocustomer_vendor_website
inquickbooks__ap_ar_enhanced
.
Bug Fixes
- Updates the logic for the
amount
field in int_quickbooks__invoice_double_entry to useinvoice.total_amount
only on the condition when a bundle is associated with the invoice andinvoice.total_amount
is 0, otherwiseinvoice_lines.amount
is used.- This avoids double counting when aggregating invoice_line items and accounts for the edge cases where a bundle_id is involved.
Feature Updates
- Updates the quickbooks__profit_and_loss and quickbooks__balance_sheet models to include both
period_first_day
andperiod_last_day
in addition tocalendar_date
. This allows users to have greater flexibility in choosing which date to aggregate records upon.- Please note
calendar_date
is slated to be deprecated, and the fieldsperiod_first_day
andperiod_last_day
are both offered as replacements, depending on how your company performs their financial reporting.
- Please note
Full Changelog: v0.12.4...v0.13.0
v0.12.4 dbt_quickbooks
PR #123 includes the following updates:
Bug Fixes
- Added
source_relation
to joins within the following models as it was previously missed:int_quickbooks__invoice_join
int_quickbooks__bill_join
int_quickbooks__refund_receipt_double_entry
int_quickbooks__sales_receipt_double_entry
quickbooks__balance_sheet
analysis model.
Contributors
Full Changelog: v0.12.3...v0.12.4
v0.12.3 dbt_quickbooks
PR #119 includes the following updates:
Bug Fixes
- Included a default start and end date in the
int_quickbooks__general_ledger_date_spine
logic when generating the date spine. These default start and end dates will ensure the model still succeeds when no transactions are yet available.- The default start date will be one month in the past
- The default end date will be the current date
Under the Hood
- Updated the maintainer PR template to resemble the most up to date format.
- Removed the check docs GitHub Action as it is no longer necessary.
Full Changelog: v0.12.2...v0.12.3