Object Queries

Retrieve a product rate plan charge

Retrieve the details of a specific Product Rate Plan Charge object.

get/object-query/product-rate-plan-charges/{key}

Path parameters

keystring required

ID of a product rate plan charge.

Query parameters

pageSizeinteger

The maximum number of results to return in a single page. If the specified pageSize is less than 1 or greater than 99, Zuora will return a 400 error.

cursorstring

A cursor for use in pagination. A cursor defines the starting place in a list. For instance, if you make a list request and receive 100 objects, ending with next_page=W3sib3JkZXJ=, your subsequent call can include cursor=W3sib3JkZXJ= in order to fetch the next page of the list.

sort[]string[]

A case-insensitive query parameter that specifies the sort order of the list, which can be either ascending (e.g. accountnumber.ASC) or descending (e.g. accountnumber.DESC). You cannot sort on properties in arrays. If the array-type properties are specified for the sort[] parameter, they are ignored.

expand[]string[]
filter[]string[]

A case-insensitive filter on the list.

fields[]string[]

A case-insensitive query parameter that allows you to specify which fields are returned in the response.

includeNullFieldsboolean

Specifies whether to include fields with the null value in the response.

  • If set to true, all fields will be returned in the response, including those with the null value.
  • If set to false, only fields with non-null values will be returned.

Headers

Idempotency-Keystring

Specify a unique idempotency key if you want to perform an idempotent POST or PATCH request. Do not use this header in other request types.

With this header specified, the Zuora server can identify subsequent retries of the same request using this value, which prevents the same operation from being performed multiple times by accident.

Accept-Encodingstring

Include the Accept-Encoding: gzip header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response.

If specified, Zuora automatically compresses responses that contain over 1000 bytes of data, and the response contains a Content-Encoding header with the compression algorithm so that your client can decompress it.

Content-Encodingstring

Include the Content-Encoding: gzip header to compress a request. With this header specified, you should upload a gzipped file for the request payload instead of sending the JSON payload.

Zuora-Track-Idstring

A custom identifier for tracing the API call. If you set a value for this header, Zuora returns the same value in the response headers. This header enables you to associate your system process identifiers with Zuora API calls, to assist with troubleshooting in the event of an issue.

The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), and quote (').

Zuora-Entity-Idsstring

An entity ID. If you have Zuora Multi-entity enabled and the OAuth token is valid for more than one entity, you must use this header to specify which entity to perform the operation in. If the OAuth token is only valid for a single entity, or you do not have Zuora Multi-entity enabled, you should not set this header.

Zuora-Org-Idsstring

Comma separated IDs. If you have <a href="https://docs.zuora.com/en/zuora-platform/organization-and-entity-management/multi-org/overview-of-multi-org" target="_blank">Zuora Multi-Org</a> enabled, you can use this header to specify which orgs to perform the operation in. If you do not have Zuora Multi-Org enabled, you should not set this header.

The IDs must be a sub-set of the user's accessible orgs. If you specify an org that the user does not have access to, the operation fails. This header is important in Multi-Org (MO) setups because it defines the organization context under which the API should operate—mainly used for read access or data visibility filtering. If the header is not set, the operation is performed in scope of the user's accessible orgs.

Zuora-Versionstring

The minor API version.

For a list of available minor versions, see API upgrades.

Response

OK

idstring

The unique identifier of the product rate plan charge.

createdByIdstring

The unique identifier of the user who created the product rate plan charge.

createdDatestring date-time

The date and time when the product rate plan charge was created.

updatedByIdstring

The unique identifier of the user who last updated the product rate plan charge.

updatedDatestring date-time

The date and time when the product rate plan charge was last updated.

accountingCodestring

The accounting code for the charge. Accounting codes group transactions that contain similar accounting attributes.

applyDiscountTo'ONETIME' | 'RECURRING' | 'USAGE' | 'ONETIMERECURRING' | 'ONETIMEUSAGE' | 'RECURRINGUSAGE' | 'ONETIMERECURRINGUSAGE' | 'null' nullable

Indicates which type of charge the discount charge applies to.

chargeFunction'Standard' | 'Prepayment' | 'CommitmentTrueUp' | 'Drawdown' | 'CreditCommitment' | 'DrawdownAndCreditCommitment'

Note: This field is only available if you have the Prepaid with Drawdown or Minimum Commitment feature enabled.

This field defines what type of charge it is:

  • Standard: Normal charge with no Prepayment or Commitment or Drawdown.
  • Prepayment: For recurring charges. Unit or currency based prepaid charge.
  • CommitmentTrueUp: For recurring charges. Currency based minimum commitment charge.
  • Drawdown: For usage charges. Drawdown from prepaid funds.
  • DrawdownAndCreditCommitment: For usage charges. Drawdown from prepaid funds and then credit to minimum commitment funds.
  • CreditCommitment: For usage charges. Credit to minimum commitment funds.
isAllocationEligibleboolean

Indicates whether the charge segment is allocation eligible in revenue recognition.

isUnbilledboolean

Specifies how to perform the accounting during revenue recognition.

applyToBillingPeriodPartiallyboolean

Allow the discount duration to be aligned with the billing period partially.

billCycleDayinteger

Sets the bill cycle day (BCD) for the charge. The BCD determines which day of the month customer is billed. The BCD value in the account can override the BCD in this object.

billCycleType'DefaultFromCustomer' | 'SpecificDayofMonth' | 'SubscriptionStartDay' | 'ChargeTriggerDay' | 'SpecificDayofWeek' | 'TermStartDay' | 'TermEndDay'

Specifies how to determine the billing day for the charge.

billingPeriod'Month' | 'Quarter' | 'Annual' | 'Semi-Annual' | 'Specific Months' | 'Subscription Term' | 'Week' | 'Specific Weeks' | 'Specific Days'

The billing period for the charge. The start day of the billing period is also called the bill cycle day (BCD).

billingPeriodAlignment'AlignToCharge' | 'AlignToSubscriptionStart' | 'AlignToTermStart' | 'AlignToTermEnd'

The billing period alignment setting for this charge.

billingTiming'IN_ADVANCE' | 'IN_ARREARS'

The billing timing for this charge.

chargeModel'Discount-Fixed Amount' | 'Discount-Percentage' | 'Flat Fee Pricing' | 'Per Unit Pricing' | 'Overage Pricing' | 'Tiered Pricing' | 'Tiered with Overage Pricing' | 'Volume Pricing' | 'Delivery Pricing' | 'MultiAttributePricing' | 'PreratedPerUnit' | 'PreratedPricing`' | 'HighWatermarkVolumePricing' | 'HighWatermarkTieredPricing'

Determines how to calculate charges. Charge models must be individually activated in Zuora Billing administration.

chargeType'OneTime' | 'Recurring' | 'Usage'

Specifies the type of charge.

creditOption'TimeBased' | 'ConsumptionBased' | 'FullCreditBack'

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The way to calculate credit. See Credit Option for more information.

defaultQuantitynumber nullable

The default quantity.

This field is applicable only for one-time and recurring charges.

deferredRevenueAccountstring

The name of the deferred revenue account for this charge.

This feature is in Limited Availability. If you wish to have access to the feature, submit a request at Zuora Global Support.

descriptionstring

Description of the product rate plan charge.

discountClassIdstring nullable

ID of the class the discount belongs to. The discount class defines the order in which discount product rate plan charges are applied.

For more information, see Manage Discount Classes.

discountLevel'rateplan' | 'subscription' | 'account' | 'null' nullable

The application scope of the discount charge. For example, if the value of this field is subscription and the value of the applyDiscountTo field is RECURRING, the discount charge applies to all recurring charges in the same subscription as the discount charge.

drawdownRatenumber nullable

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The conversion rate between Usage UOM and Drawdown UOM for a drawdown charge. Must be a positive number (>0).

endDateCondition'SubscriptionEnd' | 'OneTime' | 'FixedPeriod' | 'SpecificEndDate'

The end date condition for this charge.

excludeItemBillingFromRevenueAccountingboolean

Indicates whether to exclude the related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting.

Note: This field is only available if you have the Order to Revenue or Billing - Revenue Integration feature enabled.

excludeItemBookingFromRevenueAccountingboolean

Indicates whether to exclude the related rate plan charges and order line items from revenue accounting.

Note: This field is only available if you have the Order to Revenue or Billing - Revenue Integration feature enabled.

includedUnitsnumber

Specifies the number of units in the base set of units.

isPrepaidboolean

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

Indicates whether this charge is a prepayment (topup) charge or a drawdown charge.

isRolloverboolean

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

It determines whether the rollover fields are needed.

isStackedDiscountboolean

Note: This field is only applicable to the Discount - Percentage charge model.

This field indicates whether the discount is to be calculated as stacked discount. Possible values are as follows:

  • True: This is a stacked discount, which should be calculated by stacking with other discounts.
  • False: This is not a stacked discount, which should be calculated in sequence with other discounts.

For more information, see Stacked discounts.

legacyRevenueReportingboolean

Indicates whether to use the legacy revenue reporting for this charge.

listPriceBase'Per Billing Period' | 'Per Month' | 'Per Week' | 'Per Year' | 'Per Specific Months'

The list price base for the product rate plan charge.

This field is only applicable for recurring charges.

specificListPriceBaseinteger nullable

The number of months for the list price base of the charge. The value of this field is null if you do not set the value of the listPriceBase field to Per_Specific_Months.

maxQuantitynumber

The maximum number of units for this charge. This field and the minQuantity field can be used to create a range of units allowed in a product rate plan charge.

minQuantitynumber

The minimum number of units for this charge. This field and the maxQuantity field can be used to create a range of units allowed in a product rate plan charge.

namestring

Name of the product rate-plan charge. Not required to be unique.

numberOfPeriodinteger nullable

Specifies the number of periods to use when calculating charges in an overage smoothing charge model. This field is ued when overage smoothing model is RollingWindow or Rollover.

overageCalculationOption'EndOfSmoothingPeriod' | 'PerBillingPeriod' | 'null' nullable

Value specifies when to calculate overage charges.

overageUnusedUnitsCreditOption'NoCredit' | 'CreditBySpecificRate' nullable

Determines whether to credit the customer with unused units of usage.

prepaidOperationType'topup' | 'drawdown' | 'null' nullable

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The type of this charge. It is either a prepayment (topup) charge or a drawdown charge.

prepaidQuantitynumber nullable

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The number of units included in a prepayment charge. Must be a positive number (>0).

prepaidTotalQuantitynumber nullable

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The total amount of units that end customers can use during a validity period when they subscribe to a prepayment charge.

priceChangeOption'NoChange' | 'SpecificPercentageValue' | 'UseLatestProductCatalogPricing' nullable

Applies an automatic price change when a termed subscription is renewed and the following applies:

  1. AutomatedPriceChange setting is on

  2. Charge type is not one-time

  3. Charge model is not discount fixed amount

priceIncreasePercentagenumber nullable

Specifies the percentage to increase or decrease the price of a termed subscription's renewal. Use this field if you set the PriceChangeOption value to SpecificPercentageValue.

  1. AutomatedPriceChange setting is on
  2. Charge type is not one-time
  3. Charge model is not discount fixed amount

Values: a decimal between -100 and 100

productRatePlanChargeNumberstring

The natural key of the product rate plan charge.

prorationOptionstring

Note: This field is only available if you have the Charge Level Proration feature enabled.

The charge-level proration option for the product rate plan charge.

ratingGroupstring nullable

Specifies a rating group based on which usage records are rated.

Possible values:

  • ByBillingPeriod (default): The rating is based on all the usages in a billing period.
  • ByUsageStartDate: The rating is based on all the usages on the same usage start date.
  • ByUsageRecord: The rating is based on each usage record.
  • ByUsageUpload: The rating is based on all the usages in a uploaded usage file (.xls or .csv).
  • ByGroupId: The rating is based on all the usages in a custom group.

Note:

  • The ByBillingPeriod value can be applied for all charge models.
  • The ByUsageStartDate, ByUsageRecord, and ByUsageUpload values can only be applied for per unit, volume pricing, and tiered pricing charge models.
  • The ByGroupId value is only available if you have the Active Rating feature enabled.
  • Use this field only for Usage charges. One-Time Charges and Recurring Charges return NULL.
revRecTriggerCondition'ContractEffectiveDate' | 'ServiceActivationDate' | 'CustomerAcceptanceDate' | 'null' nullable

Specifies when revenue recognition begins.

revenueRecognitionRuleNamestring

The name of the revenue recognition rule governing the revenue schedule.

rolloverApply'ApplyFirst' | 'ApplyLast'

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

This field defines the priority of rollover, which is either first or last.

rolloverPeriodLengthinteger

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The period length of the rollover fund.

rolloverPeriodsinteger

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

This field defines the number of rollover periods, it is restricted to 3.

recognizedRevenueAccountstring

The name of the recognized revenue account for this charge.

  • Required when the Allow Blank Accounting Code setting is No.
  • Optional when the Allow Blank Accounting Code setting is Yes.

This feature is in Limited Availability. If you wish to have access to the feature, submit a request at Zuora Global Support.

smoothingModelstring nullable

Specifies the smoothing model for an overage smoothing charge model or an tiered with overage model, which is an advanced type of a usage model that avoids spikes in usage charges. If a customer's usage spikes in a single period, then an overage smoothing model eases overage charges by considering usage and multiple periods.

One of the following values shows which smoothing model will be applied to the charge when Overage or Tiered with Overage is used:

  • RollingWindow considers a number of periods to smooth usage. The rolling window starts and increments forward based on billing frequency. When allowed usage is met, then period resets and a new window begins.

  • Rollover considers a fixed number of periods before calculating usage. The net balance at the end of a period is unused usage, which is carried over to the next period's balance.

specificBillingPeriodinteger nullable

When the billing period is set to Specific Months then this positive integer reflects the number of months for billing period charges.

taxableboolean

Specifies whether the charge is taxable; used by Zuora Tax.

taxCodestring

Specifies the tax code for taxation rules; used by Zuora Tax.

taxMode'TaxExclusive' | 'TaxInclusive' | 'null' nullable

Specifies how to define taxation for the charge; used by Zuora Tax.

triggerEvent'ContractEffective' | 'ServiceActivation' | 'CustomerAcceptance' | 'SpecificDate'

Specifies when to start billing the customer for the charge.

Values: one of the following:

  • ContractEffective is the date when the subscription's contract goes into effect and the charge is ready to be billed.
  • ServiceActivation is the date when the services or products for a subscription have been activated and the customers have access.
  • CustomerAcceptance is when the customer accepts the services or products for a subscription.
  • SpecificDate is the date specified.
upToPeriodsinteger nullable

Specifies the length of the period during which the charge is active. If this period ends before the subscription ends, the charge ends when this period ends.

If the subscription end date is subsequently changed through a Renewal, or Terms and Conditions amendment, the charge end date will change accordingly up to the original period end.

upToPeriodsType'Billing Periods' | 'Days' | 'Weeks' | 'Months' | 'Years' | 'null' nullable

The period type used to define when the charge ends.

usageRecordRatingOptionstring nullable

Determines how Zuora processes usage records for per-unit usage charges.

useDiscountSpecificAccountingCodeboolean nullable

Determines whether to define a new accounting code for the new discount charge.

useTenantDefaultForPriceChangeboolean

Shows the tenant-level percentage uplift value for an automatic price change to a termed subscription's renewal. You set the tenant uplift value in the web-based UI: Settings > Billing > Define Default Subscription Settings.

validityPeriodType'SubscriptionTerm' | 'Annual' | 'SemiAnnual' | 'Quarter' | 'Month'

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

The period in which the prepayment units are valid to use as defined in a prepayment charge.

weeklyBillCycleDay'Sunday' | 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday'

Specifies which day of the week as the bill cycle day (BCD) for the charge.

This feature is in Limited Availability. If you wish to have access to the feature, submit a request at Zuora Global Support.

priceUpsellQuantityStackedboolean

Indicates whether the price upsell quantity is stacked.

deliveryScheduleIdstring

The unique identifier of the delivery schedule associated with the product rate plan charge. This field is applicable only when this charge is using Delivery Pricing charge model.

commitmentType'UNIT' | 'CURRENCY'

Note: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-unbilled-usage" target="_blank">Unbilled Usage</a> feature enabled.

To use this field, you must set the X-Zuora-WSDL-Version request header to 133 or higher. Otherwise, an error occurs.

This field defines the type of commitment. A prepaid charge can be UNIT or CURRENCY. A minimum commitment(in-arrears) charge can only be CURRENCY type. For topup(recurring or one-time) charges, this field indicates what type of funds are created.

  • If UNIT, it will create a fund with given prepaidUom.
  • If CURRENCY, it will create a fund with the currency amount calculated in list price.

For drawdown(usage) charges, this field indicates what type of funds are drawdown from that created from topup charges.

isCommittedboolean

Indicates whether the charge is commited.

productRatePlanIdstring

The unique identifier of the product rate plan to which this product rate plan charge belongs.

accountReceivableAccountingCodeIdstring

The type of the accounting code for accounts receivable.

recognizedRevenueAccountingCodeIdstring

The accounting code for recognized revenue, such as Monthly Recurring Charges or Overage Charges.

deferredRevenueAccountingCodeIdstring nullable

The type associated with the deferred revenue accounting code, such as Deferred Revenue.

adjustmentLiabilityAccountingCodeIdstring

The type associated with the adjustment liability accounting code.

Note: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.

adjustmentRevenueAccountingCodeIdstring

The type associated with the adjustment revenue accounting code.

Note: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.

contractAssetAccountingCodeIdstring

The type associated with the contract asset accounting code.

Note: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.

contractLiabilityAccountingCodeIdstring

The accounting code for contract liability.

Note: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.

contractRecognizedRevenueAccountingCodeIdstring

The accounting code for contract recognized revenue.

Note: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.

unbilledReceivablesAccountingCodeIdstring nullable

The accounting code for unbilled receivables.

Note: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.

revRecCodestring nullable

Associates this product rate plan charge with a specific revenue recognition code.

uOMstring nullable

Describes the Units of Measure (uom) configured in Settings > Billing for the productRatePlanCharges.

drawdownUomstring

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

Unit of measurement for a drawdown charge.

prepaidUomstring nullable

Note: This field is only available if you have the Prepaid with Drawdown feature enabled.

Unit of measurement for a prepayment charge.

Changes