Skip to content

Releases: fivetran/dbt_shopify

v0.17.0 dbt_shopify

18 Feb 18:11
df17e27
Compare
Choose a tag to compare

PR #100 includes the following updates:

Breaking Changes

  • In the source package, introduced the inventory_quantity source and the stg_shopify__inventory_quantity model to support downstream quantity tracking.
  • Updated model shopify__inventory_levels to add the following columns based on the quantity field from stg_shopify__inventory_quantity:
    • available_quantity
    • committed_quantity
    • damaged_quantity
    • incoming_quantity
    • on_hand_quantity
    • quality_control_quantity
    • reserved_quantity
    • safety_stock_quantity

Documentation

  • Added definitions for the new fields.

Under the Hood

  • Added seed inventory_quantity_data and macro get_inventory_quantity_columns to support the new inventory_quantity source.

Full Changelog: v0.16.1...v0.17.0

v0.16.1 dbt_shopify

05 Feb 18:01
0f418b6
Compare
Choose a tag to compare

PR #99 includes the following updates:

Bug Fixes

  • Updated the get_metafields macro to support multiple reference values, ensuring compatibility with both the Shopify GraphQL API (ex: 'PRODUCTVARIANT' from the product_variant source) and the deprecated REST API (previously 'variant' for product_variant). See the Shopify API docs for more information.
    • Updated reference_value parameter to reference_values to grab lists of reference values rather than a single string value. Now all records from stg_shopify__metafield are properly added to the relevant metafield models.
    • Added id_column parameter to explicitly specify what field in the staging model should be joined on to properly unpivot the metafields.

Under the Hood

  • Updated the shopify_metafield_data seed to validate the functionality of the get_metafields macro, ensuring it correctly retrieves metafield data for all supported reference values.

Full Changelog: v0.16.0...v0.16.1

v0.16.0 dbt_shopify

23 Jan 00:16
d9df704
Compare
Choose a tag to compare

This release includes the following updates:

Bug Fixes

  • Removed incremental logic in the following end models (PR #97):
    • shopify__discounts
    • shopify__order_lines
    • shopify__orders
    • shopify__transactions
  • Incremental strategies were removed from these models due to potential inaccuracies from incremental runs. For instance, the new_vs_repeat field in shopify__orders could produce incorrect results during incremental runs. To ensure consistency, this logic was removed across all warehouses. If the previous incremental functionality was valuable to you, please consider opening a feature request to revisit this approach.

Upstream Under-the-Hood Updates from shopify_source Package

  • (Affects Redshift only) Creates new shopify_union_data macro to accommodate Redshift's treatment of empty tables.
    • For each staging model, if the source table is not found in any of your schemas, the package will create a table with one row with null values for Redshift destinations. There will be no change in behavior in non-Redshift warehouses.
    • This is necessary as Redshift will ignore explicit data casts when a table is completely empty and materialize every column as a varchar. This throws errors in downstream transformations in the shopify package. The 1 row will ensure that Redshift will respect the package's datatype casts.

Documentation

  • Added Quickstart model counts to README. (PR #96)
  • Corrected references to connectors and connections in the README. (PR #96)

Full Changelog: v0.15.0...v0.16.0

v0.15.0 dbt_shopify

07 Jan 23:55
35b21ab
Compare
Choose a tag to compare

PR #94 includes the following updates:

Breaking Changes

  • Updated columns with the connector changes released on January 6, 2025. See the release notes for more details.

  • In the shopify__inventory_levels model, replaced the cost column with:

    • unit_cost_amount
    • unit_cost_currency_code
  • Added the following columns to models:

    • shopify__inventory_levels:
      • duplicate_sku_count
      • harmonized_system_code
      • inventory_history_url
      • legacy_resource_id
      • measurement_id
      • measurement_weight_value
      • measurement_weight_unit
      • is_tracked_editable_locked
      • tracked_editable_reason
    • shopify__inventory_levels and shopify__order_lines:
      • variant_is_available_for_sale
      • variant_display_name
      • variant_legacy_resource_id
      • variant_has_components_required
      • variant_sellable_online_quantity
  • Additionally, new columns were added in the upstream package. For more details, see the dbt_shopify_source v0.14.0 release notes.

  • Marked the following columns as deprecated in the documentation. These columns will return null values following the connector update, and customers should expect this behavior until the columns are fully removed in a future release.

    • shopify__inventory_levels:
      • available_quantity
      • is_shipping_required
      • variant_fulfillment_service
      • variant_grams
      • variant_inventory_management
      • variant_option_1
      • variant_option_2
      • variant_option_3
      • variant_weight
      • variant_weight_unit
    • shopify__order_lines:
      • variant_fulfillment_service
      • variant_grams
      • variant_inventory_management
      • variant_option_1
      • variant_option_2
      • variant_option_3
      • variant_weight
      • variant_weight_unit

Under the Hood

  • Updated shopify_*_data seed data to include new columns for the following tables:
    • inventory_item
    • inventory_level
    • product_image
    • product_variant

Full Changelog: v0.14.0...v0.15.0

v0.14.0 dbt_shopify

02 Dec 21:47
295a919
Compare
Choose a tag to compare

PR #92 includes the following updates:

Breaking Changes

  • Adds enable/disable config for the metadata staging model using the shopify_using_metafield variable (default true).
    • This variable is now a requirement for all shopify__x_metafield models.
  • Adds enable/disable config for the abandoned_checkout staging models using the shopify_using_abandoned_checkout variable (default true):
    • stg_shopify__abandoned_checkout

    • stg_shopify__abandoned_checkout_discount_code

    • stg_shopify__abandoned_checkout_shipping_line.

    • Disabling shopify_using_abandoned_checkout will also disable the int_shopify__daily_abandoned_checkouts and int_shopify__discounts__abandoned_checkouts intermediate models, in addition to disabling abandoned_checkout references in end models (including shopify__daily_shop, shopify__customers, shopify__customer_emails, shopify__customer_email_cohorts, shopify__customer_cohorts, and shopify__discounts).

  • For more information on how to enable/disable these tables, refer to the README. This will be a breaking change if you choose to disable these tables.

Full Changelog: v0.13.2...v0.14.0

v0.13.2 dbt_shopify

21 Oct 20:09
903e562
Compare
Choose a tag to compare

PR #89 includes the following changes:

Bug Fixes

  • Fixed an issue where the shopify__customers model incorrectly displayed NULL values for the customer_tags field for customers without orders. Updated the logic to ensure customer tags are retrieved even if no orders have been placed for that customer.

Under the Hood

  • Updated seed data to include customers without orders, verifying that their tags are correctly pulled through.
  • Added consistency and integrity tests for the shopify__customers model to ensure accurate handling of customer tags for all customers.

Full Changelog: v0.13.1...v0.13.2

v0.13.1 dbt_shopify

27 Aug 23:38
470b8da
Compare
Choose a tag to compare

PR #87 includes the following changes:

Bug Fixes

  • Coalesces the backfill_lifetime_sums fields from incremental loads, as well as cohort_month_number in the rare cases there are no orders from an incremental period. This fixes the issue of NULL values in the lifetime columns in shopify__customer_cohorts table. (PR #86).
  • UPDATE: For those customers experiencing erroneous NULL values previously, a --full-refresh should correct these issues and populate the proper values.

Under the Hood:

  • Added consistency and integrity tests within integration_tests for the shopify__customer_cohorts model. (PR #87).

Contributors

Full Changelog: v0.13.0...v0.13.1

v0.13.0 dbt_shopify

14 Aug 19:55
3888e08
Compare
Choose a tag to compare

PR #83 includes the following changes:

Features

  • Addition of the shopify__line_item_enhanced model. This model constructs a comprehensive, denormalized analytical table that enables reporting on key revenue, customer, and product metrics from your billing platform. It’s designed to align with the schema of the *__line_item_enhanced model found in Shopify, Recharge, Stripe, Zuora, and Recurly, offering standardized reporting across various billing platforms. To see the kinds of insights this model can generate, explore example visualizations in the Fivetran Billing Model Streamlit App. Visit the app for more details.
    • This model is currently disabled by default. You may enable it by setting the shopify__standardized_billing_model_enabled as true in your dbt_project.yml.

Under the Hood:

  • Added consistency test within integration_tests for the stripe__line_item_enhanced model.

Full Changelog: v0.12.2...v0.13.0

v0.12.2 dbt_shopify

15 Jul 20:09
b259fe9
Compare
Choose a tag to compare

PR #84 includes the following changes:

Feature

  • Introduced the variable shopify__calendar_start_date to shopify__calendar to allow for the start date to be customized. This can be set in your dbt_project.yml. If not used, the default will start at 2019-01-01. See the README for more details.

Full Changelog: v0.12.1...v0.12.2

v0.12.1 dbt_shopify

11 Jun 21:31
9dc9de3
Compare
Choose a tag to compare

🪲 Bug Fixes 🪛

  • Added support for a new delayed fulfillment event status from Shopify. This produces a new count_fulfillment_delayed field in the shopify__daily_shop model (PR #81).

🚘 Under the Hood 🚘

  • Added validation tests to be used by package maintainers to evaluate the consistency and integrity of subsequent model updates (PR #82).

Contributors

Full Changelog: v0.12.0...v0.12.1