swagger: '2.0'
info:
version: '2023-12-15'
title: API Reference Accounting Codes Product Rate Plan Charges API
description: "\n\n# Introduction\n\nWelcome to the REST API reference for the Zuora Billing, Payments, and Central Platform!\n\nTo learn about the common use cases of Zuora REST APIs, check out the [REST API Tutorials](/rest-api/api-guides/overview/).\n\nIn addition to Zuora API Reference, we also provide API references for other Zuora products:\n\n * [Revenue API Reference](/api-references/revenue/overview/)\n * [Collections API Reference](/api-references/collections/overview/)\n \nThe Zuora REST API provides a broad set of operations and resources that:\n\n * Enable Web Storefront integration from your website.\n * Support self-service subscriber sign-ups and account management.\n * Process revenue schedules through custom revenue rule models.\n * Enable manipulation of most objects in the Zuora Billing Object Model.\n\nWant to share your opinion on how our API works for you? Tell us how you feel about using our API and what we can do to make it better.\n\nSome of our older APIs are no longer recommended but still available, not affecting any existing integration. To find related API documentation, see [Older API Reference](/api-references/older-api/overview/).\n\n\n## Access to the API\n\nIf you have a Zuora tenant, you can access the Zuora REST API via one of the following endpoints:\n\n| Tenant | Base URL for REST Endpoints |\n|-------------------------|-------------------------|\n|US Cloud 1 Production | https://rest.na.zuora.com |\n|US Cloud 1 API Sandbox | https://rest.sandbox.na.zuora.com |\n|US Cloud 2 Production | https://rest.zuora.com |\n|US Cloud 2 API Sandbox | https://rest.apisandbox.zuora.com|\n|US Central Sandbox | https://rest.test.zuora.com | \n|US Performance Test | https://rest.pt1.zuora.com |\n|US Production Copy | Submit a request at Zuora Global Support to enable the Zuora REST API in your tenant and obtain the base URL for REST endpoints. See [REST endpoint base URL of Production Copy (Service) Environment for existing and new customers](https://community.zuora.com/t5/API/REST-endpoint-base-URL-of-Production-Copy-Service-Environment/td-p/29611) for more information. |\n|EU Production | https://rest.eu.zuora.com |\n|EU API Sandbox | https://rest.sandbox.eu.zuora.com |\n|EU Central Sandbox | https://rest.test.eu.zuora.com |\n\nThe Production endpoint provides access to your live user data. Sandbox tenants are a good place to test code without affecting real-world data. If you would like Zuora to provision a Sandbox tenant for you, contact your Zuora representative for assistance.\n\n\nIf you do not have a Zuora tenant, go to https://www.zuora.com/resource/zuora-test-drive and sign up for a Production Test Drive tenant. The tenant comes with seed data, including a sample product catalog.\n\n\n# Error Handling\n\nIf a request to Zuora Billing REST API with an endpoint starting with `/v1` (except [Actions](/v1-api-reference/api/Actions) and CRUD operations) fails, the response will contain an eight-digit error code with a corresponding error message to indicate the details of the error.\n\nThe following code snippet is a sample error response that contains an error code and message pair:\n\n```\n {\n \"success\": false,\n \"processId\": \"CBCFED6580B4E076\",\n \"reasons\": [\n {\n \"code\": 53100320,\n \"message\": \"'termType' value should be one of: TERMED, EVERGREEN\"\n }\n ]\n }\n```\nThe `success` field indicates whether the API request has succeeded. The `processId` field is a Zuora internal ID that you can provide to Zuora Global Support for troubleshooting purposes.\n\nThe `reasons` field contains the actual error code and message pair. The error code begins with `5` or `6` means that you encountered a certain issue that is specific to a REST API resource in Zuora Billing, Payments, and Central Platform. For example, `53100320` indicates that an invalid value is specified for the `termType` field of the `subscription` object.\n\nThe error code beginning with `9` usually indicates that an authentication-related issue occurred, and it can also indicate other unexpected errors depending on different cases. For example, `90000011` indicates that an invalid credential is provided in the request header. \n\nWhen troubleshooting the error, you can divide the error code into two components: REST API resource code and error category code. See the following Zuora error code sample:\n\n\n\n\n**Note:** Zuora determines resource codes based on the request payload. Therefore, if GET and DELETE requests that do not contain payloads fail, you will get `500000` as the resource code, which indicates an unknown object and an unknown field. \nThe error category code of these requests is valid and follows the rules described in the [Error Category Codes](/api-references/api/overview/#section/Error-Handling/Error-Category-Codes) section. \nIn such case, you can refer to the returned error message to troubleshoot.\n\n\n## REST API Resource Codes\n\nThe 6-digit resource code indicates the REST API resource, typically a field of a Zuora object, on which the issue occurs. In the preceding example, `531003` refers to the `termType` field of the `subscription` object. \n\nThe value range for all REST API resource codes is from `500000` to `679999`. See Resource Codes in the Knowledge Center for a full list of resource codes.\n\n## Error Category Codes\n\nThe 2-digit error category code identifies the type of error, for example, resource not found or missing required field. \n\nThe following table describes all error categories and the corresponding resolution:\n\n| Code | Error category | Description | Resolution |\n|:--------|:--------|:--------|:--------|\n| 10 | Permission or access denied | The request cannot be processed because a certain tenant or user permission is missing. | Check the missing tenant or user permission in the response message and contact Zuora Global Support for enablement. |\n| 11 | Authentication failed | Authentication fails due to invalid API authentication credentials. | Ensure that a valid API credential is specified. |\n| 20 | Invalid format or value | The request cannot be processed due to an invalid field format or value. | Check the invalid field in the error message, and ensure that the format and value of all fields you passed in are valid. |\n| 21 | Unknown field in request | The request cannot be processed because an unknown field exists in the request body. | Check the unknown field name in the response message, and ensure that you do not include any unknown field in the request body. |\n| 22 | Missing required field | The request cannot be processed because a required field in the request body is missing. | Check the missing field name in the response message, and ensure that you include all required fields in the request body. |\n| 23 | Missing required parameter | The request cannot be processed because a required query parameter is missing. | Check the missing parameter name in the response message, and ensure that you include the parameter in the query. |\n| 30 | Rule restriction | The request cannot be processed due to the violation of a Zuora business rule. | Check the response message and ensure that the API request meets the specified business rules. |\n| 40 | Not found | The specified resource cannot be found. | Check the response message and ensure that the specified resource exists in your Zuora tenant. |\n| 45 | Unsupported request | The requested endpoint does not support the specified HTTP method. | Check your request and ensure that the endpoint and method matches. |\n| 50 | Locking contention | This request cannot be processed because the objects this request is trying to modify are being modified by another API request, UI operation, or batch job process. |
Resubmit the request first to have another try.
If this error still occurs, contact Zuora Global Support with the returned `Zuora-Request-Id` value in the response header for assistance.
|\n| 60 | Internal error | The server encounters an internal error. | Contact Zuora Global Support with the returned `Zuora-Request-Id` value in the response header for assistance. |\n| 61 | Temporary error | A temporary error occurs during request processing, for example, a database communication error. |Resubmit the request first to have another try.
If this error still occurs, contact Zuora Global Support with the returned `Zuora-Request-Id` value in the response header for assistance.
|\n| 70 | Request exceeded limit | The total number of concurrent requests exceeds the limit allowed by the system. |Resubmit the request after the number of seconds specified by the `Retry-After` value in the response header.
Check [Concurrent request limits](/rest-api/general-concepts/rate-concurrency-limits/) for details about Zuora’s concurrent request limit policy.
|\n| 90 | Malformed request | The request cannot be processed due to JSON syntax errors. | Check the syntax error in the JSON request body and ensure that the request is in the correct JSON format. |\n| 99 | Integration error | The server encounters an error when communicating with an external system, for example, payment gateway, tax engine provider. | Check the response message and take action accordingly. |\n\n\n# API Versions\n\nThe Zuora REST API are version controlled. Versioning ensures that Zuora REST API changes are backward compatible. Zuora uses a major and minor version nomenclature to manage changes. By specifying a version in a REST request, you can get expected responses regardless of future changes to the API.\n\n## Major Version\n\nThe major version number of the REST API appears in the REST URL. In this API reference, only the **v1** major version is available. For example, `POST https://rest.zuora.com/v1/subscriptions`.\n\n## Minor Version\n\nZuora uses minor versions for the REST API to control small changes. For example, a field in a REST method is deprecated and a new field is used to replace it. \n\nSome fields in the REST methods are supported as of minor versions. If a field is not noted with a minor version, this field is available for all minor versions. If a field is noted with a minor version, this field is in version control. You must specify the supported minor version in the request header to process without an error. \n\nIf a field is in version control, it is either with a minimum minor version or a maximum minor version, or both of them. You can only use this field with the minor version between the minimum and the maximum minor versions. For example, the `invoiceCollect` field in the POST Subscription method is in version control and its maximum minor version is 189.0. You can only use this field with the minor version 189.0 or earlier.\n\nIf you specify a version number in the request header that is not supported, Zuora will use the minimum minor version of the REST API. In our REST API documentation, if a field or feature requires a minor version number, we note that in the field description.\n\nYou only need to specify the version number when you use the fields require a minor version. To specify the minor version, set the `zuora-version` parameter to the minor version number in the request header for the request call. For example, the `collect` field is in 196.0 minor version. If you want to use this field for the POST Subscription method, set the `zuora-version` parameter to `196.0` in the request header. The `zuora-version` parameter is case sensitive.\n\nFor all the REST API fields, by default, if the minor version is not specified in the request header, Zuora will use the minimum minor version of the REST API to avoid breaking your integration. \n\n### Minor Version History\n\nThe supported minor versions are not consecutive. \nYou can use the following versions to override the default version (`186.0`):\n - 187.0\n - 188.0\n - 189.0\n - 196.0\n - 206.0\n - 207.0\n - 211.0\n - 214.0\n - 215.0\n - 216.0\n - 223.0\n - 224.0\n - 230.0\n - 239.0\n - 256.0\n - 257.0\n - 309.0\n - 314.0\n - 315.0\n - 329.0\n - 330.0\n - 336.0\n - 337.0\n - 338.0\n - 341.0\n\nIf you set the `zuora-version` header to a version excluded from the preceding list, the corresponding API request is processed as you use the default version, `186.0`.\n\nThe following table lists the supported versions and the fields that have a Zuora REST API minor version.\n\n| Fields | Minor Version | REST Methods | Description |\n|:--------|:--------|:--------|:--------|\n| invoiceCollect | 189.0 and earlier | [Create Subscription](/v1-api-reference/api/subscriptions/post_subscription \"Create Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\"); [Renew Subscription](/v1-api-reference/api/subscriptions/put_renewsubscription \"Renew Subscription\"); [Cancel Subscription](/v1-api-reference/api/subscriptions/put_cancelsubscription \"Cancel Subscription\"); [Suspend Subscription](/v1-api-reference/api/subscriptions/put_suspendsubscription/ \"Suspend Subscription\"); [Resume Subscription](/v1-api-reference/api/subscriptions/put_resumesubscription/ \"Resume Subscription\"); [Create Account](/v1-api-reference/api/accounts/post_account \"Create Account\")|Generates an invoice and collects a payment for a subscription. |\n| collect | 196.0 and later | [Create Subscription](/v1-api-reference/api/subscriptions/post_subscription \"Create Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\"); [Renew Subscription](/v1-api-reference/api/subscriptions/put_renewsubscription \"Renew Subscription\"); [Cancel Subscription](/v1-api-reference/api/subscriptions/put_cancelsubscription \"Cancel Subscription\"); [Suspend Subscription](/v1-api-reference/api/subscriptions/put_suspendsubscription/ \"Suspend Subscription\"); [Resume Subscription](/v1-api-reference/api/subscriptions/put_resumesubscription/ \"Resume Subscription\"); [Create Account](/v1-api-reference/api/accounts/post_account \"Create Account\")|Collects an automatic payment for a subscription. |\n| invoice | 196.0 and 207.0| [Create Subscription](/v1-api-reference/api/subscriptions/post_subscription \"Create Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\"); [Renew Subscription](/v1-api-reference/api/subscriptions/put_renewsubscription \"Renew Subscription\"); [Cancel Subscription](/v1-api-reference/api/subscriptions/put_cancelsubscription \"Cancel Subscription\"); [Suspend Subscription](/v1-api-reference/api/subscriptions/put_suspendsubscription/ \"Suspend Subscription\"); [Resume Subscription](/v1-api-reference/api/subscriptions/put_resumesubscription/ \"Resume Subscription\"); [Create Account](/v1-api-reference/api/accounts/post_account \"Create Account\")|Generates an invoice for a subscription. |\n| invoiceTargetDate | 206.0 and earlier | [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview Subscription\") |Date through which charges are calculated on the invoice, as `yyyy-mm-dd`. |\n| invoiceTargetDate | 207.0 and earlier | [Create Subscription](/v1-api-reference/api/subscriptions/post_subscription \"Create Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\"); [Renew Subscription](/v1-api-reference/api/subscriptions/put_renewsubscription \"Renew Subscription\"); [Cancel Subscription](/v1-api-reference/api/subscriptions/put_cancelsubscription \"Cancel Subscription\"); [Suspend Subscription](/v1-api-reference/api/subscriptions/put_suspendsubscription/ \"Suspend Subscription\"); [Resume Subscription](/v1-api-reference/api/subscriptions/put_resumesubscription/ \"Resume Subscription\"); [Create Account](/v1-api-reference/api/accounts/post_account \"Create Account\")|Date through which charges are calculated on the invoice, as `yyyy-mm-dd`. |\n| targetDate | 207.0 and later | [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview Subscription\") |Date through which charges are calculated on the invoice, as `yyyy-mm-dd`. |\n| targetDate | 211.0 and later | [Create Subscription](/v1-api-reference/api/subscriptions/post_subscription \"Create Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\"); [Renew Subscription](/v1-api-reference/api/subscriptions/put_renewsubscription \"Renew Subscription\"); [Cancel Subscription](/v1-api-reference/api/subscriptions/put_cancelsubscription \"Cancel Subscription\"); [Suspend Subscription](/v1-api-reference/api/subscriptions/put_suspendsubscription/ \"Suspend Subscription\"); [Resume Subscription](/v1-api-reference/api/subscriptions/put_resumesubscription/ \"Resume Subscription\"); [Create Account](/v1-api-reference/api/accounts/post_account \"Create Account\")|Date through which charges are calculated on the invoice, as `yyyy-mm-dd`. |\n| includeExisting DraftInvoiceItems | 206.0 and earlier| [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\") | Specifies whether to include draft invoice items in subscription previews. Specify it to be `true` (default) to include draft invoice items in the preview result. Specify it to be `false` to excludes draft invoice items in the preview result. |\n| includeExisting DraftDocItems | 207.0 and later | [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\") | Specifies whether to include draft invoice items in subscription previews. Specify it to be `true` (default) to include draft invoice items in the preview result. Specify it to be `false` to excludes draft invoice items in the preview result. |\n| previewType | 206.0 and earlier| [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\") | The type of preview you will receive. The possible values are `InvoiceItem`(default), `ChargeMetrics`, and `InvoiceItemChargeMetrics`. |\n| previewType | 207.0 and later | [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\") | The type of preview you will receive. The possible values are `LegalDoc`(default), `ChargeMetrics`, and `LegalDocChargeMetrics`. |\n| runBilling | 211.0 and later | [Create Subscription](/v1-api-reference/api/subscriptions/post_subscription \"Create Subscription\"); [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\"); [Renew Subscription](/v1-api-reference/api/subscriptions/put_renewsubscription \"Renew Subscription\"); [Cancel Subscription](/v1-api-reference/api/subscriptions/put_cancelsubscription \"Cancel Subscription\"); [Suspend Subscription](/v1-api-reference/api/subscriptions/put_suspendsubscription/ \"Suspend Subscription\"); [Resume Subscription](/v1-api-reference/api/subscriptions/put_resumesubscription/ \"Resume Subscription\"); [Create Account](/v1-api-reference/api/accounts/post_account \"Create Account\")|Generates an invoice or credit memo for a subscription. **Note:** Credit memos are only available if you have the Invoice Settlement feature enabled. |\n| invoiceDate | 214.0 and earlier | [Invoice and Collect](/api-references/api/operation/POST_TransactionInvoicePayment \"Invoice and Collect\") |Date that should appear on the invoice being generated, as `yyyy-mm-dd`. |\n| invoiceTargetDate | 214.0 and earlier | [Invoice and Collect](/api-references/api/operation/POST_TransactionInvoicePayment \"Invoice and Collect\") |Date through which to calculate charges on this account if an invoice is generated, as `yyyy-mm-dd`. |\n| documentDate | 215.0 and later | [Invoice and Collect](/api-references/api/operation/POST_TransactionInvoicePayment \"Invoice and Collect\") |Date that should appear on the invoice and credit memo being generated, as `yyyy-mm-dd`. |\n| targetDate | 215.0 and later | [Invoice and Collect](/api-references/api/operation/POST_TransactionInvoicePayment \"Invoice and Collect\") |Date through which to calculate charges on this account if an invoice or a credit memo is generated, as `yyyy-mm-dd`. |\n| memoItemAmount | 223.0 and earlier | [Create credit memo from charge](/api-references/api/operation/POST_CreditMemoFromPrpc \"Create credit memo from charge\"); [Create debit memo from charge](/api-references/api/operation/POST_DebitMemoFromPrpc \"Create debit memo from charge\") | Amount of the memo item. |\n| amount | 224.0 and later | [Create credit memo from charge](/api-references/api/operation/POST_CreditMemoFromPrpc \"Create credit memo from charge\"); [Create debit memo from charge](/api-references/api/operation/POST_DebitMemoFromPrpc \"Create debit memo from charge\") | Amount of the memo item. |\n| subscriptionNumbers | 222.4 and earlier | [Create order](/api-references/api/operation/POST_Order \"Create order\") | Container for the subscription numbers of the subscriptions in an order. |\n| subscriptions | 223.0 and later | [Create order](/api-references/api/operation/POST_Order \"Create order\") | Container for the subscription numbers and statuses in an order. |\n| creditTaxItems | 238.0 and earlier | [Get credit memo items](/api-references/api/operation/GET_CreditMemoItems \"Get credit memo items\"); [Get credit memo item](/api-references/api/operation/GET_CreditMemoItem \"Get credit memo item\") | Container for the taxation items of the credit memo item. |\n| taxItems | 238.0 and earlier | [Get debit memo items](/api-references/api/operation/GET_DebitMemoItems \"Get debit memo items\"); [Get debit memo item](/api-references/api/operation/GET_DebitMemoItem \"Get debit memo item\") | Container for the taxation items of the debit memo item. |\n| taxationItems | 239.0 and later | [Get credit memo items](/api-references/api/operation/GET_CreditMemoItems \"Get credit memo items\"); [Get credit memo item](/api-references/api/operation/GET_CreditMemoItem \"Get credit memo item\"); [Get debit memo items](/api-references/api/operation/GET_DebitMemoItems \"Get debit memo items\"); [Get debit memo item](/api-references/api/operation/GET_DebitMemoItem \"Get debit memo item\") | Container for the taxation items of the memo item. |\n| chargeId | 256.0 and earlier | [Create credit memo from charge](/api-references/api/operation/POST_CreditMemoFromPrpc \"Create credit memo from charge\"); [Create debit memo from charge](/api-references/api/operation/POST_DebitMemoFromPrpc \"Create debit memo from charge\") | ID of the product rate plan charge that the memo is created from. |\n| productRatePlanChargeId | 257.0 and later | [Create credit memo from charge](/api-references/api/operation/POST_CreditMemoFromPrpc \"Create credit memo from charge\"); [Create debit memo from charge](/api-references/api/operation/POST_DebitMemoFromPrpc \"Create debit memo from charge\") | ID of the product rate plan charge that the memo is created from. |\n| comment | 256.0 and earlier | [Create credit memo from charge](/api-references/api/operation/POST_CreditMemoFromPrpc \"Create credit memo from charge\"); [Create debit memo from charge](/api-references/api/operation/POST_DebitMemoFromPrpc \"Create debit memo from charge\"); [Create credit memo from invoice](/api-references/api/operation/POST_CreditMemoFromInvoice \"Create credit memo from invoice\"); [Create debit memo from invoice](/api-references/api/operation/POST_DebitMemoFromInvoice \"Create debit memo from invoice\"); [Get credit memo items](/api-references/api/operation/GET_CreditMemoItems \"Get credit memo items\"); [Get credit memo item](/api-references/api/operation/GET_CreditMemoItem \"Get credit memo item\"); [Get debit memo items](/api-references/api/operation/GET_DebitMemoItems \"Get debit memo items\"); [Get debit memo item](/api-references/api/operation/GET_DebitMemoItem \"Get debit memo item\") | Comments about the product rate plan charge, invoice item, or memo item. |\n| description | 257.0 and later | [Create credit memo from charge](/api-references/api/operation/POST_CreditMemoFromPrpc \"Create credit memo from charge\"); [Create debit memo from charge](/api-references/api/operation/POST_DebitMemoFromPrpc \"Create debit memo from charge\"); [Create credit memo from invoice](/api-references/api/operation/POST_CreditMemoFromInvoice \"Create credit memo from invoice\"); [Create debit memo from invoice](/api-references/api/operation/POST_DebitMemoFromInvoice \"Create debit memo from invoice\"); [Get credit memo items](/api-references/api/operation/GET_CreditMemoItems \"Get credit memo items\"); [Get credit memo item](/api-references/api/operation/GET_CreditMemoItem \"Get credit memo item\"); [Get debit memo items](/api-references/api/operation/GET_DebitMemoItems \"Get debit memo items\"); [Get debit memo item](/api-references/api/operation/GET_DebitMemoItem \"Get debit memo item\") | Description of the the product rate plan charge, invoice item, or memo item. |\n| taxationItems | 309.0 and later | [Preview an order](/api-references/api/operation/POST_PreviewOrder \"Preview an order\") | List of taxation items for an invoice item or a credit memo item. |\n| batch | 309.0 and earlier | [Create a billing preview run](/api-references/api/operation/POST_BillingPreviewRun \"Create a billing preview run\") | The customer batches to include in the billing preview run. | \n| batches | 314.0 and later | [Create a billing preview run](/api-references/api/operation/POST_BillingPreviewRun \"Create a billing preview run\") | The customer batches to include in the billing preview run. |\n| taxationItems | 315.0 and later | [Preview a subscription](/api-references/api/operation/POST_PreviewSubscription \"Preview a subscription\"); [Update a subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update a subscription\")| List of taxation items for an invoice item or a credit memo item. |\n| billingDocument | 330.0 and later | [Create a payment schedule](/api-references/api/operation/POST_PaymentSchedule \"Create a payment schedule\"); [Create multiple payment schedules at once](/api-references/api/operation/POST_PaymentSchedules \"Create multiple payment schedules at once\")| The billing document with which the payment schedule item is associated. |\n| paymentId | 336.0 and earlier | [Add payment schedule items to a custom payment schedule](/api-references/api/operation/POST_AddItemsToCustomPaymentSchedule/ \"Add payment schedule items to a custom payment schedule\"); [Update a payment schedule](/api-references/api/operation/PUT_PaymentSchedule/ \"Update a payment schedule\"); [Update a payment schedule item](/api-references/api/operation/PUT_PaymentScheduleItem/ \"Update a payment schedule item\"); [Preview the result of payment schedule update](/api-references/api/operation/PUT_PaymentScheduleUpdatePreview/ \"Preview the result of payment schedule update\"); [Retrieve a payment schedule](/api-references/api/operation/GET_PaymentSchedule/ \"Retrieve a payment schedule\"); [Retrieve a payment schedule item](/api-references/api/operation/GET_PaymentScheduleItem/ \"Retrieve a payment schedule item\"); [List payment schedules by customer account](/api-references/api/operation/GET_PaymentSchedules/ \"List payment schedules by customer account\"); [Cancel a payment schedule](/api-references/api/operation/PUT_CancelPaymentSchedule/ \"Cancel a payment schedule\"); [Cancel a payment schedule item](/api-references/api/operation/PUT_CancelPaymentScheduleItem/ \"Cancel a payment schedule item\");[Skip a payment schedule item](/api-references/api/operation/PUT_SkipPaymentScheduleItem/ \"Skip a payment schedule item\");[Retry failed payment schedule items](/api-references/api/operation/POST_RetryPaymentScheduleItem/ \"Retry failed payment schedule items\") | ID of the payment to be linked to the payment schedule item.\n\n\n#### Version 207.0 and Later\n\nThe response structure of the [Preview Subscription](/api-references/api/operation/POST_PreviewSubscription) and [Update Subscription](/v1-api-reference/api/subscriptions/put_subscription \"Update Subscription\") methods are changed. The following invoice related response fields are moved to the invoice container:\n\n * amount\n * amountWithoutTax\n * taxAmount\n * invoiceItems\n * targetDate\n * chargeMetrics\n\n\n# API Names for Zuora Objects\n\nFor information about the Zuora business object model, see [Zuora Business Object Model](/rest-api/general-concepts/object-model/).\n\nYou can use the [Describe](/api-references/api/operation/GET_Describe) operation to list the fields of each Zuora object that is available in your tenant. When you call the operation, you must specify the API name of the Zuora object.\n\nThe following table provides the API name of each Zuora object:\n\n| Object | API Name |\n|-----------------------------------------------|--------------------------------------------|\n| Account | `Account` |\n| Accounting Code | `AccountingCode` |\n| Accounting Period | `AccountingPeriod` |\n| Amendment | `Amendment` |\n| Application Group | `ApplicationGroup` |\n| Billing Run |`BillingRun` - API name used in the [Describe](/api-references/api/operation/GET_Describe) operation, Export ZOQL queries, and Data Query.
`BillRun` - API name used in the [Actions](/v1-api-reference/api/Actions). See the CRUD oprations of [Bill Run](/v1-api-reference/api/Bill-Run) for more information about the `BillRun` object. `BillingRun` and `BillRun` have different fields. | \n| Billing Preview Run | `BillingPreviewRun` | \n| Configuration Templates | `ConfigurationTemplates` |\n| Contact | `Contact` |\n| Contact Snapshot | `ContactSnapshot` |\n| Credit Balance Adjustment | `CreditBalanceAdjustment` |\n| Credit Memo | `CreditMemo` |\n| Credit Memo Application | `CreditMemoApplication` |\n| Credit Memo Application Item | `CreditMemoApplicationItem` |\n| Credit Memo Item | `CreditMemoItem` |\n| Credit Memo Part | `CreditMemoPart` |\n| Credit Memo Part Item | `CreditMemoPartItem` |\n| Credit Taxation Item | `CreditTaxationItem` |\n| Custom Exchange Rate | `FXCustomRate` |\n| Debit Memo | `DebitMemo` |\n| Debit Memo Item | `DebitMemoItem` |\n| Debit Taxation Item | `DebitTaxationItem` |\n| Discount Applied Metrics | `DiscountAppliedMetrics` |\n| Entity | `Tenant` |\n| Fulfillment | `Fulfillment` |\n| Feature | `Feature` |\n| Gateway Reconciliation Event | `PaymentGatewayReconciliationEventLog` |\n| Gateway Reconciliation Job | `PaymentReconciliationJob` |\n| Gateway Reconciliation Log | `PaymentReconciliationLog` |\n| Invoice | `Invoice` |\n| Invoice Adjustment | `InvoiceAdjustment` |\n| Invoice Item | `InvoiceItem` |\n| Invoice Item Adjustment | `InvoiceItemAdjustment` |\n| Invoice Payment | `InvoicePayment` |\n| Invoice Schedule | `InvoiceSchedule` |\n| Invoice Schedule Item | `InvoiceScheduleItem` |\n| Journal Entry | `JournalEntry` |\n| Journal Entry Item | `JournalEntryItem` |\n| Journal Run | `JournalRun` |\n| Notification History - Callout | `CalloutHistory` |\n| Notification History - Email | `EmailHistory` |\n| Offer | `Offer` |\n| Order | `Order` |\n| Order Action | `OrderAction` |\n| Order ELP | `OrderElp` |\n| Order Line Items | `OrderLineItems` | \n| Order Item | `OrderItem` |\n| Order MRR | `OrderMrr` |\n| Order Quantity | `OrderQuantity` |\n| Order TCB | `OrderTcb` |\n| Order TCV | `OrderTcv` |\n| Payment | `Payment` |\n| Payment Application | `PaymentApplication` |\n| Payment Application Item | `PaymentApplicationItem` |\n| Payment Method | `PaymentMethod` |\n| Payment Method Snapshot | `PaymentMethodSnapshot` |\n| Payment Method Transaction Log | `PaymentMethodTransactionLog` |\n| Payment Method Update | `UpdaterDetail` |\n| Payment Part | `PaymentPart` |\n| Payment Part Item | `PaymentPartItem` |\n| Payment Run | `PaymentRun` |\n| Payment Transaction Log | `PaymentTransactionLog` |\n| Price Book Item | `PriceBookItem` |\n| Processed Usage | `ProcessedUsage` |\n| Product | `Product` |\n| Product Charge Definition | `ProductChargeDefinition` | \n| Product Feature | `ProductFeature` |\n| Product Rate Plan | `ProductRatePlan` |\n| Product Rate Plan Definition | `ProductRatePlanDefinition` | \n| Product Rate Plan Charge | `ProductRatePlanCharge` |\n| Product Rate Plan Charge Tier | `ProductRatePlanChargeTier` |\n| Rate Plan | `RatePlan` |\n| Rate Plan Charge | `RatePlanCharge` |\n| Rate Plan Charge Tier | `RatePlanChargeTier` |\n| Refund | `Refund` |\n| Refund Application | `RefundApplication` |\n| Refund Application Item | `RefundApplicationItem` |\n| Refund Invoice Payment | `RefundInvoicePayment` |\n| Refund Part | `RefundPart` |\n| Refund Part Item | `RefundPartItem` |\n| Refund Transaction Log | `RefundTransactionLog` |\n| Revenue Charge Summary | `RevenueChargeSummary` |\n| Revenue Charge Summary Item | `RevenueChargeSummaryItem` |\n| Revenue Event | `RevenueEvent` |\n| Revenue Event Credit Memo Item | `RevenueEventCreditMemoItem` |\n| Revenue Event Debit Memo Item | `RevenueEventDebitMemoItem` |\n| Revenue Event Invoice Item | `RevenueEventInvoiceItem` |\n| Revenue Event Invoice Item Adjustment | `RevenueEventInvoiceItemAdjustment` |\n| Revenue Event Item | `RevenueEventItem` |\n| Revenue Event Item Credit Memo Item | `RevenueEventItemCreditMemoItem` |\n| Revenue Event Item Debit Memo Item | `RevenueEventItemDebitMemoItem` |\n| Revenue Event Item Invoice Item | `RevenueEventItemInvoiceItem` |\n| Revenue Event Item Invoice Item Adjustment | `RevenueEventItemInvoiceItemAdjustment` |\n| Revenue Event Type | `RevenueEventType` |\n| Revenue Schedule | `RevenueSchedule` |\n| Revenue Schedule Credit Memo Item | `RevenueScheduleCreditMemoItem` |\n| Revenue Schedule Debit Memo Item | `RevenueScheduleDebitMemoItem` |\n| Revenue Schedule Invoice Item | `RevenueScheduleInvoiceItem` |\n| Revenue Schedule Invoice Item Adjustment | `RevenueScheduleInvoiceItemAdjustment` |\n| Revenue Schedule Item | `RevenueScheduleItem` |\n| Revenue Schedule Item Credit Memo Item | `RevenueScheduleItemCreditMemoItem` |\n| Revenue Schedule Item Debit Memo Item | `RevenueScheduleItemDebitMemoItem` |\n| Revenue Schedule Item Invoice Item | `RevenueScheduleItemInvoiceItem` |\n| Revenue Schedule Item Invoice Item Adjustment | `RevenueScheduleItemInvoiceItemAdjustment` |\n| Subscription | `Subscription` |\n| Subscription Product Feature | `SubscriptionProductFeature` |\n| Taxable Item Snapshot | `TaxableItemSnapshot` |\n| Taxation Item | `TaxationItem` |\n| Updater Batch | `UpdaterBatch` |\n| Usage | `Usage` |\n"
contact:
email: docs@zuora.com
host: rest.zuora.com
basePath: /
schemes:
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: Product Rate Plan Charges
description: 'A product rate plan charge represents a charge model or a set of fees associated with a product rate plan, which is the part of a product that your customers subscribe to. Each product rate plan can have multiple product rate plan charges.
Product rate plan charges can be of three types: one-time fees, recurring fees, and usage fees. For example, the $50 activation fee for the Topaz product rate plan is a one-time product rate plan charge.
'
paths:
/v1/product-rate-plan-charges/{product-rate-plan-charge-key}:
get:
summary: Retrieve a product rate plan charge
operationId: GET_RetrieveProductRatePlanCharge
description: 'Retrieves basic information about a product rate plan charge.
'
tags:
- Product Rate Plan Charges
parameters:
- $ref: '#/parameters/GLOBAL_HEADER_Accept_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Content_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Authorization_OAuth_optional'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Track_Id'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- name: product-rate-plan-charge-key
in: path
description: 'The unique number or ID of the product rate plan charge to be retrieved.
'
required: true
type: string
- name: show-charge-definitions
in: query
description: "Specifies whether to include the product charge definitions of this charge in the response.\n\n**Note**: This parameter is applicable only if the Attribute-based Pricing feature is enabled. The Attribute-based Pricing feature in the **Early Adopter** phase. \nWe are actively soliciting feedback from a small set of early adopters. If you are interested, please reach out to your CSM.\n"
required: false
type: boolean
responses:
'200':
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
examples:
application/json:
id: 402882f28a1ab0bc018a1afb77b561a6
name: New Component
type: Recurring
model: Delivery
uom: null
pricingSummary:
- ''
pricing:
- currency: USD
price: 25.0
tiers: null
includedUnits: null
overagePrice: null
discountPercentage: null
discountAmount: null
defaultQuantity: null
applyDiscountTo: null
discountLevel: null
discountClass: null
productDiscountApplyDetails: []
endDateCondition: Subscription_End
upToPeriods: null
upToPeriodsType: null
billingDay: DefaultFromCustomer
listPriceBase: Per_Billing_Period
specificListPriceBase: null
billingTiming: IN_ADVANCE
ratingGroup: null
billingPeriod: Month
billingPeriodAlignment: AlignToCharge
specificBillingPeriod: null
smoothingModel: null
numberOfPeriods: null
overageCalculationOption: null
overageUnusedUnitsCreditOption: null
unusedIncludedUnitPrice: null
usageRecordRatingOption: null
priceChangeOption: null
priceIncreasePercentage: null
useTenantDefaultForPriceChange: true
taxable: false
taxCode: ''
taxMode: null
mig__c: null
Boolean__c: null
triggerEvent: ContractEffective
description: ''
revRecCode: null
revRecTriggerCondition: null
revenueRecognitionRuleName: Recognize upon invoicing
useDiscountSpecificAccountingCode: null
financeInformation:
deferredRevenueAccountingCode: ''
deferredRevenueAccountingCodeType: null
recognizedRevenueAccountingCode: ''
recognizedRevenueAccountingCodeType: null
accountsReceivableAccountingCode: Accounts Receivable
accountsReceivableAccountingCodeType: AccountsReceivable
deliverySchedule:
frequency: Weekly
monday: true
tuesday: true
wednesday: true
thursday: false
friday: false
saturday: false
sunday: true
isStackedDiscount: false
productRatePlanChargeNumber: PRPC-NEW-00000165
productChargeDefinitions: https://rest.zuora.com/v1/product-charge-definitions?charge=402882f28a1ab0bc018a1afb77b561a6
success: true
description: ''
schema:
$ref: '#/definitions/GETProductRatePlanChargeResponse'
/v1/object/product-rate-plan-charge:
post:
summary: 'CRUD: Create a product rate plan charge'
operationId: Object_POSTProductRatePlanCharge
description: "Creates a product rate plan charge for a specified rate plan charge. \n\nProduct rate plan charges can be of three types, one-time fees, recurring fees, and usage fees. \n"
tags:
- Product Rate Plan Charges
parameters:
- $ref: '#/parameters/GLOBAL_HEADER_Idempotency_Key'
- $ref: '#/parameters/GLOBAL_HEADER_Accept_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Content_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Authorization_OAuth_optional'
- $ref: '#/parameters/GLOBAL_REQUEST_rejectUnknownFields'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Track_Id'
- $ref: '#/parameters/GLOBAL_HEADER_X_Zuora_WSDL_Version'
- name: CreateRequest
in: body
description: ''
required: true
schema:
$ref: '#/definitions/ProxyCreateProductRatePlanCharge'
responses:
'200':
examples:
application/json:
Success: true
Id: 2c93808457d787030157e03197714910
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
schema:
$ref: '#/definitions/ProxyCreateOrModifyResponse'
'401':
examples:
application/json:
message: Authentication error
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
WWW-Authenticate:
type: string
enum:
- Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
description: 'The value of this header is:
```
Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
```
'
schema:
$ref: '#/definitions/ProxyUnauthorizedResponse'
/v1/object/product-rate-plan-charge/{id}:
get:
summary: 'CRUD: Retrieve a product rate plan charge'
operationId: Object_GETProductRatePlanCharge
description: ''
tags:
- Product Rate Plan Charges
parameters:
- $ref: '#/parameters/GLOBAL_HEADER_Accept_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Content_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Authorization_OAuth_optional'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Track_Id'
- $ref: '#/parameters/GLOBAL_HEADER_X_Zuora_WSDL_Version'
- name: fields
in: query
required: false
type: string
description: Object fields to return
- name: id
in: path
description: 'The unique ID of a product rate plan charge to be retrieved. For example, 2c93808457d787030157e031fcd34e19.
'
required: true
type: string
responses:
'200':
examples:
application/json:
PriceChangeOption: NoChange
IncludedUnits: 0
OverageCalculationOption: EndOfSmoothingPeriod
Id: 2c93808457d787030157e032002b4e21
AccountingCode: name_1476935155610
BillCycleDay: 1
BillingPeriod: Month
OverageUnusedUnitsCreditOption: NoCredit
CreatedById: 2c93808457d787030157e031dd264c85
RecognizedRevenueAccount: name_1476935155610
ChargeType: Recurring
BillCycleType: DefaultFromCustomer
DefaultQuantity: 1
UpToPeriodsType: Billing Periods
ProductRatePlanId: 2c93808457d787030157e031ff054e1e
Taxable: false
Description: Recurring Flat Fee Pricing
LegacyRevenueReporting: false
ChargeModel: Flat Fee Pricing
NumberOfPeriod: 1
BillingTiming: In Advance
PriceIncreasePercentage: 0
CreatedDate: '2016-10-20T05:45:55.000+02:00'
DeferredRevenueAccount: name_1476935155610
UpdatedById: 2c93808457d787030157e031dd264c85
Name: Recurring_Flat Fee Pricing1476935155610
ListPriceBase: Per Billing Period
EndDateCondition: SubscriptionEnd
TriggerEvent: ContractEffective
BillingPeriodAlignment: AlignToCharge
RevenueRecognitionRuleName: Recognize upon invoicing
UseTenantDefaultForPriceChange: true
UpdatedDate: '2016-10-20T05:45:55.000+02:00'
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
schema:
$ref: '#/definitions/ProxyGetProductRatePlanCharge'
'401':
examples:
application/json:
message: Authentication error
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
WWW-Authenticate:
type: string
enum:
- Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
description: 'The value of this header is:
```
Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
```
'
schema:
$ref: '#/definitions/ProxyUnauthorizedResponse'
'404':
examples:
application/json:
records: {}
size: 0
done: true
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
schema:
$ref: '#/definitions/ProxyNoDataResponse'
put:
summary: 'CRUD: Update a product rate plan charge'
operationId: Object_PUTProductRatePlanCharge
description: 'Updates the information about a product rate plan charge.
'
tags:
- Product Rate Plan Charges
parameters:
- $ref: '#/parameters/GLOBAL_HEADER_Accept_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Content_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Authorization_OAuth_optional'
- $ref: '#/parameters/GLOBAL_REQUEST_rejectUnknownFields'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Track_Id'
- $ref: '#/parameters/GLOBAL_HEADER_X_Zuora_WSDL_Version'
- name: ModifyRequest
in: body
description: ''
required: true
schema:
$ref: '#/definitions/ProxyModifyProductRatePlanCharge'
- name: id
in: path
description: 'The unique ID of the product rate plan charge to be updated. For example, 2c93808457d787030157e031fcd34e19.
'
required: true
type: string
responses:
'200':
examples:
application/json:
Success: true
Id: 2c93808457d787030157e03197714910
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
schema:
$ref: '#/definitions/ProxyCreateOrModifyResponse'
'401':
examples:
application/json:
message: Authentication error
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
WWW-Authenticate:
type: string
enum:
- Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
description: 'The value of this header is:
```
Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
```
'
schema:
$ref: '#/definitions/ProxyUnauthorizedResponse'
'404':
examples:
application/json:
records: {}
size: 0
done: true
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
schema:
$ref: '#/definitions/ProxyNoDataResponse'
delete:
summary: 'CRUD: Delete a product rate plan charge'
operationId: Object_DELETEProductRatePlanCharge
description: 'Deletes a product rate plan charge.
'
tags:
- Product Rate Plan Charges
parameters:
- $ref: '#/parameters/GLOBAL_HEADER_Accept_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Content_Encoding'
- $ref: '#/parameters/GLOBAL_HEADER_Authorization_OAuth_optional'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Track_Id'
- name: id
in: path
description: 'The unique ID of the product rate plan charge to be deleted. For example, 2c93808457d787030157e031fcd34e19.
'
required: true
type: string
responses:
'200':
examples:
application/json:
success: true
id: 2c93808457d787030157e031fcd34e19
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
schema:
$ref: '#/definitions/ProxyDeleteResponse'
'401':
examples:
application/json:
message: Authentication error
description: ''
headers:
Content-Encoding:
type: string
description: "This header is returned if you specify the `Accept-Encoding: gzip` request header and the response contains over 1000 bytes of data.\n\nNote that only the following MIME types support gzipped responses:\n - `application/json`\n - `application/xml`\n - `text/html`\n - `text/csv`\n - `text/plain`\n"
RateLimit-Limit:
type: string
description: 'The request limit quota for the time window closest to exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Remaining:
type: number
description: 'The number of requests remaining in the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
RateLimit-Reset:
type: number
description: 'The number of seconds until the quota resets for the time window closest to quota exhaustion. See [rate limits](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Policies/Concurrent_Request_Limits#Rate_limits) for more information.
'
Zuora-Request-Id:
type: string
minLength: 36
maxLength: 36
description: 'The Zuora internal identifier of the API call. You cannot control the value of this header.
'
Zuora-Track-Id:
type: string
maxLength: 64
description: 'A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.
'
WWW-Authenticate:
type: string
enum:
- Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
description: 'The value of this header is:
```
Basic realm=Zuora API, ZSession realm=Zuora API, Bearer realm=Zuora API
```
'
schema:
$ref: '#/definitions/ProxyUnauthorizedResponse'
definitions:
ProxyDeleteResponse:
properties:
id:
description: ''
type: string
success:
description: ''
type: boolean
type: object
ProxyCreateOrModifyProductRatePlanChargeChargeModelConfiguration:
description: "Container for charge model configuration data.\n\n**Notes**:\n - This field is only available if you have the Pre-Rated Pricing or Multi-Attribute Pricing charge models enabled. These charge models are available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.\n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `102` or later. Otherwise, an error occurs with \"Code: INVALID_VALUE\".\n"
properties:
ConfigurationItem:
description: 'An array of Charge Model Configuration Key-Value pairs.
'
items:
$ref: '#/definitions/ProxyCreateOrModifyProductRatePlanChargeChargeModelConfigurationItem'
type: array
title: ChargeModelConfiguration
type: object
ProductRatePlanChargeObjectCustomFields:
additionalProperties:
description: 'Custom fields of the Product Rate Plan Charge object. The name of each custom field has the form *customField*__c. Custom field names are case sensitive. See [Manage Custom Fields](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/Manage_Custom_Fields) for more information.
'
description: 'Container for custom fields of a Product Rate Plan Charge object.
'
title: productRatePlanChargeFieldsCustom
type: object
ProxyGetProductRatePlanCharge:
allOf:
- properties:
AccountingCode:
description: 'The accounting code for the charge. Accounting codes group transactions that contain similar accounting attributes.
'
maxLength: 100
type: string
ApplyDiscountTo:
description: 'Specifies the type of charges that you want a specific discount to apply to. All field values are case sensitive and in all-caps.
'
enum:
- ONETIME (1)
- RECURRING (2)
- USAGE (4)
- ONETIMERECURRING (3)
- ONETIMEUSAGE (5)
- RECURRINGUSAGE (6)
- ONETIMERECURRINGUSAGE (7)
type: string
BillCycleDay:
description: '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.
**Character limit**: 2
**Values**: a valid BCD integer, 1 - 31
'
format: int32
type: integer
BillCycleType:
description: "Specifies how to determine the billing day for the charge. \n"
enum:
- DefaultFromCustomer
- SpecificDayofMonth
- SubscriptionStartDay
- ChargeTriggerDay
- SpecificDayofWeek
- TermStartDay
- TermEndDay
type: string
BillingPeriod:
description: 'The billing period for the charge. The start day of the billing period is also called the bill cycle day (BCD).
'
enum:
- Month
- Quarter
- Annual
- Semi-Annual
- Specific Months
- Subscription Term
- Week
- Specific Weeks
- Specific Days
type: string
BillingPeriodAlignment:
description: 'Aligns charges within the same subscription if multiple charges begin on different dates.
'
enum:
- AlignToCharge
- AlignToSubscriptionStart
- AlignToTermStart
- AlignToTermEnd
type: string
BillingTiming:
description: "The billing timing for the charge. You can choose to bill in advance or in arrears for recurring charge types. This field is not used in one-time or usage based charge types.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
enum:
- In Advance
- In Arrears
type: string
ChargeModel:
description: 'Determines how to calculate charges. Charge models must be individually activated in Zuora Billing administration.
'
enum:
- 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
type: string
ChargeType:
description: 'Specifies the type of charge.
'
enum:
- OneTime
- Recurring
- Usage
type: string
CreatedById:
description: 'The automatically generated ID of the Zuora user who created the `ProductRatePlanCharge` object.
'
maxLength: 32
type: string
CreatedDate:
description: 'The date when the `ProductRatePlanCharge` object was created.
'
format: date-time
maxLength: 29
type: string
DefaultQuantity:
description: 'The default quantity of units, such as the number of authors in a hosted wiki service. This field is required if you use a per-unit pricing model.
**Character limit**: 16
**Values**: a valid quantity value.
**Note**: When `ChargeModel` is `Tiered Pricing` or `Volume Pricing`, if this field is not specified, the value will default to `0`.
'
format: double
type: number
DeferredRevenueAccount:
description: "The name of the deferred revenue account for this charge.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
maxLength: 100
type: string
Description:
description: 'A description of the charge.
'
maxLength: 500
type: string
DiscountLevel:
description: 'Specifies if the discount applies to just the product rate plan, the entire subscription, or to any activity in the account.
'
enum:
- rateplan
- subscription
- account
type: string
EndDateCondition:
default: SubscriptionEnd
description: "Defines when the charge ends after the charge trigger date.\n\n**Values**: \n - `SubscriptionEnd`: The charge ends on the subscription end date after a specified period based on the trigger date of the charge. \n - `FixedPeriod`: The charge ends after a specified period based on the trigger date of the charge. If you set this field to `FixedPeriod`, you must specify the length of the period and a period type by defining the `UpToPeriods` and `UpToPeriodsType` fields. \n\n **Note**: If the subscription ends before the charge end date, the charge ends when the subscription ends. But if the subscription end date is subsequently changed through a Renewal, or Terms and Conditions amendment, the charge will end on the charge end date.\n"
enum:
- SubscriptionEnd
- FixedPeriod
type: string
ExcludeItemBillingFromRevenueAccounting:
description: "The flag to exclude the related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting.\n\n**Notes**: \n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `115` or later. Otherwise, an error occurs.\n - This field is only available if you have the Billing - Revenue Integration feature enabled. \n"
type: boolean
ExcludeItemBookingFromRevenueAccounting:
description: "The flag to exclude the related rate plan charges and order line items from revenue accounting.\n\n**Notes**: \n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `115` or later. Otherwise, an error occurs.\n - This field is only available if you have the Billing - Revenue Integration feature enabled. \n"
type: boolean
Id:
description: Object identifier.
type: string
IncludedUnits:
description: 'Specifies the number of units in the base set of units.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
IsAllocationEligible:
description: 'Indicates whether the charge segment is allocation eligible in revenue recognition. The default value is `False`.
**Values**: `True`, `False`
**Note**: This field is available only if you have the Additional Revenue Fields property enabled.
'
type: boolean
IsUnbilled:
description: "Specifies how to perform the accounting during revenue recognition. The default value is `False`.\n\n**Values**: `True`, `False`\n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: boolean
LegacyRevenueReporting:
description: ''
type: boolean
ListPriceBase:
description: 'The list price base for the product rate plan charge.
'
enum:
- Per Billing Period
- Per Month
- Per Week
- Per Year
- Per Specific Months
type: string
MaxQuantity:
description: 'Specifies the maximum number of units for this charge. Use this field and the `MinQuantity` field to create a range of units allowed in a product rate plan charge.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
MinQuantity:
description: 'Specifies the minimum number of units for this charge. Use this field and the `MaxQuantity` field to create a range of units allowed in a product rate plan charge.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
Name:
description: 'The name of the product rate plan charge.
'
maxLength: 100
type: string
NumberOfPeriod:
description: 'Specifies the number of periods to use when calculating charges in an overage smoothing charge model. The valid value is a positive whole number.
'
format: int64
type: integer
OverageCalculationOption:
description: "Determines when to calculate overage charges. If the value of the SmoothingMode field is not specified, the value of this field is ignored.\n\n**Values**: \n - `EndOfSmoothingPeriod`: This option is used by default. The overage is charged at the end of the smoothing period.\n - `PerBillingPeriod`: The overage is charged on-demand rather than waiting until the end of the smoothing period.\n"
enum:
- EndOfSmoothingPeriod
- PerBillingPeriod
type: string
OverageUnusedUnitsCreditOption:
description: 'Determines whether to credit the customer with unused units of usage.
'
enum:
- NoCredit
- CreditBySpecificRate
type: string
PriceChangeOption:
default: NoChange
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- NoChange
- SpecificPercentageValue
- UseLatestProductCatalogPricing
type: string
PriceIncreasePercentage:
description: 'Specifies the percentage to increase or decrease the price of a termed subscription''s renewal. Use this field if you set the value to `SpecificPercentageValue`.
**Character limit**: 16
**Values**: a decimal value between -100 and 100
'
format: double
type: number
ProductCategory:
description: "This field is used to maintain the product category for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductClass:
description: "This field is used to maintain the product class for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductFamily:
description: "This field is used to maintain the product family for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled.\n"
type: string
ProductLine:
description: "This field is used to maintain the product line for integration with Zuora Revenue.\n\n **Note**: This field is available only if you have the Additional Revenue Fields property enabled.\n"
type: string
ProductRatePlanId:
description: 'The ID of the product rate plan associated with this product rate plan charge.
'
maxLength: 32
type: string
RatingGroup:
description: "A rating group based on which usage records are rated. Only applicable to Usage charges.\n\nPossible values:\n - `ByBillingPeriod`: The rating is based on all the usages in a billing period.\n - `ByUsageStartDate`: The rating is based on all the usages on the same usage start date. \n - `ByUsageRecord`: The rating is based on each usage record.\n - `ByUsageUpload`: The rating is based on all the usages in a uploaded usage file (`.xls` or `.csv`).\n - `ByGroupId`: The rating is based on all the usages in a custom group.\n\nFor more information, see [Usage rating by group](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Usage/Usage_Rating_by_Group).\n"
enum:
- ByBillingPeriod
- ByUsageStartDate
- ByUsageRecord
- ByUsageUpload
- ByGroupId
type: string
RecognizedRevenueAccount:
description: "The name of the recognized revenue account for this charge.\n - Required when the Allow Blank Accounting Code setting is No.\n - Optional when the Allow Blank Accounting Code setting is Yes.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
maxLength: 100
type: string
RevRecCode:
description: 'Associates this product rate plan charge with a specific revenue recognition code.
'
maxLength: 70
type: string
RevRecTriggerCondition:
description: 'Specifies when revenue recognition begins.
'
enum:
- ContractEffectiveDate
- ServiceActivationDate
- CustomerAcceptanceDate
type: string
RevenueRecognitionRuleName:
description: 'Determines when to recognize the revenue for this charge.
'
enum:
- Recognize upon invoicing
- Recognize daily over time
type: string
SmoothingModel:
description: 'Specifies the smoothing model for an overage smoothing charge model.
'
enum:
- RollingWindow
- Rollover
type: string
SpecificBillingPeriod:
description: 'Customizes the number of months or weeks for the charges billing period. This field is required if you set the value of the BillingPeriod field to `Specific Months` or `Specific Weeks`.
The valid value is a positive integer.
'
format: int64
type: integer
SpecificListPriceBase:
description: "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`.\n\n**Notes**: \n - This field is available only if you have the Annual List Price feature enabled.\n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `129` or later. Otherwise, an error occurs.\n - The value of this field is `null` if you do not set the value of the `ListPriceBase` field to `Per Specific Months`.\n"
TaxCode:
description: 'Specifies the tax code for taxation rules. Required when the Taxable field is set to `True`.
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
maxLength: 64
type: string
TaxMode:
description: 'Determines how to define taxation for the charge. Required when the Taxable field is set to `True`.
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
enum:
- TaxExclusive
- TaxInclusive
type: string
Taxable:
description: 'Determines whether the charge is taxable. When set to `True`, the TaxMode and TaxCode fields are required when creating or updating th ProductRatePlanCharge object.
**Character limit**: 5
**Values**: `True`, `False`
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
type: boolean
TriggerEvent:
description: "Specifies when to start billing the customer for the charge.\n\n**Values**:\n - `ContractEffective` is the date when the subscription's contract goes into effect and the charge is ready to be billed.\n - `ServiceActivation` is the date when the services or products for a subscription have been activated and the customers have access.\n - `CustomerAcceptance` is when the customer accepts the services or products for a subscription.\n"
enum:
- ContractEffective
- ServiceActivation
- CustomerAcceptance
type: string
UOM:
description: "Specifies the units to measure usage. \n\n**Note**: You must specify this field when creating the following charge models:\n - Per Unit Pricing\n - Volume Pricin\n - Overage Pricing\n - Tiered Pricing\n - Tiered with Overage Pricing\n"
maxLength: 25
type: string
UpToPeriods:
description: "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.\n\n**Character limit**: 5\n\n**Values**: a whole number between 0 and 65535, exclusive\n\n**Notes**:\n - You must use this field together with the `UpToPeriodsType` field to specify the time period. This field is applicable only when the `EndDateCondition` field is set to `FixedPeriod`. \n - 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.\n"
format: int64
type: integer
UpToPeriodsType:
default: Billing Periods
description: "The period type used to define when the charge ends.\n\n**Notes**: \n - You must use this field together with the `UpToPeriods` field to specify the time period.\n - This field is applicable only when the `EndDateCondition` field is set to `FixedPeriod`. \n"
enum:
- Billing Periods
- Days
- Weeks
- Months
- Years
type: string
UpdatedById:
description: 'The ID of the last user to update the object.
'
maxLength: 32
type: string
UpdatedDate:
description: 'The date when the object was last updated.
'
format: date-time
maxLength: 29
type: string
UseDiscountSpecificAccountingCode:
description: 'Determines whether to define a new accounting code for the new discount charge.
**Character limit**: 5
**Values**: `True`, `False`
'
type: boolean
UseTenantDefaultForPriceChange:
description: "Applies the tenant-level percentage uplift value for an automatic price change to a termed subscription's renewal. \n\n**Character limit**: 5\n\n**Values**: `true`, `false`\n"
type: boolean
WeeklyBillCycleDay:
description: "Specifies which day of the week as the bill cycle day (BCD) for the charge.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
enum:
- Sunday
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
- Saturday
type: string
applyToBillingPeriodPartially:
description: 'Allow the discount duration to be aligned with the billing period partially.
**Note**: You must enable the [Enhanced Discount](https://knowledgecenter.zuora.com/Zuora_Billing/Build_products_and_prices/Basic_concepts_and_terms/B_Charge_Models/D_Manage_Enhanced_Discount) feature to access this field.
'
type: boolean
type: object
- $ref: '#/definitions/ProductRatePlanChargeObjectNSFields'
- $ref: '#/definitions/ProductRatePlanChargeObjectCustomFields'
ProxyUnauthorizedResponse:
properties:
message:
description: 'Error message.
If the error message is "Authentication error", ensure that the `Authorization` request header contains valid authentication credentials, then retry the request. See [Authentication](/rest-api/general-concepts/authentication/) for more information.
If the error message is "Failed to get user info", retry the request.
'
type: string
type: object
GETRatePlanChargePricing:
properties:
currency:
description: 'The currency for the price.
'
type: string
discountAmount:
description: 'The specific amount for a fixed discount. This field is applicable for charges based on the Discount-Fixed Amount charge model.
'
format: double
type: number
discountPercentage:
description: 'The percentage of discount for a percentage discount. This field is applicable for charges based on the Discount-Percentage charge model.
'
format: double
type: number
includedUnits:
description: "The number of units included in this price item. \n\nThis field is only applicable for charges based on the Overage Pricing charge model.\n"
type: number
overagePrice:
description: "The overage price of the price item. \n\nThis field is only applicable for charges based on the Overage Pricing or Tiered with Overage Pricing charge model.\n"
type: number
price:
description: "The price. \n\nThis field is only applicable for charges based on the following charge models:\n - Flat Fee\n - Per Unit\n - Delivery Pricing\n"
type: number
tiers:
description: "Container for the tiers of the price item. \n\nThis field is only applicable for charges based on the following charge models:\n - Tiered Pricing\n - Volume Pricing\n - Tiered with Overage Pricing\n"
items:
$ref: '#/definitions/GETRatePlanChargePricingTier'
type: array
type: object
ProxyNoDataResponse:
properties:
done:
description: ''
type: boolean
records:
description: ''
items:
type: object
type: array
size:
description: ''
type: integer
type: object
GETProductRatePlanChargeResponse:
properties:
applyDiscountTo:
description: 'Indicates which type of charge the discount charge applies to.
'
enum:
- ONETIME
- RECURRING
- USAGE
- ONETIMERECURRING
- ONETIMEUSAGE
- RECURRINGUSAGE
- ONETIMERECURRINGUSAGE
type: string
billingDay:
description: 'The bill cycle type for this charge.
'
type: string
billingPeriod:
description: 'The billing period for this charge.
'
type: string
billingPeriodAlignment:
description: 'The billing period alignment setting for this charge.
'
enum:
- AlignToCharge
- AlignToSubscriptionStart
- AlignToTermStart
- AlignToTermEnd
type: string
billingTiming:
description: 'The billing timing for this charge.
'
enum:
- IN_ADVANCE
- IN_ARREARS
type: string
customFields:
$ref: '#/definitions/ProductRatePlanChargeObjectCustomFields'
defaultQuantity:
description: "The default quantity. \n\nThis field is applicable only for one-time and recurring charges.\n"
type: number
deliverySchedule:
$ref: '#/definitions/GETDeliverySchedule'
description:
description: 'The description for this charge.
'
type: string
discountClass:
description: 'The class that 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](https://knowledgecenter.zuora.com/BC_Subscription_Management/Product_Catalog/B_Charge_Models/Manage_Discount_Classes).
'
type: string
discountLevel:
description: '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.
'
enum:
- rateplan
- subscription
- account
type: string
endDateCondition:
description: 'The end date condition for this charge.
'
enum:
- Subscription_End
- One_Time
- Fixed_Period
- Specific_End_Date
type: string
excludeItemBillingFromRevenueAccounting:
description: "Indicates whether to exclude the related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting.\n\n**Note**: This field is only available if you have the Order to Revenue or Billing - Revenue Integration feature enabled. \n"
type: boolean
excludeItemBookingFromRevenueAccounting:
description: '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.
'
type: boolean
financeInformation:
description: 'Container for the finance information of a product rate plan charge.
'
properties:
adjustmentLiabilityAccountingCode:
description: "The accounting code for adjustment liability. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
adjustmentLiabilityAccountingCodeType:
description: "The type associated with the adjustment liability accounting code. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
adjustmentRevenueAccountingCode:
description: "The accounting code for adjustment revenue. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
adjustmentRevenueAccountingCodeType:
description: "The type associated with the adjustment revenue accounting code. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
contractAssetAccountingCode:
description: "The accounting code for contract asset. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
contractAssetAccountingCodeType:
description: "The type associated with the contract asset accounting code. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
contractLiabilityAccountingCode:
description: "The accounting code for contract liability. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
contractLiabilityAccountingCodeType:
description: "The type associated with the contract liability accounting code. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
contractRecognizedRevenueAccountingCode:
description: "The accounting code for contract recognized revenue. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
contractRecognizedRevenueAccountingCodeType:
description: "The type associated with the contract recognized revenue accounting code. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
deferredRevenueAccountingCode:
description: 'The accounting code for deferred revenue, such as Monthly Recurring Liability.
'
type: string
deferredRevenueAccountingCodeType:
description: "The type associated with the deferred revenue accounting code, such as Deferred Revenue. \n"
type: string
recognizedRevenueAccountingCode:
description: "The accounting code for recognized revenue, such as Monthly Recurring Charges or Overage Charges. \n"
type: string
recognizedRevenueAccountingCodeType:
description: 'The type associated with the recognized revenue accounting code, such as Sales Revenue or Sales Discount.
'
type: string
unbilledReceivablesAccountingCode:
description: "The accounting code for unbilled receivables. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
unbilledReceivablesAccountingCodeType:
description: "The type associated with the unbilled receivables accounting code. \n\n**Note**: This field is only available if you have the Zuora Billing - Revenue Integration feature enabled.\n"
type: string
title: financeInformation
type: object
id:
description: 'The unique ID of the product rate plan charge.
'
type: string
isAllocationEligible:
description: 'Indicates whether the charge segment is allocation eligible in revenue recognition. The default value is `false`.
**Values**: `true`, `false`
**Note**: This field is available only if you have the Additional Revenue Fields property enabled.
'
type: boolean
isStackedDiscount:
description: "**Note**: This field is only applicable to the Discount - Percentage charge model.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 130 or higher. Otherwise, an error occurs.\n\nThis field indicates whether the discount is to be calculated as stacked discount. Possible values are as follows:\n - `True`: This is a stacked discount, which should be calculated by stacking with other discounts.\n - `False`: This is not a stacked discount, which should be calculated in sequence with other discounts.\n\nFor more information, see [Stacked discounts](https://knowledgecenter.zuora.com/Zuora_Billing/Products/Product_Catalog/B_Charge_Models/B_Discount_Charge_Models).\n"
type: boolean
isUnbilled:
description: "Specifies how to perform the accounting during revenue recognition. The default value is `false`.\n\n**Values**: `true`, `false`\n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: boolean
listPriceBase:
description: "The base of list price. \n\nThis field is applicable only for recurring charges.\n\n**Note**: The `Per_Year` enum value is available only if you have the Annual List Price feature enabled.\n"
enum:
- Per_Billing_Period
- Per_Month
- Per_Week
- Per_Year
type: string
model:
description: 'Determines how to calculate charges. Charge models must be individually activated in Zuora Billing administration.
'
enum:
- DiscountFixedAmount
- DiscountPercentage
- FlatFee
- PerUnit
- Overage
- Tiered
- TieredwithOverage
- Volume
- Delivery
- MultiAttributePricing
- PreratedPerUnit
- PreratedPricing
- HighWatermarkVolumePricing
- HighWatermarkTieredPricing
type: string
name:
description: 'The name of the product rate plan charge.
'
type: string
numberOfPeriod:
description: 'Indicates the number of periods to use when calculating charges in an overage smoothing charge model. The valid value is a positive whole number.
'
format: int64
type: integer
overageCalculationOption:
description: "Determines when to calculate overage charges. If the value of the SmoothingMode field is not specified, the value of this field is ignored.\n\n**Values**: \n - `EndOfSmoothingPeriod`: This option is used by default. The overage is charged at the end of the smoothing period.\n - `PerBillingPeriod`: The overage is charged on-demand rather than waiting until the end of the smoothing period.\n"
enum:
- EndOfSmoothingPeriod
- PerBillingPeriod
type: string
overageUnusedUnitsCreditOption:
description: 'Determines whether to credit the customer with unused units of usage.
'
enum:
- NoCredit
- CreditBySpecificRate
type: string
priceChangeOption:
default: NoChange
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- NoChange
- SpecificPercentageValue
- UseLatestProductCatalogPricing
type: string
priceIncreaseOption:
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- FromTenantPercentageValue
- SpecificPercentageValue
type: string
priceIncreasePercentage:
description: 'Specifies the percentage to increase or decrease the price of a termed subscription''s renewal. Use this field if you set the `priceIncreaseOption` field to `SpecificPercentageValue`.
**Character limit**: 16
**Values**: a decimal value between -100 and 100
'
format: double
type: number
pricing:
description: 'Container for the prices of the product rate plan charge.
'
items:
$ref: '#/definitions/GETRatePlanChargePricing'
type: array
pricingSummary:
description: "A concise description of the charge model and pricing that is suitable to show to your customers. \n\nWhen the rate plan charge model is `Tiered` and multi-currency is enabled, this field includes an array of string of each currency, and each string of currency includes tier price description separated by comma.\n\nFor the following charge models, the value of this field is an empty string:\n- Multi-Attribute Pricing\n- High Water Mark Tiered Pricing\n- High Water Mark Volume Pricing\n- Pre-Rated Per Unit Pricing\n- Pre-Rated Pricing\n\nThe charge models are available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.\n"
items:
type: string
type: array
productCategory:
description: "This field is used to maintain the product category for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
productChargeDefinitions:
description: 'A link to retrieve product charge definitions of this charge.
'
type: string
productClass:
description: "This field is used to maintain the product class for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
productDiscountApplyDetails:
description: "Container for the application details about a discount product rate plan charge. \n\nOnly discount product rate plan charges have values in this field.\n"
items:
$ref: '#/definitions/GETProductDiscountApplyDetailsType'
type: array
productFamily:
description: "This field is used to maintain the product family for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled.\n"
type: string
productLine:
description: "This field is used to maintain the product line for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled.\n"
type: string
productRatePlanChargeNumber:
description: 'The number of this product rate plan charge.
'
type: string
ratingGroup:
default: ByBillingPeriod
description: "Specifies a rating group based on which usage records are rated.\n\nPossible values: \n - `ByBillingPeriod`: The rating is based on all the usages in a billing period. \n - `ByUsageStartDate`: The rating is based on all the usages on the same usage start date. \n - `ByUsageRecord`: The rating is based on each usage record.\n - `ByUsageUpload`: The rating is based on all the usages in a uploaded usage file (`.xls` or `.csv`).\n - `ByGroupId`: The rating is based on all the usages in a custom group.\n\n**Notes:** \n - The `ByBillingPeriod` value can be applied for all charge models. \n - The `ByUsageStartDate`, `ByUsageRecord`, and `ByUsageUpload` values can only be applied for per unit, volume pricing, and tiered pricing charge models. \n - The `ByGroupId` value is only available if you have the Active Rating feature enabled.\n - Use this field only for Usage charges. One-Time Charges and Recurring Charges return `NULL`.\n"
enum:
- ByBillingPeriod
- ByUsageStartDate
- ByUsageRecord
- ByUsageUpload
- ByGroupId
type: string
recognizedRevenueAccount:
description: "The name of the recognized revenue account for this charge.\n - Required when the Allow Blank Accounting Code setting is No.\n - Optional when the Allow Blank Accounting Code setting is Yes.\n\n This feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/).\n"
maxLength: 100
type: string
revRecCode:
description: 'Associates this product rate plan charge with a specific revenue recognition code.
'
maxLength: 70
type: string
revRecTriggerCondition:
description: 'Specifies when revenue recognition begins.
'
enum:
- ContractEffectiveDate
- ServiceActivationDate
- CustomerAcceptanceDate
type: string
revenueRecognitionRuleName:
description: 'Determines when to recognize the revenue for this charge.
'
enum:
- Recognize upon invoicing
- Recognize daily over time
type: string
smoothingModel:
description: 'Specifies the smoothing model for an overage smoothing charge model.
'
enum:
- RollingWindow
- Rollover
type: string
specificBillingPeriod:
description: 'The specific number of billing periods for this charge.
'
type: number
specificListPriceBase:
description: '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`.
'
format: int32
maximum: 200
minimum: 1
type: integer
success:
description: 'Indicates whether the request succeeded.
'
type: boolean
taxCode:
description: 'Specifies the tax code for taxation rules. This field is required when the `Taxable` field is set to `True`.
**Note**: This value affects the tax calculation of the rate plan charge.
'
maxLength: 64
type: string
taxMode:
description: 'Determines how to define taxation for the charge. This field is required when the `Taxable` field is set to `True`.
**Note**: This value affects the tax calculation of the rate plan charge.
'
enum:
- TaxExclusive
- TaxInclusive
type: string
taxable:
description: 'Determines whether the charge is taxable. When set to `True`, the `TaxMode` and `TaxCode` fields are required when creating or updating th Product Rate Plan Charge object.
**Character limit**: 5
**Values**: `True`, `False`
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
type: boolean
triggerEvent:
description: "Specifies when to start billing the customer for the charge.\n\n**Values**:\n - `ContractEffective` is the date when the subscription's contract goes into effect and the charge is ready to be billed.\n - `ServiceActivation` is the date when the services or products for a subscription have been activated and the customers have access.\n - `CustomerAcceptance` is when the customer accepts the services or products for a subscription.\n"
enum:
- ContractEffective
- ServiceActivation
- CustomerAcceptance
type: string
type:
description: 'Specifies the type of charge.
'
enum:
- OneTime
- Recurring
- Usage
type: string
uom:
description: 'Indicates the units of measure (UOM) that is configured in **Settings > Billing** for the product rate plan charge.
'
type: string
upToPeriods:
description: 'The number of up-to-periods value for this charge.
'
type: number
upToPeriodsType:
description: 'The up-to-periods type setting for this charge.
'
enum:
- Billing_Periods
- Days
- Weeks
- Months
- Years
type: string
usageRecordRatingOption:
default: EndOfBillingPeriod
description: 'Determines how Zuora processes usage records for per-unit usage charges.
'
enum:
- EndOfBillingPeriod
- OnDemand
type: string
useDiscountSpecificAccountingCode:
description: 'Determines whether to define a new accounting code for the new discount charge.
**Character limit**: 5
**Values**: `True`, `False`
'
type: boolean
useTenantDefaultForPriceChange:
description: "Applies the tenant-level percentage uplift value for an automatic price change to a termed subscription's renewal. \n\n**Character limit**: 5\n\n**Values**: `true`, `false`\n"
type: boolean
type: object
GETDeliverySchedule:
properties:
frequency:
description: 'The frequency of the delivery. Only weekly delivery is supported now.
'
enum:
- Weekly
type: string
friday:
description: 'The flag to indicate whether the delivery happens on Friday.
'
type: boolean
monday:
description: 'The flag to indicate whether the delivery happens on Monday.
'
type: boolean
saturday:
description: 'The flag to indicate whether the delivery happens on Saturday.
'
type: boolean
sunday:
description: 'The flag to indicate whether the delivery happens on Sunday.
'
type: boolean
thursday:
description: 'The flag to indicate whether the delivery happens on Thursday.
'
type: boolean
tuesday:
description: 'The flag to indicate whether the delivery happens on Tuesday.
'
type: boolean
wendesday:
description: 'The flag to indicate whether the delivery happens on Wendesday.
'
type: boolean
title: DeliverySchedule
type: object
GETRatePlanChargePricingTier:
description: "Array of product rate plan charge tiers.\n\nYou should specify all relevant fields of all tiers, including pricing information for each currency.\n\nFor each currency, ensure that the tiers appear in ascending order of `StartingUnit`.\n\nFor example:\n\n```\n[\n {\n \"StartingUnit\": \"1\",\n \"EndingUnit\": \"150\",\n \"Currency\": \"USD\",\n \"Price\": 1.95,\n \"PriceFormat\": \"Per Unit\"\n },\n {\n \"StartingUnit\": \"151\",\n \"EndingUnit\": \"300\",\n \"Currency\": \"USD\",\n \"Price\": 1.45,\n \"PriceFormat\": \"Per Unit\"\n },\n {\n \"StartingUnit\": \"1\",\n \"EndingUnit\": \"150\",\n \"Currency\": \"EUR\",\n \"Price\": 1.75,\n \"PriceFormat\": \"Per Unit\"\n },\n {\n \"StartingUnit\": \"151\",\n \"EndingUnit\": \"300\",\n \"Currency\": \"EUR\",\n \"Price\": 1.30,\n \"PriceFormat\": \"Per Unit\"\n }\n]\n```\n"
items:
properties:
currency:
description: 'The code corresponding to the currency for the price tier.
'
type: string
discountAmount:
description: 'The specific amount for a fixed discount. This field is applicable for charges based on the Discount-Fixed Amount charge model.
'
format: double
type: number
discountPercentage:
description: 'The percentage of discount for a percentage discount. This field is applicable for charges based on the Discount-Percentage charge model.
'
format: double
type: number
endingUnit:
description: 'The end number of a range of units for the tier. This field is applicable for charges based on the Tiered Pricing or Tiered with Overage Pricing charge model.
'
format: double
type: number
overagePrice:
description: 'Indicates whether the price is an overage price, which is the price when usage surpasses the last defined tier.
'
format: double
type: number
price:
description: 'The price of the tier if the charge is a flat fee, or the price of each unit in the tier if the charge model is tiered pricing.
'
format: double
type: number
startingUnit:
description: 'The starting number of a range of units for the tier. This field is applicable for charges based on the Tiered Pricing or Tiered with Overage Pricing charge model.
'
format: double
type: number
type: object
type: array
ProductRatePlanChargeObjectNSFields:
description: 'Container for Product Rate Plan Charge fields provided by the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
properties:
Class__NS:
description: 'Class associated with the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
DeferredRevAccount__NS:
description: 'Deferrred revenue account associated with the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
Department__NS:
description: 'Department associated with the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
IncludeChildren__NS:
description: 'Specifies whether the corresponding item in NetSuite is visible under child subsidiaries. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
enum:
- 'Yes'
- 'No'
type: string
IntegrationId__NS:
description: 'ID of the corresponding object in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
IntegrationStatus__NS:
description: 'Status of the product rate plan charge''s synchronization with NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
ItemType__NS:
description: 'Type of item that is created in NetSuite for the product rate plan charge. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
enum:
- Inventory
- Non Inventory
- Service
type: string
Location__NS:
description: 'Location associated with the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
RecognizedRevAccount__NS:
description: 'Recognized revenue account associated with the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
RevRecEnd__NS:
description: 'End date condition of the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
enum:
- Charge Period Start
- Rev Rec Trigger Date
- Use NetSuite Rev Rec Template
type: string
RevRecStart__NS:
description: 'Start date condition of the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
enum:
- Charge Period Start
- Rev Rec Trigger Date
- Use NetSuite Rev Rec Template
type: string
RevRecTemplateType__NS:
description: 'Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
Subsidiary__NS:
description: 'Subsidiary associated with the corresponding item in NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
SyncDate__NS:
description: 'Date when the product rate plan charge was synchronized with NetSuite. Only available if you have installed the [Zuora Connector for NetSuite](https://www.zuora.com/connect/app/?appId=265).
'
maxLength: 255
type: string
title: productRatePlanChargeFieldsNS
type: object
ProxyCreateOrModifyProductRatePlanChargeChargeModelConfigurationItem:
properties:
Key:
description: 'The name of the field that is specified for a specific charge model.
Configuration keys supported are as follows:
* `formula` (only available if you have the Multi-Attribute Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.)
* `customFieldPerUnitRate` (only available if you have the Pre-Rated Per Unit Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.)
* `customFieldTotalAmount` (only available if you have the Pre-Rated Pricing model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.)
'
type: string
Value:
description: 'The value of the field that is specified in the `Key` field.
Possible values are follows:
* A valid pricing formula to calculate actual rating amount for each usage record. For example, `usageQuantity()*10`. Use it with Key `formula` when the Multi-Attribute Pricing charge model is used. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.
* A name of a usage custom field that carries the per-unit rate for a usage record. For example, `perUnitRate__c`. Use it with Key `customFieldPerUnitRate` when the Pre-Rated Per Unit Pricing charge model is used. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.
* A name of a usage custom field that carries the total amount for a usage record. For example, `totalAmount__c`. Use it with Key `customFieldTotalAmount` when the Pre-Rated Pricing model is used. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.
'
type: string
required:
- Key
- Value
title: ConfigurationItem
type: object
ProxyCreateOrModifyProductRatePlanChargeTierData:
description: 'Container for pricing information associated with the product rate plan charge.
'
properties:
ProductRatePlanChargeTier:
description: "Array of product rate plan charge tiers.\n\nYou should specify all relevant fields of all tiers, including pricing information for each currency.\n\nFor each currency, ensure that the tiers appear in ascending order of `StartingUnit`.\n\nFor example:\n\n```\n[\n {\n \"StartingUnit\": \"1\",\n \"EndingUnit\": \"150\",\n \"Currency\": \"USD\",\n \"Price\": 1.95,\n \"PriceFormat\": \"Per Unit\"\n },\n {\n \"StartingUnit\": \"151\",\n \"EndingUnit\": \"300\",\n \"Currency\": \"USD\",\n \"Price\": 1.45,\n \"PriceFormat\": \"Per Unit\"\n },\n {\n \"StartingUnit\": \"1\",\n \"EndingUnit\": \"150\",\n \"Currency\": \"EUR\",\n \"Price\": 1.75,\n \"PriceFormat\": \"Per Unit\"\n },\n {\n \"StartingUnit\": \"151\",\n \"EndingUnit\": \"300\",\n \"Currency\": \"EUR\",\n \"Price\": 1.30,\n \"PriceFormat\": \"Per Unit\"\n }\n]\n```\n"
items:
properties:
Currency:
description: 'The code corresponding to the currency for the tier''s price.
'
type: string
DiscountAmount:
description: 'The specific amount for a fixed discount. Required if the charge model of the product rate plan charge is `Discount-Fixed Amount`.
'
format: double
type: number
DiscountPercentage:
description: 'The percentage of discount for a percentage discount. Required if the charge model of the product rate plan charge is `Discount-Percentage`.
'
format: double
type: number
EndingUnit:
description: 'The end number of a range of units for the tier. Required if the charge model of the product rate plan charge is `Tiered Pricing` or `Tiered with Overage Pricing`.
'
format: double
type: number
IsOveragePrice:
description: 'Indicates if the price is an overage price, which is the price when usage surpasses the last defined tier.
'
type: boolean
Price:
description: 'The price of the tier if the charge is a flat fee, or the price of each unit in the tier if the charge model is tiered pricing.
'
format: double
type: number
PriceFormat:
description: 'Indicates if pricing is a flat fee or is per unit. This field is for tiered and volume pricing models only.
'
enum:
- Flat Fee
- Per Unit
type: string
StartingUnit:
description: 'The starting number of a range of units for the tier. Required if the charge model of the product rate plan charge is `Tiered Pricing` or `Tiered with Overage Pricing`.
'
format: double
type: number
type: object
type: array
title: productRatePlanChargeTierData
type: object
ProxyModifyProductRatePlanCharge:
allOf:
- properties:
AccountingCode:
description: 'The accounting code for the charge. Accounting codes group transactions that contain similar accounting attributes.
'
maxLength: 100
type: string
ApplyDiscountTo:
description: 'Specifies the type of charges that you want a specific discount to apply to. All field values are case sensitive and in all-caps.
'
enum:
- ONETIME (1)
- RECURRING (2)
- USAGE (4)
- ONETIMERECURRING (3)
- ONETIMEUSAGE (5)
- RECURRINGUSAGE (6)
- ONETIMERECURRINGUSAGE (7)
type: string
BillCycleDay:
description: '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.
**Character limit**: 2
**Values**: a valid BCD integer, 1 - 31
'
format: int32
type: integer
BillCycleType:
description: "Specifies how to determine the billing day for the charge.\n\n**Notes**:\n - If you set this field to `SpecificDayofMonth`, you must specify which day of the month as the billing day for the charge in the BillCycleDay field. \n - If you set this field to `SpecificDayofWeek`, you must specify which day of the week as the billing day for the charge in the WeeklyBillCycleDay field. \n - By default, `TermStartDay` and `TermEndDay` are only available for prepayment charges. But you can reach out to Zuora Global Support to request enabling it for non-prepaid recurring charges. Meanwhile, note the following rules applies to these options:\n - The Term End Day option of the Billing Day field must be coupled with the Align to Term End option of the Billing Period Alignment field.\n - For prepaid charges, the Term Start Day option of the Billing Day field must be coupled with the existing Align to Term Start option of the Billing Period Alignment field.\n - For non-prepaid recurring charges: If Billing Day is set to Term Start Day, Billing Period Alignment must be Align to Term Start; If Billing Day is set to Term End Day, Billing Period Alignment can be set to other values.\n"
enum:
- DefaultFromCustomer
- SpecificDayofMonth
- SubscriptionStartDay
- ChargeTriggerDay
- SpecificDayofWeek
- TermStartDay
- TermEndDay
type: string
BillingPeriod:
description: "The billing period for the charge. The start day of the billing period is also called the bill cycle day (BCD).\n\n**Notes**:\n - Specify the number of months or weeks in the SpecificBillingPeriod field if you set this field to `Specific Months` or `Specific Weeks`.\n - The `Subscription Term` value is in **Limited Availability**.\n"
enum:
- Month
- Quarter
- Annual
- Semi-Annual
- Specific Months
- Subscription Term
- Week
- Specific Weeks
- Specific Days
type: string
BillingPeriodAlignment:
description: 'Aligns charges within the same subscription if multiple charges begin on different dates.
**Note:** The `AlignToTermEnd` value is only available for prepayment charges by default. Reach out to Zuora Global Support to enable it for non-prepaid recurring charges.
'
enum:
- AlignToCharge
- AlignToSubscriptionStart
- AlignToTermStart
- AlignToTermEnd
type: string
BillingTiming:
description: "The billing timing for the charge. You can choose to bill in advance or in arrears for recurring charge types. This field is not used in one-time or usage based charge types.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
enum:
- In Advance
- In Arrears
type: string
ChargeModel:
description: "Determines how to calculate charges. Charge models must be individually activated in Zuora Billing administration.\n\n**Notes:**\n - The `Delivery Pricing` value is available only if you have the Delivery Pricing charge model enabled.\n - The `MultiAttributePricing` value is available only if you have the Multi-Attribute Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `PreratedPerUnit` and value is available only if you have the Pre-rated Per Unit Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `PreratedPricing` value is available only if you have the Pre-rated Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `HighWatermarkVolumePricing`value is available only if you have the High Water Mark Volume Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `HighWatermarkTieredPricing` value is available only if you have the High Water Mark Tiered Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.\n"
enum:
- 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
type: string
ChargeModelConfiguration:
$ref: '#/definitions/ProxyCreateOrModifyProductRatePlanChargeChargeModelConfiguration'
CreditOption:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe way to calculate credit. See [Credit Option](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge#Credit_Option) for more information. \n"
enum:
- TimeBased
- ConsumptionBased
- FullCreditBack
type: string
DefaultQuantity:
description: "The default quantity of units, such as the number of authors in a hosted wiki service. This field is required if you use a per-unit pricing model. \n\n**Character limit**: 16\n\n**Values**: a valid quantity value. \n\n**Note:** When the `ChargeModel` field is set to `Tiered Pricing` or `Volume Pricing`, if this field is not specified, the value will default to `0`.\n"
format: double
type: number
DeferredRevenueAccount:
description: "The name of the deferred revenue account for this charge.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
maxLength: 100
type: string
DeliverySchedule:
$ref: '#/definitions/ProxyCreateOrModifyDeliverySchedule'
Description:
description: 'A description of the charge.
'
maxLength: 500
type: string
DiscountLevel:
description: 'Specifies if the discount applies to just the product rate plan, the entire subscription, or to any activity in the account.
'
enum:
- rateplan
- subscription
- account
type: string
DrawdownRate:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
The [conversion rate](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_drawdown_charge#UOM_Conversion) between Usage UOM and Drawdown UOM for a [drawdown charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_drawdown_charge). See [Fields related to Prepaid with Drawdown](https://knowledgecenter.zuora.com/Central_Platform/API/G_SOAP_API/E1_SOAP_API_Object_Reference/ProductRatePlanCharge#Fields_related_to_Prepaid_with_Drawdown) for more information.
'
type: number
DrawdownUom:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nUnit of measurement for a [drawdown charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_drawdown_charge). \n"
type: string
EndDateCondition:
default: SubscriptionEnd
description: "Defines when the charge ends after the charge trigger date.\n\n**Values**:\n - `SubscriptionEnd`: The charge ends on the subscription end date after a specified period based on the trigger date of the charge. \n - `FixedPeriod`: The charge ends after a specified period based on the trigger date of the charge. If you set this field to `FixedPeriod`, you must specify the length of the period and a period type by defining the `UpToPeriods` and `UpToPeriodsType` fields. \n\n **Note**: If the subscription ends before the charge end date, the charge ends when the subscription ends. But if the subscription end date is subsequently changed through a Renewal, or Terms and Conditions amendment, the charge will end on the charge end date.\n"
enum:
- SubscriptionEnd
- FixedPeriod
type: string
ExcludeItemBillingFromRevenueAccounting:
default: false
description: "The flag to exclude the related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting.\n\n**Notes**: \n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `115` or later. Otherwise, an error occurs.\n - This field is only available if you have the Billing - Revenue Integration feature enabled. \n"
type: boolean
ExcludeItemBookingFromRevenueAccounting:
default: false
description: "The flag to exclude the related rate plan charges and order line items from revenue accounting.\n\n**Notes**: \n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `115` or later. Otherwise, an error occurs.\n - This field is only available if you have the Billing - Revenue Integration feature enabled. \n"
type: boolean
IncludedUnits:
description: 'Specifies the number of units in the base set of units.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
IsAllocationEligible:
description: 'Indicates whether the charge segment is allocation eligible in revenue recognition. The default value is `False`.
**Values**: `True`, `False`
**Note**: This field is available only if you have the Additional Revenue Fields property enabled.
'
type: boolean
IsPrepaid:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nIndicates whether this charge is a prepayment (topup) charge or a drawdown charge. \n\n**Values**: `true` or `false`.\n"
type: boolean
IsRollover:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
The value is either "True" or "False". It determines whether the rollover fields are needed.
'
type: boolean
IsStackedDiscount:
description: "**Note**: This field is only applicable to the Discount - Percentage charge model.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 130 or higher. Otherwise, an error occurs.\n\nThis field indicates whether the discount is to be calculated as stacked discount. Possible values are as follows:\n - `True`: This is a stacked discount, which should be calculated by stacking with other discounts.\n - `False`: This is not a stacked discount, which should be calculated in sequence with other discounts.\n\nFor more information, see [Stacked discounts](https://knowledgecenter.zuora.com/Zuora_Billing/Products/Product_Catalog/B_Charge_Models/B_Discount_Charge_Models). \n"
type: boolean
IsUnbilled:
description: "Specifies how to perform the accounting during revenue recognition. The default value is `False`.\n\n**Values**: `True`, `False`\n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: boolean
LegacyRevenueReporting:
description: ''
type: boolean
ListPriceBase:
description: 'The list price base for the product rate plan charge.
'
enum:
- Per Billing Period
- Per Month
- Per Week
- Per Year
- Per Specific Months
type: string
MaxQuantity:
description: 'Specifies the maximum number of units for this charge. Use this field and the `MinQuantity` field to create a range of units allowed in a product rate plan charge.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
MinQuantity:
description: 'Specifies the minimum number of units for this charge. Use this field and the `MaxQuantity` field to create a range of units allowed in a product rate plan charge.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
Name:
description: 'The name of the product rate plan charge.
'
maxLength: 100
type: string
NumberOfPeriod:
description: 'Specifies the number of periods to use when calculating charges in an overage smoothing charge model. The valid value must be a positive whole number.
'
format: int64
type: integer
OverageCalculationOption:
description: "Determines when to calculate overage charges. If the value of the SmoothingMode field is not specified, the value of this field is ignored.\n\n**Values**: \n - `EndOfSmoothingPeriod`: This option is used by default. The overage is charged at the end of the smoothing period.\n - `PerBillingPeriod`: The overage is charged on-demand rather than waiting until the end of the smoothing period.\n"
enum:
- EndOfSmoothingPeriod
- PerBillingPeriod
type: string
OverageUnusedUnitsCreditOption:
description: 'Determines whether to credit the customer with unused units of usage.
'
enum:
- NoCredit
- CreditBySpecificRate
type: string
PrepaidQuantity:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe number of units included in a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge). Must be a positive number.\n"
type: number
PrepaidUom:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
Unit of measurement for a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge).
'
type: string
PriceChangeOption:
default: NoChange
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- NoChange
- SpecificPercentageValue
- UseLatestProductCatalogPricing
type: string
PriceIncreaseOption:
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- FromTenantPercentageValue
- SpecificPercentageValue
type: string
PriceIncreasePercentage:
description: 'Specifies the percentage to increase or decrease the price of a termed subscription''s renewal. Use this field if you set the value to `SpecificPercentageValue`.
**Character limit**: 16
**Values**: a decimal value between -100 and 100
'
format: double
type: number
ProductCategory:
description: "This field is used to maintain the product category for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductClass:
description: "This field is used to maintain the product class for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductFamily:
description: "This field is used to maintain the product family for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled.\n"
type: string
ProductLine:
description: "This field is used to maintain the product line for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductRatePlanChargeNumber:
description: "The natural key of the product rate plan charge. \n\nFor existing Product Rate Plan Charge objects that are created before this field is introduced, this field will be null. Use this field to specify a value for only these objects. Zuora also provides a tool to help you automatically backfill this field with tenant ID for your existing product catalog. If you want to use this backfill tool, contact [Zuora Global Support](https://support.zuora.com/).\n\n**Note**: This field is only available if you set the `X-Zuora-WSDL-Version` request header to `133` or later.\n"
maxLength: 100
type: string
ProductRatePlanChargeTierData:
$ref: '#/definitions/ProxyCreateOrModifyProductRatePlanChargeTierData'
ProductRatePlanId:
description: 'The ID of the product rate plan associated with this product rate plan charge.
'
maxLength: 32
type: string
RatingGroup:
default: ByBillingPeriod
description: "Specifies a rating group based on which usage records are rated.\n\nPossible values:\n - `ByBillingPeriod`: The rating is based on all the usages in a billing period. \n - `ByUsageStartDate`: The rating is based on all the usages on the same usage start date. \n - `ByUsageRecord`: The rating is based on each usage record.\n - `ByUsageUpload`: The rating is based on all the usages in a uploaded usage file (`.xls` or `.csv`).\n - `ByGroupId`: The rating is based on all the usages in a custom group.\n\n**Note:** \n - The `ByBillingPeriod` value can be applied for all charge models. \n - The `ByUsageStartDate`, `ByUsageRecord`, and `ByUsageUpload` values can only be applied for per unit, volume pricing, and tiered pricing charge models. \n - The `ByGroupId` value is only available if you have the Active Rating feature enabled.\n - Use this field only for Usage charges. One-Time Charges and Recurring Charges return `NULL`.\n"
enum:
- ByBillingPeriod
- ByUsageStartDate
- ByUsageRecord
- ByUsageUpload
- ByGroupId
type: string
RecognizedRevenueAccount:
description: "The name of the recognized revenue account for this charge.\n - Required when the Allow Blank Accounting Code setting is No.\n - Optional when the Allow Blank Accounting Code setting is Yes.\n\n This feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
maxLength: 100
type: string
RevRecCode:
description: 'Associates this product rate plan charge with a specific revenue recognition code.
'
maxLength: 70
type: string
RevRecTriggerCondition:
description: 'Specifies when revenue recognition begins.
'
enum:
- ContractEffectiveDate
- ServiceActivationDate
- CustomerAcceptanceDate
type: string
RevenueRecognitionRuleName:
description: 'Determines when to recognize the revenue for this charge.
'
enum:
- Recognize upon invoicing
- Recognize daily over time
type: string
RolloverApply:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
This field defines the priority of rollover, which is either first or last.
'
enum:
- ApplyFirst
- ApplyLast
type: string
RolloverPeriods:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
This field defines the number of rollover periods, it is restricted to 3.
'
type: number
SmoothingModel:
description: 'Specifies the smoothing model for an overage smoothing charge model.
'
enum:
- RollingWindow
- Rollover
type: string
SpecificBillingPeriod:
description: 'Customizes the number of months or weeks for the charges billing period. This field is required if you set the value of the BillingPeriod field to `Specific Months` or `Specific Weeks`.
The valid value is a positive integer.
'
format: int64
type: integer
SpecificListPriceBase:
description: "The number of months for the list price base of the charge. This field is required if you set the value of the `ListPriceBase` field to `Per Specific Months`.\n\n**Notes**: \n - This field is available only if you have the Annual List Price feature enabled.\n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `129` or later. Otherwise, an error occurs.\n - The value of this field is `null` if you do not set the value of the `ListPriceBase` field to `Per Specific Months`.\n"
format: int32
maximum: 200
minimum: 1
type: integer
TaxCode:
description: 'Specifies the tax code for taxation rules. Required when the Taxable field is set to `True`.
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
maxLength: 64
type: string
TaxMode:
description: 'Determines how to define taxation for the charge. Required when the Taxable field is set to `True`.
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
enum:
- TaxExclusive
- TaxInclusive
type: string
Taxable:
description: 'Determines whether the charge is taxable. When set to `True`, the TaxMode and TaxCode fields are required when creating or updating th ProductRatePlanCharge object.
**Character limit**: 5
**Values**: `True`, `False`
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
type: boolean
TriggerEvent:
description: "Specifies when to start billing the customer for the charge.\n\n**Values**:\n - `ContractEffective` is the date when the subscription's contract goes into effect and the charge is ready to be billed.\n - `ServiceActivation` is the date when the services or products for a subscription have been activated and the customers have access.\n - `CustomerAcceptance` is when the customer accepts the services or products for a subscription.\n"
enum:
- ContractEffective
- ServiceActivation
- CustomerAcceptance
type: string
UOM:
description: "Specifies the units to measure usage. \n\n**Note**: You must specify this field when creating the following charge models:\n - Per Unit Pricing\n - Volume Pricing\n - Overage Pricing\n - Tiered Pricing\n - Tiered with Overage Pricing\n"
maxLength: 25
type: string
UpToPeriods:
description: "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.\n\n**Character limit**: 5\n\n**Values**: a whole number between 0 and 65535, exclusive\n\n**Notes**:\n - You must use this field together with the `UpToPeriodsType` field to specify the time period. This field is applicable only when the `EndDateCondition` field is set to `FixedPeriod`. \n - 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.\n"
format: int64
type: integer
UpToPeriodsType:
default: Billing Periods
description: "The period type used to define when the charge ends.\n\n**Notes**: \n - You must use this field together with the `UpToPeriods` field to specify the time period.\n - This field is applicable only when the `EndDateCondition` field is set to `FixedPeriod`. \n"
enum:
- Billing Periods
- Days
- Weeks
- Months
- Years
type: string
UsageRecordRatingOption:
default: EndOfBillingPeriod
description: "Determines how Zuora processes usage records for per-unit usage charges. \n"
enum:
- EndOfBillingPeriod
- OnDemand
type: string
UseDiscountSpecificAccountingCode:
description: 'Determines whether to define a new accounting code for the new discount charge.
**Character limit**: 5
**Values**: `True`, `False`
'
type: boolean
UseTenantDefaultForPriceChange:
description: "Applies the tenant-level percentage uplift value for an automatic price change to a termed subscription's renewal. \n\n**Character limit**: 5\n\n**Values**: `true`, `false`\n"
type: boolean
ValidityPeriodType:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe period in which the prepayment units are valid to use as defined in a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge).\n"
enum:
- SUBSCRIPTION_TERM
- ANNUAL
- SEMI_ANNUAL
- QUARTER
- MONTH
type: string
WeeklyBillCycleDay:
description: "Specifies which day of the week as the bill cycle day (BCD) for the charge.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
enum:
- Sunday
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
- Saturday
type: string
applyToBillingPeriodPartially:
description: 'Allow the discount duration to be aligned with the billing period partially.
**Note**: You must enable the [Enhanced Discount](https://knowledgecenter.zuora.com/Zuora_Billing/Build_products_and_prices/Basic_concepts_and_terms/B_Charge_Models/D_Manage_Enhanced_Discount) feature to access this field.
'
type: boolean
rolloverPeriodLength:
default: null
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 137 or higher. Otherwise, an error occurs.
The period length of the rollover fund.
'
type: integer
required:
- BillCycleType
- BillingPeriod
- ChargeModel
- ProductRatePlanChargeTierData
- ProductRatePlanId
- TriggerEvent
- UseDiscountSpecificAccountingCode
type: object
- $ref: '#/definitions/ProductRatePlanChargeObjectNSFields'
- $ref: '#/definitions/ProductRatePlanChargeObjectCustomFields'
example:
AccountingCode: Deferred Revenue
BillCycleType: DefaultFromCustomer
BillingPeriod: Month
ChargeModel: Flat fee Pricing
DeferredRevenueAccount: Deferred Revenue
Name: Recurring flat fee
ProductRatePlanChargeTierData:
ProductRatePlanChargeTier:
- Currency: USD
Price: 10
ProductRatePlanId: 2c92c0f8628e007901628f1dc06a453d
RecognizedRevenueAccount: Accounts Receivable
TriggerEvent: ContractEffective
UOM: each
UseDiscountSpecificAccountingCode: false
ProxyCreateOrModifyResponse:
properties:
Id:
description: ''
type: string
Success:
description: ''
type: boolean
type: object
GETProductDiscountApplyDetailsType:
properties:
appliedProductRatePlanChargeId:
description: 'The ID of the product rate plan charge that the discount product rate plan charge applies to.
'
type: string
appliedProductRatePlanId:
description: 'The ID of the product rate plan that the discount product rate plan charge applies to.
'
type: string
title: productDiscountApplyDetails
type: object
ProxyCreateProductRatePlanCharge:
allOf:
- properties:
AccountingCode:
description: 'The accounting code for the charge. Accounting codes group transactions that contain similar accounting attributes.
'
maxLength: 100
type: string
ApplyDiscountTo:
description: 'Specifies the type of charges that you want a specific discount to apply to. All field values are case sensitive and in all-caps.
'
enum:
- ONETIME (1)
- RECURRING (2)
- USAGE (4)
- ONETIMERECURRING (3)
- ONETIMEUSAGE (5)
- RECURRINGUSAGE (6)
- ONETIMERECURRINGUSAGE (7)
type: string
BillCycleDay:
description: '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.
**Character limit**: 2
**Values**: a valid BCD integer, 1 - 31
'
format: int32
type: integer
BillCycleType:
description: "Specifies how to determine the billing day for the charge. \n\n**Notes**:\n - If you set this field to `SpecificDayofMonth`, you must specify which day of the month as the billing day for the charge in the BillCycleDay field. \n - If you set this field to `SpecificDayofWeek`, you must specify which day of the week as the billing day for the charge in the WeeklyBillCycleDay field. \n - By default, `TermStartDay` and `TermEndDay` are only available for prepayment charges. But you can reach out to Zuora Global Support to request enabling it for non-prepaid recurring charges. Meanwhile, note the following rules applies to these options:\n - The Term End Day option of the Billing Day field must be coupled with the Align to Term End option of the Billing Period Alignment field.\n - For prepaid charges, the Term Start Day option of the Billing Day field must be coupled with the existing Align to Term Start option of the Billing Period Alignment field.\n - For non-prepaid recurring charges: If Billing Day is set to Term Start Day, Billing Period Alignment must be Align to Term Start; If Billing Day is set to Term End Day, Billing Period Alignment can be set to other values.\n"
enum:
- DefaultFromCustomer
- SpecificDayofMonth
- SubscriptionStartDay
- ChargeTriggerDay
- SpecificDayofWeek
- TermStartDay
- TermEndDay
type: string
BillingPeriod:
description: "The billing period for the charge. The start day of the billing period is also called the bill cycle day (BCD).\n\n**Notes**:\n - Specify the number of months or weeks in the SpecificBillingPeriod field if you set this field to `Specific Months` or `Specific Weeks`.\n - The `Subscription Term` value is in **Limited Availability**.\n"
enum:
- Month
- Quarter
- Annual
- Semi-Annual
- Specific Months
- Subscription Term
- Week
- Specific Weeks
- Specific Days
type: string
BillingPeriodAlignment:
description: 'Aligns charges within the same subscription if multiple charges begin on different dates.
**Note:** The `AlignToTermEnd` value is only available for prepayment charges by default. Reach out to Zuora Global Support to enable it for non-prepaid recurring charges.
'
enum:
- AlignToCharge
- AlignToSubscriptionStart
- AlignToTermStart
- AlignToTermEnd
type: string
BillingTiming:
description: "The billing timing for the charge. You can choose to bill in advance or in arrears for recurring charge types. This field is not used in one-time or usage based charge types.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
enum:
- In Advance
- In Arrears
type: string
ChargeModel:
description: "Determines how to calculate charges. Charge models must be individually activated in Zuora Billing administration.\n\n**Notes:**\n - The `Delivery Pricing` value is available only if you have the Delivery Pricing charge model enabled.\n - The `MultiAttributePricing` value is available only if you have the Multi-Attribute Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `PreratedPerUnit` and value is available only if you have the Pre-rated Per Unit Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `PreratedPricing` value is available only if you have the Pre-rated Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `HighWatermarkVolumePricing`value is available only if you have the High Water Mark Volume Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information. \n - The `HighWatermarkTieredPricing` value is available only if you have the High Water Mark Tiered Pricing charge model enabled. The charge model is available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/C_Zuora_Editions) for pricing information.\n"
enum:
- 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
type: string
ChargeModelConfiguration:
$ref: '#/definitions/ProxyCreateOrModifyProductRatePlanChargeChargeModelConfiguration'
ChargeType:
description: 'Specifies the type of charge.
'
enum:
- OneTime
- Recurring
- Usage
type: string
CreditOption:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe way to calculate credit. See [Credit Option](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge#Credit_Option) for more information. \n"
enum:
- TimeBased
- ConsumptionBased
- FullCreditBack
type: string
DefaultQuantity:
description: "The default quantity of units, such as the number of authors in a hosted wiki service. This field is required if you use a per-unit pricing model. \n\n**Character limit**: 16\n\n**Values**: a valid quantity value. \n\n**Note:** When the `ChargeModel` field is set to `Tiered Pricing` or `Volume Pricing`, if this field is not specified, the value will default to `0`.\n"
format: double
type: number
DeferredRevenueAccount:
description: "The name of the deferred revenue account for this charge.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
maxLength: 100
type: string
DeliverySchedule:
$ref: '#/definitions/ProxyCreateOrModifyDeliverySchedule'
Description:
description: 'A description of the charge.
'
maxLength: 500
type: string
DiscountLevel:
description: 'Specifies if the discount applies to just the product rate plan, the entire subscription, or to any activity in the account.
'
enum:
- rateplan
- subscription
- account
type: string
DrawdownRate:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
The [conversion rate](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_drawdown_charge#UOM_Conversion) between Usage UOM and Drawdown UOM for a [drawdown charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_drawdown_charge). See [Fields related to Prepaid with Drawdown](https://knowledgecenter.zuora.com/Central_Platform/API/G_SOAP_API/E1_SOAP_API_Object_Reference/ProductRatePlanCharge#Fields_related_to_Prepaid_with_Drawdown) for more information.
'
type: number
DrawdownUom:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nUnit of measurement for a [drawdown charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_drawdown_charge). \n"
type: string
EndDateCondition:
default: SubscriptionEnd
description: "Defines when the charge ends after the charge trigger date.\n\n**Values**: \n - `SubscriptionEnd`: The charge ends on the subscription end date after a specified period based on the trigger date of the charge. \n - `FixedPeriod`: The charge ends after a specified period based on the trigger date of the charge. If you set this field to `FixedPeriod`, you must specify the length of the period and a period type by defining the `UpToPeriods` and `UpToPeriodsType` fields. \n \n**Note**: If the subscription ends before the charge end date, the charge ends when the subscription ends. But if the subscription end date is subsequently changed through a Renewal, or Terms and Conditions amendment, the charge will end on the charge end date.\n"
enum:
- SubscriptionEnd
- FixedPeriod
type: string
ExcludeItemBillingFromRevenueAccounting:
default: false
description: "The flag to exclude the related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting.\n\n**Notes**: \n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `115` or later. Otherwise, an error occurs.\n - This field is only available if you have the Order to Revenue or Billing - Revenue Integration feature enabled. \n"
type: boolean
ExcludeItemBookingFromRevenueAccounting:
default: false
description: "The flag to exclude the related rate plan charges and order line items from revenue accounting.\n\n**Notes**: \n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `115` or later. Otherwise, an error occurs.\n - This field is only available if you have the Order to Revenue or Billing - Revenue Integration feature enabled. \n"
type: boolean
IncludedUnits:
description: 'Specifies the number of units in the base set of units.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
IsAllocationEligible:
description: 'Indicates whether the charge segment is allocation eligible in revenue recognition. The default value is `False`.
**Values**: `True`, `False`
**Note**: This field is available only if you have the Additional Revenue Fields property enabled.
'
type: boolean
IsPrepaid:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nIndicates whether this charge is a prepayment (topup) charge or a drawdown charge. \n\n**Values**: `true` or `false`.\n"
type: boolean
IsRollover:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
The value is either "True" or "False". It determines whether the rollover fields are needed.
'
type: boolean
IsStackedDiscount:
description: "**Note**: This field is only applicable to the Discount - Percentage charge model.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 130 or higher. Otherwise, an error occurs.\n\nThis field indicates whether the discount is to be calculated as stacked discount. Possible values are as follows:\n - `True`: This is a stacked discount, which should be calculated by stacking with other discounts.\n - `False`: This is not a stacked discount, which should be calculated in sequence with other discounts.\n\nFor more information, see [Stacked discounts](https://knowledgecenter.zuora.com/Zuora_Billing/Products/Product_Catalog/B_Charge_Models/B_Discount_Charge_Models).\n"
type: boolean
IsUnbilled:
description: "Specifies how to perform the accounting during revenue recognition. The default value is `False`.\n\n**Values**: `True`, `False`\n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: boolean
LegacyRevenueReporting:
description: ''
type: boolean
ListPriceBase:
description: 'The list price base for the product rate plan charge.
'
enum:
- Per Billing Period
- Per Month
- Per Week
- Per Year
- Per Specific Months
type: string
MaxQuantity:
description: 'Specifies the maximum number of units for this charge. Use this field and the `MinQuantity` field to create a range of units allowed in a product rate plan charge.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
MinQuantity:
description: 'Specifies the minimum number of units for this charge. Use this field and the `MaxQuantity` field to create a range of units allowed in a product rate plan charge.
**Character limit**: 16
**Values**: a positive decimal value
'
format: double
type: number
Name:
description: 'The name of the product rate plan charge.
'
maxLength: 100
type: string
NumberOfPeriod:
description: 'Specifies the number of periods to use when calculating charges in an overage smoothing charge model. The valid value is a positive whole number.
'
format: int64
type: integer
OverageCalculationOption:
description: "Determines when to calculate overage charges. If the value of the SmoothingMode field is not specified, the value of this field is ignored.\n\n**Values**: \n - `EndOfSmoothingPeriod`: This option is used by default. The overage is charged at the end of the smoothing period.\n - `PerBillingPeriod`: The overage is charged on-demand rather than waiting until the end of the smoothing period.\n"
enum:
- EndOfSmoothingPeriod
- PerBillingPeriod
type: string
OverageUnusedUnitsCreditOption:
description: 'Determines whether to credit the customer with unused units of usage.
'
enum:
- NoCredit
- CreditBySpecificRate
type: string
PrepaidOperationType:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe type of this charge. It is either a prepayment (topup) charge or a drawdown charge. \n"
enum:
- topup
- drawdown
type: string
PrepaidQuantity:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe number of units included in a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge). Must be a positive number.\n"
type: number
PrepaidTotalQuantity:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe total amount of units that end customers can use during a validity period when they subscribe to a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge).\n"
type: number
PrepaidUom:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
Unit of measurement for a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge).
'
type: string
PriceChangeOption:
default: NoChange
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- NoChange
- SpecificPercentageValue
- UseLatestProductCatalogPricing
type: string
PriceIncreaseOption:
description: 'Applies an automatic price change when a termed subscription is renewed.
'
enum:
- FromTenantPercentageValue
- SpecificPercentageValue
type: string
PriceIncreasePercentage:
description: 'Specifies the percentage to increase or decrease the price of a termed subscription''s renewal. Use this field if you set the value to `SpecificPercentageValue`.
**Character limit**: 16
**Values**: a decimal value between -100 and 100
'
format: double
type: number
ProductCategory:
description: "This field is used to maintain the product category for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductClass:
description: "This field is used to maintain the product class for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductFamily:
description: "This field is used to maintain the product family for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled.\n"
type: string
ProductLine:
description: "This field is used to maintain the product line for integration with Zuora Revenue. \n\n**Note**: This field is available only if you have the Additional Revenue Fields property enabled. \n"
type: string
ProductRatePlanChargeNumber:
description: "The natural key of the product rate plan charge.\n\n**Values**:\n\n - leave null for automatically generated string\n - an alphanumeric string of 100 characters or fewer\n\n**Note**: This field is only available if you set the `X-Zuora-WSDL-Version` request header to `133` or later.\n"
maxLength: 100
type: string
ProductRatePlanChargeTierData:
$ref: '#/definitions/ProxyCreateOrModifyProductRatePlanChargeTierData'
ProductRatePlanId:
description: 'The ID of the product rate plan associated with this product rate plan charge.
'
maxLength: 32
type: string
RatingGroup:
default: ByBillingPeriod
description: "Specifies a rating group based on which usage records are rated.\n\nPossible values: \n - `ByBillingPeriod`: The rating is based on all the usages in a billing period. \n - `ByUsageStartDate`: The rating is based on all the usages on the same usage start date. \n - `ByUsageRecord`: The rating is based on each usage record.\n - `ByUsageUpload`: The rating is based on all the usages in a uploaded usage file (`.xls` or `.csv`).\n - `ByGroupId`: The rating is based on all the usages in a custom group.\n\n**Notes:** \n - The `ByBillingPeriod` value can be applied for all charge models. \n - The `ByUsageStartDate`, `ByUsageRecord`, and `ByUsageUpload` values can only be applied for per unit, volume pricing, and tiered pricing charge models. \n - The `ByGroupId` value is only available if you have the Active Rating feature enabled.\n - Use this field only for Usage charges. One-Time Charges and Recurring Charges return `NULL`.\n"
enum:
- ByBillingPeriod
- ByUsageStartDate
- ByUsageRecord
- ByUsageUpload
- ByGroupId
type: string
RecognizedRevenueAccount:
description: "The name of the recognized revenue account for this charge.\n - Required when the Allow Blank Accounting Code setting is No.\n - Optional when the Allow Blank Accounting Code setting is Yes.\n\n This feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
maxLength: 100
type: string
RevRecCode:
description: 'Associates this product rate plan charge with a specific revenue recognition code.
'
maxLength: 70
type: string
RevRecTriggerCondition:
description: 'Specifies when revenue recognition begins.
'
enum:
- ContractEffectiveDate
- ServiceActivationDate
- CustomerAcceptanceDate
type: string
RevenueRecognitionRuleName:
description: 'Determines when to recognize the revenue for this charge.
'
enum:
- Recognize upon invoicing
- Recognize daily over time
type: string
RolloverApply:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
This field defines the priority of rollover, which is either first or last.
'
enum:
- ApplyFirst
- ApplyLast
type: string
RolloverPeriods:
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs.
This field defines the number of rollover periods, it is restricted to 3.
'
type: number
SmoothingModel:
description: 'Specifies the smoothing model for an overage smoothing charge model.
'
enum:
- RollingWindow
- Rollover
type: string
SpecificBillingPeriod:
description: 'Customizes the number of months or weeks for the charges billing period. This field is required if you set the value of the BillingPeriod field to `Specific Months` or `Specific Weeks`.
The valid value is a positive integer.
'
format: int64
type: integer
SpecificListPriceBase:
description: "The number of months for the list price base of the charge. This field is required if you set the value of the `ListPriceBase` field to `Per Specific Months`.\n\n**Notes**: \n - This field is available only if you have the Annual List Price feature enabled.\n - To use this field, you must set the `X-Zuora-WSDL-Version` request header to `129` or later. Otherwise, an error occurs.\n - The value of this field is `null` if you do not set the value of the `ListPriceBase` field to `Per Specific Months`.\n"
format: int32
maximum: 200
minimum: 1
type: integer
TaxCode:
description: 'Specifies the tax code for taxation rules. Required when the Taxable field is set to `True`.
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
maxLength: 64
type: string
TaxMode:
description: 'Determines how to define taxation for the charge. Required when the Taxable field is set to `True`.
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
enum:
- TaxExclusive
- TaxInclusive
type: string
Taxable:
description: 'Determines whether the charge is taxable. When set to `True`, the TaxMode and TaxCode fields are required when creating or updating th ProductRatePlanCharge object.
**Character limit**: 5
**Values**: `True`, `False`
**Note**: This value affects the tax calculation of rate plan charges that come from the `ProductRatePlanCharge`.
'
type: boolean
TriggerEvent:
description: "Specifies when to start billing the customer for the charge.\n\n**Values**:\n - `ContractEffective` is the date when the subscription's contract goes into effect and the charge is ready to be billed.\n - `ServiceActivation` is the date when the services or products for a subscription have been activated and the customers have access.\n - `CustomerAcceptance` is when the customer accepts the services or products for a subscription.\n"
enum:
- ContractEffective
- ServiceActivation
- CustomerAcceptance
type: string
UOM:
description: "Specifies a configured unit to measure usage. \n\n**Note**: You must specify this field when creating the following charge models:\n - Per Unit Pricing\n - Volume Pricing\n - Overage Pricing\n - Tiered Pricing\n - Tiered with Overage Pricing\n"
maxLength: 25
type: string
UpToPeriods:
description: "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.\n\n**Character limit**: 5\n\n**Values**: a whole number between 0 and 65535, exclusive\n\n**Notes**:\n - You must use this field together with the `UpToPeriodsType` field to specify the time period. This field is applicable only when the `EndDateCondition` field is set to `FixedPeriod`. \n - 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.\n"
format: int64
type: integer
UpToPeriodsType:
default: Billing Periods
description: "The period type used to define when the charge ends.\n\n**Notes**: \n - You must use this field together with the `UpToPeriods` field to specify the time period.\n - This field is applicable only when the `EndDateCondition` field is set to `FixedPeriod`. \n"
enum:
- Billing Periods
- Days
- Weeks
- Months
- Years
type: string
UsageRecordRatingOption:
default: EndOfBillingPeriod
description: "Determines how Zuora processes usage records for per-unit usage charges. \n"
enum:
- EndOfBillingPeriod
- OnDemand
type: string
UseDiscountSpecificAccountingCode:
description: 'Determines whether to define a new accounting code for the new discount charge.
**Character limit**: 5
**Values**: `True`, `False`
'
type: boolean
UseTenantDefaultForPriceChange:
description: "Applies the tenant-level percentage uplift value for an automatic price change to a termed subscription's renewal. \n\n**Character limit**: 5\n\n**Values**: `true`, `false`\n"
type: boolean
ValidityPeriodType:
description: "**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.\n\nTo use this field, you must set the `X-Zuora-WSDL-Version` request header to 114 or higher. Otherwise, an error occurs. \n\nThe period in which the prepayment units are valid to use as defined in a [prepayment charge](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown/Create_prepayment_charge).\n"
enum:
- SUBSCRIPTION_TERM
- ANNUAL
- SEMI_ANNUAL
- QUARTER
- MONTH
type: string
WeeklyBillCycleDay:
description: "Specifies which day of the week as the bill cycle day (BCD) for the charge.\n\nThis feature is in **Limited Availability**. If you wish to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). \n"
enum:
- Sunday
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
- Saturday
type: string
applyToBillingPeriodPartially:
description: 'Allow the discount duration to be aligned with the billing period partially.
**Note**: You must enable the [Enhanced Discount](https://knowledgecenter.zuora.com/Zuora_Billing/Build_products_and_prices/Basic_concepts_and_terms/B_Charge_Models/D_Manage_Enhanced_Discount) feature to access this field.
'
type: boolean
rolloverPeriodLength:
default: null
description: '**Note**: This field is only available if you have the [Prepaid with Drawdown](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/J_Billing_Operations/Prepaid_with_Drawdown) feature enabled.
To use this field, you must set the `X-Zuora-WSDL-Version` request header to 137 or higher. Otherwise, an error occurs.
The period length of the rollover fund. If this field is set as optional, then you can modify the value. The limit for the value should be 1 which should be lesser than equal to the specified period that is lesser than equal to the validity period''s length.
'
type: integer
required:
- BillCycleType
- BillingPeriod
- ChargeModel
- ChargeType
- Name
- ProductRatePlanChargeTierData
- ProductRatePlanId
- TriggerEvent
- UseDiscountSpecificAccountingCode
type: object
- $ref: '#/definitions/ProductRatePlanChargeObjectNSFields'
- $ref: '#/definitions/ProductRatePlanChargeObjectCustomFields'
example:
AccountingCode: Deferred Revenue
BillCycleType: DefaultFromCustomer
BillingPeriod: Month
ChargeModel: Volume Pricing
ChargeType: Recurring
DeferredRevenueAccount: Deferred Revenue
Name: Recurring flat fee
ProductRatePlanChargeTierData:
ProductRatePlanChargeTier:
- Currency: USD
Price: 10
ProductRatePlanId: 2c92c0f8628e007901628f1dc06a453d
RecognizedRevenueAccount: Accounts Receivable
TriggerEvent: ContractEffective
UOM: each
UseDiscountSpecificAccountingCode: false
ProxyCreateOrModifyDeliverySchedule:
properties:
frequency:
description: 'The frequency of the delivery. Only supports weekly now
'
enum:
- Weekly
type: string
friday:
description: 'The flag to indicate should the delivery happen on Friday
'
type: boolean
monday:
description: 'The flag to indicate should the delivery happen on Monday
'
type: boolean
saturday:
description: 'The flag to indicate should the delivery happen on Saturday
'
type: boolean
sunday:
description: 'The flag to indicate should the delivery happen on Sunday
'
type: boolean
thursday:
description: 'The flag to indicate should the delivery happen on Thursday
'
type: boolean
tuesday:
description: 'The flag to indicate should the delivery happen on Tuesday
'
type: boolean
wendesday:
description: 'The flag to indicate should the delivery happen on Wendesday
'
type: boolean
title: DeliverySchedule
type: object
parameters:
GLOBAL_HEADER_Accept_Encoding:
name: Accept-Encoding
in: header
required: false
type: string
description: "Include the `Accept-Encoding: gzip` header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response. \n\nIf 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.\n"
GLOBAL_HEADER_Zuora_Org_Ids:
name: Zuora-Org-Ids
in: header
required: false
type: string
description: "Comma separated IDs. If you have Zuora Multi-Org enabled, \nyou 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.\n\nThe 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.\n\nIf the header is not set, the operation is performed in scope of the user's accessible orgs.\n"
GLOBAL_HEADER_X_Zuora_WSDL_Version:
name: X-Zuora-WSDL-Version
in: header
required: false
type: string
default: 79
description: 'Zuora WSDL version number.
'
GLOBAL_HEADER_Idempotency_Key:
name: Idempotency-Key
in: header
required: false
type: string
maxLength: 255
description: "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. \n\nWith 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. \n"
GLOBAL_HEADER_Content_Encoding:
name: Content-Encoding
in: header
required: false
type: string
description: '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.
'
GLOBAL_HEADER_Zuora_Entity_Ids_Single:
name: Zuora-Entity-Ids
in: header
required: false
type: string
description: 'An entity ID. If you have [Zuora Multi-entity](https://knowledgecenter.zuora.com/BB_Introducing_Z_Business/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 do not need to set this header.
'
GLOBAL_HEADER_Zuora_Track_Id:
name: Zuora-Track-Id
in: header
required: false
type: string
maxLength: 64
description: '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 (`''`).
'
GLOBAL_REQUEST_rejectUnknownFields:
name: rejectUnknownFields
in: query
required: false
type: boolean
default: false
description: "Specifies whether the call fails if the request body contains unknown fields.\nWith `rejectUnknownFields` set to `true`, Zuora returns a 400 response if\nthe request body contains unknown fields. The body of the 400 response is:\n\n```json\n{\n \"message\": \"Error - unrecognised fields\"\n}\n```\n\nBy default, Zuora ignores unknown fields in the request body.\n"
GLOBAL_HEADER_Authorization_OAuth_optional:
name: Authorization
in: header
required: false
type: string
description: 'The value is in the `Bearer {token}` format where {token} is a valid OAuth token generated by calling [Create an OAuth token](/api-references/api/operation/createToken).
'
x-tagGroups:
- name: Authentication
tags:
- OAuth
- name: Products
tags:
- Products
- Catalog
- Catalog Groups
- Offers
- Price Book Items
- Product Rate Plans
- Product Rate Plan Definitions
- Product Rate Plan Charges
- Product Charge Definitions
- Product Rate Plan Charge Tiers
- Zuora Revenue Integration
- name: Customer Accounts
tags:
- Accounts
- Contacts
- Contact Snapshots
- name: Orders and Subscriptions
tags:
- Sign Up
- Orders
- Order Actions
- Order Line Items
- Fulfillments
- Ramps
- Subscriptions
- Rate Plans
- name: Advanced Consumption Billing
tags:
- Prepaid with Drawdown
- name: Usage
tags:
- Usage
- name: Billing Documents
tags:
- Delivery Adjustments
- Billing Documents
- Invoices
- Credit Memos
- Debit Memos
- E-Invoicing
- Invoice Schedules
- Taxation Items
- Sequence Sets
- Operations
- name: Bill Runs
tags:
- Bill Run
- Billing Preview Run
- name: Payment Methods
tags:
- Payment Methods
- Custom Payment Method Types
- Payment Method Updater
- Payment Method Snapshots
- Payment Method Transaction Logs
- Hosted Pages
- RSA Signatures
- name: Payments
tags:
- Payment Authorization
- Payment Gateways
- Payment Gateway Reconciliation
- Payments
- Payment Transaction Logs
- Payment Runs
- Payment Schedules
- Refunds
- name: Finance
tags:
- Accounting Codes
- Accounting Periods
- Summary Journal Entries
- Journal Runs
- Mass Updater
- name: Events and Notifications
tags:
- Notifications
- Custom Event Triggers
- Custom Scheduled Events
- name: Custom Objects
tags:
- Custom Object Definitions
- Custom Object Records
- Custom Object Jobs
- name: System Health
tags:
- API Health
- Bill Run Health
- Electronic Payments Health
- name: Workflow
tags:
- Workflows
- name: Data Query
tags:
- Data Queries
- name: AQuA
tags:
- Aggregate Queries
- name: Deployment Manager
tags:
- Configuration Templates
- name: Multiple Organizations
tags:
- Data Labeling
- name: Order to Revenue
tags:
- Regenerate
- name: General-Purpose Operations
tags:
- Actions
- Settings
- Files
- Imports
- Custom Exchange Rates
- Attachments
- Describe