Skip to content
Merged
Show file tree
Hide file tree
Changes from 45 commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
4c6bbef
feature/new_union_macro_metadata_fields_and_variable_configs
fivetran-savage Jan 27, 2026
ecf0a8e
add_variable_configs_to_downstream_models
fivetran-savage Jan 28, 2026
9fdebec
add_charge_medatada_fields_to_end_model
fivetran-savage Jan 28, 2026
30a7a52
add_union_macro_files
fivetran-savage Jan 29, 2026
41b2a9b
add_union_macro_files
fivetran-savage Jan 29, 2026
aa8992c
add_metadata_macro
fivetran-savage Feb 4, 2026
5909cde
update_charge_seed_column
fivetran-savage Feb 4, 2026
0ebd3b3
update_integration_test_seed_column_definitions
fivetran-savage Feb 5, 2026
6a73071
add_seed_column_details
fivetran-savage Feb 5, 2026
9e78db2
sdd_column_definitions
fivetran-savage Feb 5, 2026
6276501
update_ci_folder
fivetran-savage Feb 5, 2026
d99a38c
update_changelog_and_readme
fivetran-savage Feb 5, 2026
33775f9
update_column_definitions
fivetran-savage Feb 5, 2026
6aca2b5
add_coupon_to_yml
fivetran-savage Feb 5, 2026
893cb47
update_quickstart_yml
fivetran-savage Feb 9, 2026
3d4bafd
change_macro_link
fivetran-savage Feb 10, 2026
2eca5b8
add_transfers_var_config
fivetran-savage Feb 10, 2026
20a289a
update_readme
fivetran-savage Feb 10, 2026
a20ba3d
change_order_of_tests
fivetran-savage Feb 10, 2026
9fd63b2
add_vars_to_int_models
fivetran-savage Feb 10, 2026
81e4914
adjust_jinja
fivetran-savage Feb 10, 2026
3c6b49f
update_readme
fivetran-savage Feb 10, 2026
a63f8ae
restore_changelog_history
fivetran-savage Feb 10, 2026
b261218
Restore changelog history
fivetran-savage Feb 10, 2026
fc48a1f
Apply suggestions from code review
fivetran-savage Feb 11, 2026
4e7276c
Update README
fivetran-savage Feb 11, 2026
eb0b847
Update CHANGELOG
fivetran-savage Feb 11, 2026
037132d
Update CHANGELOG.md
fivetran-savage Feb 11, 2026
388e289
Update CHANGELOG.md
fivetran-savage Feb 11, 2026
89a843f
Update CHANGELOG.md
fivetran-savage Feb 11, 2026
87d5a6e
Update macros/select_metadata_columns.sql
fivetran-savage Feb 11, 2026
a896abd
Apply suggestions from code review
fivetran-savage Feb 11, 2026
14c9fae
Update README
fivetran-savage Feb 11, 2026
385f4dd
Generate dbt docs via GitHub Actions
github-actions[bot] Feb 11, 2026
90ee3d2
Apply suggestions from code review
fivetran-savage Feb 12, 2026
1dd6061
Update CHANGELOG
fivetran-savage Feb 12, 2026
73e539d
Apply suggestions from code review
fivetran-savage Feb 12, 2026
dc330d3
Remove select_metadata_columns macro from customer_overview
fivetran-savage Feb 12, 2026
49688cd
Update indentation
fivetran-savage Feb 12, 2026
b6fa2ec
Enhance CHANGELOG with model and Quickstart updates
fivetran-savage Feb 12, 2026
80eaf64
Update CHANGELOG.md
fivetran-savage Feb 12, 2026
f7fc894
Apply suggestions from code review
fivetran-savage Feb 12, 2026
55d143e
Fix indentation
fivetran-savage Feb 12, 2026
d9ee75b
update_changelog
fivetran-savage Feb 12, 2026
850761c
Update CHANGELOG.md
fivetran-savage Feb 12, 2026
a65fc5f
Apply suggestions from code review
fivetran-savage Feb 12, 2026
b010bba
Generate dbt docs via GitHub Actions
github-actions[bot] Feb 12, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .buildkite/scripts/run_models.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ dbt seed --target "$db" --full-refresh
dbt source freshness --target "$db" || echo "...Only verifying freshness runs…"
dbt run --target "$db" --full-refresh
dbt test --target "$db"
dbt run --vars '{stripe__using_invoices: false, stripe__using_payment_method: false, stripe__using_subscriptions: false, stripe_timezone: "America/New_York", stripe__using_subscription_history: false, stripe__using_price: false, stripe__convert_values: true, stripe__using_credit_notes: true, stripe__standardized_billing_model_enabled: false}' --target "$db"
dbt run --vars '{stripe__using_payouts: false, stripe__using_transfers: false, stripe__using_invoices: false, stripe__using_payment_method: false, stripe__using_subscriptions: false, stripe_timezone: "America/New_York", stripe__using_subscription_history: false, stripe__using_price: false, stripe__convert_values: true, stripe__using_credit_notes: true, stripe__standardized_billing_model_enabled: false}' --target "$db"
dbt test --target "$db"
dbt run --vars '{stripe__using_invoices: true, stripe__using_payment_method: false, stripe__using_subscriptions: false, stripe_timezone: "America/New_York", stripe__using_subscription_history: false, stripe__using_price: false, stripe__convert_values: true, stripe__using_credit_notes: true, stripe__standardized_billing_model_enabled: true}' --target "$db"
dbt run --vars '{stripe__using_payouts: false, stripe__using_invoices: true, stripe__using_payment_method: false, stripe__using_subscriptions: false, stripe_timezone: "America/New_York", stripe__using_subscription_history: false, stripe__using_price: false, stripe__convert_values: true, stripe__using_credit_notes: true, stripe__standardized_billing_model_enabled: true}' --target "$db"
Comment thread
fivetran-avinash marked this conversation as resolved.
dbt test --target "$db"

dbt run-operation fivetran_utils.drop_schemas_automation --target "$db"
22 changes: 21 additions & 1 deletion .quickstart/quickstart.yml
Comment thread
fivetran-savage marked this conversation as resolved.
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ table_variables:
stripe__using_credit_notes:
- credit_note_line_item
- credit_note
stripe__using_transfers:
- transfer
stripe__using_payouts:
Comment thread
fivetran-savage marked this conversation as resolved.
- payout
- payout_balance_transaction
stripe__using_coupons:
- coupon

Expand Down Expand Up @@ -47,9 +52,24 @@ public_models: [
supported_vars:
stripe__customer_metadata:
type: dictionary
description: "`CUSTOMER.metadata` properties that will be pivoted into columns in `stripe__customer_overview`"
description: "`customer.metadata` properties that will be pivoted into columns in `stripe__customer_overview`, `stripe__balance_transactions`, `stripe__invoice_details`, and `stripe__subscription_details`."
display_name: "Customer Metadata Properties"

stripe__charge_metadata:
type: dictionary
description: "`charge.metadata` properties that will be pivoted into columns in `stripe__balance_transactions` and `stripe__invoice_details`."
display_name: "Charge Metadata Properties"

stripe__invoice_metadata:
type: dictionary
description: "`invoice.metadata` properties that will be pivoted into columns in `stripe__invoice_details` and `stripe__balance_transactions`."
display_name: "Invoice Metadata Properties"

stripe__subscription_metadata:
type: dictionary
description: "`subscription.metadata` properties that will be pivoted into columns in `stripe__subscription_details`, `stripe__balance_transactions`, `stripe__invoice_line_item_details`, and `stripe__invoice_details`."
display_name: "Subscription Metadata Properties"

stripe__convert_values:
type: boolean
value: false
Expand Down
44 changes: 42 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,45 @@
# dbt_stripe v1.5.0

## Schema Changes
**2 total changes • 1 possible breaking change**
| **Data Model** | **Change type** | **Old** | **New** | **Notes** |
| -------------- | --------------- | ------------ | ------------ | --------- |
| All models | Single-connection `source_relation` value | Empty string (`''`) | `<stripe_database>.<stripe_schema>` | |
Comment thread
fivetran-savage marked this conversation as resolved.
| `stg_stripe__coupon` | New column | | `metadata` | optional custom JSON field |

## Feature Updates
- Adds configurable table variables `stripe__using_transfers` and `stripe__using_payouts`, which are set to true by default. For dbt Core users, [See the README](https://github.com/fivetran/dbt_stripe?tab=readme-ov-file#disable-models-for-non-existent-sources) for more details on how to disable these variables.
- `stripe__using_transfers` disables the Transfers source and any relevant downstream components.
- `stripe__using_payouts` disables both the Payouts and Payout Balance Transactions sources, along with any related downstream components.
- Introduces support for the newer, more flexible unioning framework. Previously, to run the package on multiple Stripe sources at once, you could only use the `union_schemas` variable OR `union_databases` (mutually exclusive). While these setups are still supported for backwards compatibility, we recommend using `stripe_sources` instead. See the [README](https://github.com/fivetran/dbt_stripe/blob/main/README.md#option-b-union-multiple-connections) for more details.

Comment thread
fivetran-savage marked this conversation as resolved.
```yml
# dbt_project.yml

vars:
stripe:
stripe_sources:
- database: connection_1_destination_name # Required
schema: connection_1_schema_name # Required
name: connection_1_source_name # Required only if following this step: https://github.com/fivetran/dbt_stripe/blob/main/README.md#recommended-incorporate-unioned-sources-into-dag

- database: connection_2_destination_name
schema: connection_2_schema_name
name: connection_2_source_name
```
- Updates end models (`stripe__balance_transactions`, `stripe__customer_overview`, `stripe__invoice_details`, `stripe__invoice_line_item_details`, `stripe__subscription_details`) to dynamically include metadata fields from staging models when metadata variables are configured. See the [README](https://github.com/fivetran/dbt_stripe/blob/main/README.md#pivoting-out-metadata-properties) for more details.

## Quickstart Updates
- Creates table variables for sources `transfer`,`payout`, and `payout_balance_transactions`. These source tables must be selected in the Fievetran connector UI for the variables to be set to True and the dependent models to be run.
Comment thread
fivetran-savage marked this conversation as resolved.
Outdated
- Adds `stripe__charge_metadata`, `stripe__invoice_metatdata`, and `stripe__subscription_metadata` to `supported_vars` as optional properties to be pivoted into columns in various end models. These variables can be configured directly through the `supportedVars` section in the Quickstart UI.
Comment thread
fivetran-savage marked this conversation as resolved.
Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There were significant changes made to Quickstart, let's add an additional section below Feature Updates documenting those changes.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added. Let me know what you think.

## Under the Hood
- Updates all tmp staging models to conditionally use either the new `stripe_union_connections` macro (when `stripe_sources` is configured) or the legacy `fivetran_utils.union_data` macro (for backward compatibility).
- Updates all staging models to use the new `stripe.apply_source_relation()` macro instead of `fivetran_utils.source_relation()`.
Comment thread
fivetran-savage marked this conversation as resolved.
- Adds `stripe.select_metadata_columns()` macro to handle both dictionary and alias variable metadata inputs.
- Adds `metadata` column to `get_coupon_columns()` macro and `coupon_data.csv` seed file.
Comment thread
fivetran-savage marked this conversation as resolved.
- Updates integration test seed data for customer and invoice tables.

# dbt_stripe v1.4.0
[PR #138](https://github.com/fivetran/dbt_stripe/pull/138) includes the following updates:

Expand Down Expand Up @@ -423,8 +465,6 @@ Stripe passes amount-based fields, such as `amount`, `net`, and `fee`, in the sm
- Updated `customer_facing_amount` to include for refunds and disputes as well
- Updated `charge_id` to charge, refund, then dispute objects consecutively



## Under the Hood:

- Incorporated the new `fivetran_utils.drop_schemas_automation` macro into the end of each Buildkite integration test job.
Expand Down
Loading