Welcome to Zuora Product Documentation

Explore our rich library of product information

Creating usage records for Dynamic Pricing

Prepare usage records for Dynamic Pricing usage charges that are rated per record by including mapped Usage custom fields, excluding the reserved CustomerReference attribute, and aligning usage dates with the effective dates in the Dynamic Pricing decision table.

To prepare usage records for a Dynamic Pricing usage charge that is rated per record:

  1. Include Usage custom fields. Add columns to your usage file (or fields to your usage API payload) for all Usage custom fields that are mapped to pricing attributes.
    • Column names must match the Usage object custom field API names exactly, for example USAGETYPE__C, USAGESTATE__C.
    • These fields carry the "dynamic" attribute values that the rating engine will use to find the correct price.
  2. Respect the attribute mapping.

    In the product catalog, each pricing attribute used in the Dynamic Pricing decision table is mapped to a Usage custom field. The pricing attribute name in the decision table can differ from the Usage field API name; the mapping on the Context & Attributes page determines which Usage field feeds each attribute.

    When you build the usage file, make sure every "dynamic" attribute used in the decision table has a corresponding Usage custom field column populated in each record.

  3. Exclude CustomerReference from usage.
    If you use negotiated price tables for a dynamic pricing usage charge, Zuora populates the reserved CustomerReference attribute automatically when the subscription is created.
    • Do not include a CustomerReference column in the usage file.
    • Do not pass CustomerReference in usage APIs.
  4. Align usage dates with Dynamic Pricing effective dates. Ensure that each usage record's start date is on or after the effective date of the relevant rules in the Dynamic Pricing decision table.
    If the usage start date is earlier than any effective date in the table, the price lookup may fail or fall back to a default list price, depending on the catalog configuration.