-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FOCUS #314: SKU ID, SKU Price ID and SKU Price Details clarification #676
base: working_draft
Are you sure you want to change the base?
Conversation
|
||
The SkuPriceId column adheres to the following requirements: | ||
|
||
* SkuPriceId MUST be present in a [*FOCUS dataset*](#glossary:FOCUS-dataset) when the provider publishes a SKU price list and MUST be of type String. | ||
* SkuPriceId MUST define a single unit price used for calculating the charge. | ||
* [ListUnitPrice](#listunitprice) MUST be associated with the SkuPriceId in the provider published price list. | ||
* SkuPriceId MUST define a single unit price used for calculating the charge, reflecting a stable grouping of core properties of a SKU Price while excluding fluctuations in dynamic or negotiable properties such as unit price amount, currency, temporal validity (e.g., effective dates), and contract- or negotiation-specific elements. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This feels like a lot to put into this one requirement. Can we break it into 2?
* SkuPriceId MUST define a single unit price used for calculating the charge, reflecting a stable grouping of core properties of a SKU Price while excluding fluctuations in dynamic or negotiable properties such as unit price amount, currency, temporal validity (e.g., effective dates), and contract- or negotiation-specific elements. | |
* SkuPriceId MUST define a single unit price used for calculating the charge, reflecting a stable grouping of core properties of a SKU Price. | |
* SkuPriceId MUST be consistent across dynamic or negotiable properties for a specific provider such as unit price amount, currency, temporal validity (e.g., effective dates), and contract- or negotiation-specific elements (e.g., billing account). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about this:
- SkuPriceId MUST NOT reflect (or be influenced/affected by) dynamic or negotiable properties such as unit price amount, currency, temporal validity (e.g., effective dates), and contract- or negotiation-specific elements (e.g., billing account).
Co-authored-by: Michael Flanakin <flanakin@users.noreply.github.com>
A SKU ID is a unique identifier that defines a provider-supported construct for organizing properties that are common across one or more [*SKU Prices*](#glossary:sku-price). SKU ID can be referenced on a catalog or [*price list*](#glossary:price-list) published by a provider to look up detailed information about the SKU. The composition of the properties associated with the SKU ID may differ across providers. Some providers may not support the [*SKU*](#glossary:sku) construct and instead associate all such properties directly with the *SKU Price*. SKU ID is commonly used for analyzing cost based on *SKU*-related properties above the pricing constructs. | ||
|
||
PROPOSED: | ||
A SKU ID is a provider-specified unique identifier that represents a specific [*SKU*](#glossary:sku) (e.g., billable good or service offering) that can be used or purchased. Each SKU ID represents specific functionality and technical specifications of a single *SKU* that are common across one or more [*SKU Prices*](#glossary:sku-price). SKU ID is consistent across different billing accounts, pricing models (e.g., flat-rate, tiered, committed, spot pricing), and regions for a single provider to facilitate price comparisons for the same functionality, regardless of where the functionality is provided or how it's paid for. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit:
Consider 'quantifiable/measurable/trackable' instead of 'billable' since some charges (e.g., committed charges) are not necessarily billable.
I understand that this column does not define what is billable and what is not, so 'billable' is not necessarily incorrect - I just prefer 'quantifiable' 😄
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider mentioning that SKUs are priced, tracked, measured, and billed, rather than used or purchased.
We don't directly use or purchase SKUs; rather, we interact with resources and services, while SKUs represent specific elements of those resources and services that are priced, tracked, measured, and eventually billed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A SKU ID is a provider-specified unique identifier that represents a specific [*SKU*](#glossary:sku) (e.g., billable good or service offering) that can be used or purchased. Each SKU ID represents specific functionality and technical specifications of a single *SKU* that are common across one or more [*SKU Prices*](#glossary:sku-price). SKU ID is consistent across different billing accounts, pricing models (e.g., flat-rate, tiered, committed, spot pricing), and regions for a single provider to facilitate price comparisons for the same functionality, regardless of where the functionality is provided or how it's paid for. | |
A SKU ID is a provider-specified unique identifier that represents a specific [*SKU*](#glossary:sku) (e.g., measurable good or service offering) that can be used or purchased. Each SKU ID represents specific functionality and technical specifications of a single *SKU* that are common across one or more [*SKU Prices*](#glossary:sku-price). SKU ID is consistent across different billing accounts, pricing models (e.g., flat-rate, tiered, committed, spot pricing), and regions for a single provider to facilitate price comparisons for the same functionality, regardless of where the functionality is provided or how it's paid for. |
- SkuId should be the same no matter how the billing account is configured | ||
- SkuId should support comparing before/after negotiations | ||
- SkuId should support comparing with a public/retail price list |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These also apply to both SkuPriceId and SkuPriceDetails, right?
@@ -1,12 +1,12 @@ | |||
# SKU Price ID | |||
|
|||
A SKU Price ID is a unique identifier that defines the unit price used to calculate the charge. SKU Price ID can be referenced on a [*price list*](#glossary:price-list) published by a provider to look up detailed information, including a corresponding list unit price. The composition of the properties associated with the SKU Price ID may differ across providers. SKU Price ID is commonly used for analyzing cost based on pricing properties such as Terms and Tiers. | |||
A SKU Price ID is a unique identifier that defines the unit price used to calculate the charge. It can serve as a key reference to a [*price list*](#glossary:price-list) published by a provider, allowing practitioners to look up detailed information, including the associated list unit prices and pricing properties. Although the composition of properties associated with the SKU Price ID may differ across providers, the SKU Price ID is designed to represent the core, stable properties of a [*SKU Price*](#glossary:sku-price), excluding dynamic or negotiable properties such as unit price amount, currency (and related exchange rates), temporal validity (e.g., effective dates), and contract- or negotiation-specific elements (e.g., contract or account identifiers, and negotiable discounts). This ensures that the SKU Price ID remains consistent across different pricing scenarios, even though variable aspects (e.g., unit price, currency, effective dates) might fluctuate, facilitating the filtering of charges with the same stable SKU Price properties and allowing for tracking price fluctuations (e.g., changes in unit price amount) over time — for both list and contracted unit prices. The SKU Price ID is also commonly used to analyze costs based on pricing properties such as terms and tiers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I prefer this:
A SKU Price ID is a provider-specified unique identifier that represents the core, stable properties of a SKU Price, excluding fluctuations in dynamic or negotiable properties such as unit price amount, currency, temporal validity (e.g., effective dates), and contract- or negotiation-specific elements.
over this:
A SKU Price ID is a unique identifier that defines the unit price used to calculate the charge.
If we proceed in this direction, I’ll need to adjust the rest accordingly, including the normative requirements.
Additionally, we must not forget to update the glossary.
This PR provides clarification on the specifications, purpose, and guidance for the following columns:
ensuring a better understanding and consistent usage of these columns across providers.