Skip to main content

Create product charge definitions

Zuora

Create product charge definitions

A charge definition contains the context that determines the charge behavior. You can create as many charge definitions as needed for a specific charge either from the UI or through Zuora REST API. 

Before you start, ensure that the prerequisite is satisfied and you understand the inheritance logic between the default charge definition and other definitions.

Prerequisite

Ensure that the target product rate plan charge exists in your product catalog. The price lookup formula is defined for the charge so that the price lookup function can work. For more information, see Price lookup in Attribute-based Pricing.

Default charge definition and inheritance

The Product Charge Definition object introduces the concept of default charge definition. This default charge definition is to ensure that a given product rate plan charge has a behavior defined, regardless of the context. 

When a product rate plan charge is created, the information defined in this charge is saved as its default charge definition. When this product rate plan charge is linked to any other product rate plan, this definition automatically becomes available to that plan. When you create additional charge definitions, you can define the attributes specifically for this definition or inherit a set of attributes from the default definition. 

Attributes inherited from the default definition

If you do not specify the following attributes when creating a charge definition, these attributes will be inherited from the default charge definition. If these attributes are updated for the default charge definition later, the same update will also be applied to the attribute in the non-default charge definition, which is inherited from the default.

UI label Field name in API Note
Charge ID productChargeId This attribute is required for creating a charge definition.
Charge Number productChargeNumber This attribute is required for creating a charge definition
Link to Rate Plan productRatePlanId This attribute value is null in the default charge definition. It can be overridden in the non-default charge definition.
Term term This attribute value is null in the default charge definition. It can be overridden in the non-default charge definition.
Term Type termType This attribute value is null in the default charge definition. It can be overridden in the non-default charge definition.
Term Period Type termPeriodType This attribute value is null in the default charge definition. It can be overridden in the non-default charge definition.

Attributes that can be overridden

If you specify the following attributes when creating a charge definition, the following attributes will be overridden by your specified value for the non-default charge definition. If these attributes are updated for the default charge definition later, your specified value remains unchanged.

  • Charge Model (chargeModel)
  • Effective Start Date (effectiveStartDate)
  • Effective End Date (effectiveEndDate)
  • Link to Rate Plan (productRatePlanId)
  • Term Type (termType)
  • Term Period Type (termPeriodType)
  • Term (term)
  • UOM (uom)
  • List Price Base (listPriceBase)
  • Default Quantity (defaultQuantity)
  • Specific Month (specificListPriceBase)
  • Price Table (tiers)
  • Billing Periods (billingPeriod)
  • Period (specificBillingPeriod)
  • Taxable (taxable)
  • Tax Code (taxCode)
  • Tax Mode (taxMode)
  • The custom field in the Charge Definition Attributes section of the UI (customFields)

From Zuora UI

Complete the following steps to create a charge definition for a specific charge:

  1. Navigate to Products > Product Catalog. The Products page opens.
  2. Find the target charge for which you want to create a charge definition and enter the view charge icon-view-charge.png or edit charge icon-edit-charge.png mode.
  3. At the bottom of the Charge Amount section, click Manage Charge Definitions. The Manage Charge Definitions page opens, displaying the basic charge information and its definition list.

    manage-charge-definitions-button.png

  4. Click Add New Definition. The Add New Charge Definition page opens.

    manage-charge-definitions-page.png

  5. Specify the basic information for the charge definition, including the following fields:
    Field Description
    Effective Start Date Required. Specifies the effective start date of this charge definition.
    Effective End Date Required. Specifies the effective end date of this charge definition.
    Link to Rate Plan

    Optional. Specify the rate plan to which this charge definition should apply.

    If this field is not specified, the charge definition can be applied to all product rate plans.

  6. Specify the pricing information for the charge definition. The fields to be specified might vary depending on the charge model.
    Field Description
    Charge Model Required. Specifies the charge model, which determines how to calculate the charge. The following charge models are supported:
    • Flat Fee Pricing
    • Per Unit Pricing
    • Tiered Pricing
    • Volume Pricing
    • Discount - Fixed Amount
    • Discount - Percentage
    • Delivery Pricing
    List Price

    Required for Flat Fee, Per Unit, and Tiered Pricing charge models. Specifies the list price of this charge definition.

    You can specify the list price in other currencies by clicking Add Other Currencies or Edit All Currencies.

    Discount Amount Required for the Discount-Fixed Amount charge model. Specifies a particular amount for a fixed discount charge.
    Discount Percentage Required for the Discount-Percentage charge model. Specifies the discount percentage for a percentage discount charge.
    List Price Base

    The list price base. This field is applicable only for recurring charges. Valid options are:

    • Per Billing Period
    • Per Month
    • Per Week
    • Per Specific Months
    • Per Year (if Annual List Price feature is enabled)
    Specific Months Required only if the List Price Base field is selected as Per Specific Months. Specifies the number of months for the list price base for the charge definition.
    Delivery Schedule Applicable for Delivery Pricing charge model. Specifies the frequency of the delivery. Only weekly delivery is supported now, and you can specify the day of the week when the delivery happens.
    Default Quantity Applicable only for one-time and recurring charges. Specifies the default quantity.
    UOM Indicates the unit of measure (UOM) configured in Settings > Billing for the product rate plan charge.
    Price Table

    Applicable for Tiered Pricing and Volume Pricing charge models.

    • From: The starting number of a range of units for the tier.
    • To: The end number of a range of units for the tier.
    • Price: The price of the tier if the price format is flat fee, or the price of each unit in the tier if the price format is per unit.
    • Price Format: The price format of this tier, which is either Flat Fee Pricing or Per Unit Pricing.
    Charge Definition Attributes

    Other attributes that you can specify for a charge definition. If the attribute is used as the lookup field by the price lookup function, the value you specify can determine whether the charge definition should apply. 

    For a custom field to be used as a lookup field, it must have been defined as the indexed custom field in the Billing Settings. For supported lookup fields, see Price lookup in Attribute-based Pricing.

  7. In the Timing and Frequency of Charge Definition section, specify the billing information for this charge definition, such as Billing Periods and Billing Timing.  
  8. Click Save to create this charge definition. You will be directed to the Manage Charge Definitions page.

The new charge definition is created and displayed in the Charge Definition Mapping List section.

With REST API

Use the Create a charge definition operation to create a charge definition for a charge.

The following example creates a charge definition for the PRPC-00000015 charge and also uses the optional fields to specify this charge definition only applies to the PRP-NEW-00000242 rate plan.

Request POST /v1/product-charge-definitions
Request body
{
  "productRatePlanChargeId": "2c9890e489f227bd0189f22f3482001f",
  "productRatePlanChargeNumber": "PRPC-00000015",
  "productRatePlanId": "2c9890e489f227bd0189f22c3c730002",
  "productRatePlanNumber": "PRP-NEW-00000242",
  "effectiveStartDate": "2024-01-01 00:00:00",
  "effectiveEndDate": "2025-01-01 00:00:00",
  "listPriceBase": "Per_Billing_Period",
  "specificListPriceBase": 101,
  "billingPeriod": "Specific_Months",
  "specificBillingPeriod": 10,
  "taxable": false,
  "taxMode": "TaxExclusive",
  "termType": "TERMED",
  "termPeriodType": "Month",
  "term": 24,
  "uom": "Each",
  "taxCode": "a valid tax code",
  "chargeModel": "FlatFee",
  "defaultQuantity": 10,
  "prices": [
    {
      "price": 10,
      "currency": "USD"
    }
    ]
}