Breaking Change - Potential Change in Values May Impact Downstream Queries
- The aggregated net, gross, sale, charge, refund, and fee amount-based fields in
stripe__daily_overview
andstripe__customer_overview
now reflect the raw smallest units (e.g., cents), following Stripe's raw data, instead of converted dollar amounts. This change standardizes values across all models.- Customers using these models should note that the values will appear inflated compared to the previous dollar-based representation.
- The cent-to-dollar conversion has been moved upstream and is now controlled by a new variable:
stripe__convert_values
which is disabled by default. - See the below Feature Update notes for more context behind these changes and for detailed setup instructions, see the README.
Feature Update: Optional Conversion to Major Units
Stripe passes amount-based fields, such as amount
, net
, and fee
, in the smallest denomination as raw form. This means, if your currency has minor and major units such as USD, 100 represents 100 cents, the minor unit, or 1 USD, the major unit. Alternatively, if your currency doesn't use minor units such as JPY, 100 represents 100 JPY.
- This PR introduces a variable
stripe__convert_values
(disabled by default) upstream in the staging models which allows users the option to divide all amount-based fields by 100.- For information on how to enable the division, refer to the README on configuring the
stripe__convert_values
variable. - Otherwise, amount-based fields will be brought through in their raw form.
- Examples of currencies using minor units (in which enabling
stripe__convert_values
is relevant) include United States Dollar (USD), Euro (EUR), and the Canadian Dollar (CAD). - Examples of currencies NOT using minor units (in which it makes more sense to keep the amount-based fields in raw form) include Japanese Yen (JPY), Indonesian Rupiah (IDR), and Korean Won (KRW).
- For information on how to enable the division, refer to the README on configuring the
Notes
- This update is not providing multiple currency support; however, we're interested in exploring this functionality if there's a need. As such, we have created a feature request to support multiple currencies where you are welcome to provide feedback or contribute to the discussion.
Under the Hood
- Updated the
run_models.sh
script to test for whenstripe__convert_values
is set to True. - Added a consistency test for
stripe__customer_overview
.
Documentation
- Updated the descriptions for all amount-based fields to specify the grain of the values and add information about the
stripe__convert_values
variable. - Added Quickstart model counts to README. (#103)
- Corrected references to connectors and connections in the README. (#103)
Full Changelog: v0.15.1...v0.16.0