swagger: '2.0'
info:
version: '2023-12-15'
title: API Reference Accounting Codes Invoice Schedules 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: Invoice Schedules
description: "Use invoice schedules to trigger invoice generation processes. \n\nFor more information about invoice schedules, see Billing Schedule overview.\n"
paths:
/v1/invoice-schedules:
post:
tags:
- Invoice Schedules
summary: Create an invoice schedule
description: 'Creates an invoice schedule.
### Limitations
This API operation has the following limitations:
* You can create at most 50 invoice schedule items in one request.
* You can associate at most 10 orders with an invoice schedule in one request.
* You can associate at most 300 subscriptions with an invoice schedule in one request, including those contained in orders and separate subscriptions.
'
operationId: POST_CreateInvoiceSchedule
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_HEADER_Zuora_Track_Id'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- in: body
name: Request
description: ''
required: true
schema:
$ref: '#/definitions/POSTCreateInvoiceScheduleRequest'
responses:
'200':
description: ''
examples:
application/json:
id: e2441b3e24eb42859194be7da2403b38
number: IS-00000004
status: Pending
nextRunDate: '2022-02-24'
totalAmount: 70200.0
actualAmount: 70200.0
billedAmount: 0.0
unbilledAmount: 70200.0
notes: 2022 Billing Schedule
currency: USD
scheduleItems:
- id: 8a8881aa82118bec018211daf9f01680
amount: 50000.0
actualAmount: 50000.0
status: Pending
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
percentage: null
- id: 8a8881aa82118bec018211daf9f11681
amount: 14000.0
status: Pending
actualAmount: 14000.0
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
percentage: null
- id: 8a8881aa82118bec018211daf9f11682
amount: 6200.0
actualAmount: 6200.0
status: Pending
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
percentage: null
orders:
- O-00000007
- O-00000008
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
invoiceSeparately: false
additionalSubscriptionsToBill:
- S-00000001
- S-00000002
success: true
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/InvoiceScheduleResponses'
/v1/invoice-schedules/{scheduleKey}:
put:
tags:
- Invoice Schedules
summary: Update an invoice schedule
description: "Updates a pending invoice schedule.\n\nYou can use this API operation to update invoice schedules in the following aspects:\n- Update notes and pending invoice schedule items\n- Update orders associated with invoice schedules\n- Remove or add invoice schedule items\n\nFor more samples, see [Edit invoice schedules](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Billing_Schedule/Billing_Schedule_tutorials/Edit_invoice_schedules).\n\n### Restrictions and limitations \n\nWhen updating invoice schedules through the REST API, keep the following restrictions and limitations in mind:\n- You can only update invoice schedule items in Pending status.\n- You can only add orders or specific subscriptions to pending invoice schedules, and remove orders or specific subscriptions from pending invoice schedules.\n- For the invoice schedule items that you want to update, you must include the new values for these items in the request.\n- For the invoice schedule items that you want to keep unchanged, you must include all the existing information about these items in the request. Otherwise, the existing invoice schedule items that you do not mention in the request are deleted.\n- For the orders that you want to keep unchanged for an invoice schedule, you must include all the existing order numbers associated with the invoice schedule in the request. Otherwise, the existing orders that you do not mention in the request are removed.\n"
operationId: PUT_UpdateInvoiceSchedule
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'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- name: scheduleKey
in: path
description: 'The unique ID or number of the invoice schedule to be updated. For example, 2c92c8955bd63cc1015bd7c151af02ab or IS-0000001.
'
required: true
type: string
- in: body
name: Request
description: ''
required: true
schema:
$ref: '#/definitions/PUTUpdateInvoiceScheduleRequest'
responses:
'200':
description: ''
examples:
application/json:
id: e2441b3e24eb42859194be7da2403b38
number: IS-00000004
status: Pending
nextRunDate: '2022-02-24'
totalAmount: 70200.0
billedAmount: 0.0
actualAmount: 70200.0
unbilledAmount: 70200.0
notes: 2022 Billing Schedule
currency: USD
scheduleItems:
- id: 8a8881aa82118bec018211daf9f01680
amount: 54000.0
actualAmount: 54000.0
status: Pending
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
percentage: null
- id: 8a8881aa82118bec018211daf9f11681
amount: 10000.0
actualAmount: 10000.0
status: Pending
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
percentage: null
- id: 8a8881aa82118bec018211daf9f11682
amount: 6200.0
actualAmount: 6200.0
status: Pending
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
percentage: null
orders:
- O-00000007
- O-00000008
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
invoiceSeparately: false
additionalSubscriptionsToBill:
- S-00000001
- S-00000002
success: true
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/InvoiceScheduleResponses'
get:
tags:
- Invoice Schedules
summary: Retrieve an invoice schedule
description: 'Retrieves detailed information about an invoice schedule.
'
operationId: GET_InvoiceSchedule
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'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- $ref: '#/parameters/GLOBAL_REQUEST_page'
- $ref: '#/parameters/GLOBAL_REQUEST_pageSize'
- name: scheduleKey
in: path
description: 'The unique ID or number of the invoice schedule to be retrieved. For example, 2c92c8955bd63cc1015bd7c151af02ab or IS-0000001.
'
required: true
type: string
responses:
'200':
description: ''
examples:
application/json:
id: e2441b3e24eb42859194be7da2403b38
number: IS-00000004
status: PartiallyProcessed
nextRunDate: '2022-10-17'
totalAmount: 70200.0
billedAmount: 50000.0
actualAmount: 20200.0
unbilledAmount: 20200.0
notes: 2022 Billing Schedule
currency: USD
scheduleItems:
- id: 8a8881aa82118bec018211daf9f01680
amount: 50000.0
actualAmount: 0.0
status: Processed
invoiceId: 8a8881aa82118bec018211dafc1e1695
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
percentage: null
- id: 8a8881aa82118bec018211daf9f11681
amount: 14000.0
actualAmount: 14000.0
status: Pending
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
percentage: null
- id: 8a8881aa82118bec018211daf9f11682
amount: 6200.0
actualAmount: 6200.0
status: Pending
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
percentage: null
orders:
- O-00000007
- O-00000008
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
invoiceSeparately: false
additionalSubscriptionsToBill:
- S-00000001
- S-00000002
success: true
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/InvoiceScheduleResponses'
delete:
tags:
- Invoice Schedules
summary: Delete an invoice schedule
description: 'Deletes an invoice schedule in Pending status. The status of the invoice schedule to be deleted must be `Pending`.
'
operationId: DELETE_InvoiceSchedule
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'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- name: scheduleKey
in: path
description: 'The unique ID or number of the invoice schedule to be deleted. For example, 2c92c8955bd63cc1015bd7c151af02ab or IS-0000001.
'
required: true
type: string
responses:
'200':
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/CommonResponseType'
/v1/invoice-schedules/{scheduleKey}/pause:
put:
tags:
- Invoice Schedules
summary: Pause an invoice schedule
description: 'Pauses an invoice schedule immediately.
After one invoice schedule is paused, it cannot be automatically executed by Zuora Scheduler or by the [Execute an invoice schedule](/api-references/api/operation/POST_ExecuteInvoiceSchedule/) API operation.
If you want to run a paused invoice schedule, you can create a bill run with the target date greater than the next run date of the invoice schedule.
'
operationId: PUT_PauseInvoiceSchedule
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'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- name: scheduleKey
in: path
description: 'The unique ID or number of the schedule to be paused. For example, 2c92c8955bd63cc1015bd7c151af02ab or IS-0000001.
'
required: true
type: string
responses:
'200':
description: ''
examples:
application/json:
id: e2441b3e24eb42859194be7da2403b38
number: IS-00000004
status: Paused
nextRunDate: '2022-10-17'
totalAmount: 70200.0
billedAmount: 50000.0
actualAmount: 20200.0
unbilledAmount: 20200.0
notes: 2022 Billing Schedule
currency: USD
scheduleItems:
- id: 8a8881aa82118bec018211daf9f01680
amount: 50000.0
actualAmount: 0.0
status: Processed
invoiceId: 8a8881aa82118bec018211dafc1e1695
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
percentage: null
- id: 8a8881aa82118bec018211daf9f11681
amount: 14000.0
actualAmount: 14000.0
status: Pending
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
percentage: null
- id: 8a8881aa82118bec018211daf9f11682
amount: 6200.0
actualAmount: 6200.0
status: Pending
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
percentage: null
orders:
- O-00000007
- O-00000008
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
success: true
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/InvoiceScheduleResponses'
/v1/invoice-schedules/{scheduleKey}/resume:
put:
tags:
- Invoice Schedules
summary: Resume an invoice schedule
description: 'Resumes an invoice schedule in Paused status immediately.
After an invoice schedule is resumed, it can continue to be automatically executed by Zuora Scheduler or by the [Execute an invoice schedule](/api-references/api/operation/POST_ExecuteInvoiceSchedule/) API operation.
'
operationId: PUT_ResumeInvoiceSchedule
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'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- name: scheduleKey
in: path
description: 'The unique ID or number of the schedule to be resumed. For example, 2c92c8955bd63cc1015bd7c151af02ab or IS-0000001.
'
required: true
type: string
responses:
'200':
description: ''
examples:
application/json:
id: e2441b3e24eb42859194be7da2403b38
number: IS-00000004
status: PartiallyProcessed
nextRunDate: '2022-10-17'
totalAmount: 70200.0
billedAmount: 50000.0
actualAmount: 20200.0
unbilledAmount: 20200.0
notes: 2022 Billing Schedule
currency: USD
scheduleItems:
- id: 8a8881aa82118bec018211daf9f01680
amount: 50000.0
actualAmount: 0.0
status: Processed
invoiceId: 8a8881aa82118bec018211dafc1e1695
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
percentage: null
- id: 8a8881aa82118bec018211daf9f11681
amount: 14000.0
actualAmount: 14000.0
status: Pending
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
percentage: null
- id: 8a8881aa82118bec018211daf9f11682
amount: 6200.0
actualAmount: 6200.0
status: Pending
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
percentage: null
orders:
- O-00000007
- O-00000008
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
success: true
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/InvoiceScheduleResponses'
/v1/invoice-schedules/{scheduleKey}/execute:
post:
tags:
- Invoice Schedules
summary: Execute an invoice schedule
description: "Executes an invoice schedule immediately.\n\nDuring the execution, a bill run is created and generates an invoice or a credit memo asynchronously.\n\nWhen you use this API operation to execute an invoice schedule item, you have the flexibility to decide whether to specify a specific item ID.\n\n- If you specify the unique ID of an invoice schedule item to be executed in the request, the corresponding invoice schedule item is executed.\n- If you do not specify the ID of any invoice schedule item in the request, the subscription end date is used as the target date to determine the next pending schedule item to be executed. \n\nFor more samples, see [Execute invoice schedules](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Billing_Schedule/Billing_Schedule_tutorials/Execute_invoice_schedules).\n"
operationId: POST_ExecuteInvoiceSchedule
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_HEADER_Zuora_Track_Id'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Entity_Ids_Single'
- $ref: '#/parameters/GLOBAL_HEADER_Zuora_Org_Ids'
- name: scheduleKey
in: path
description: 'The unique ID or number of the schedule to be executed. For example, 2c92c8955bd63cc1015bd7c151af02ab or IS-0000001.
'
required: true
type: string
- in: body
name: Request
description: ''
required: true
schema:
$ref: '#/definitions/POSTExecuteInvoiceScheduleRequest'
responses:
'200':
description: ''
examples:
id: 8ad0823f82b5b2520182c5cec5fe40fb
autoEmail: false
autoPost: false
autoRenewal: false
billRunNumber: BR-00001017
invoiceDate: '2022-02-24'
noEmailForZeroAmountInvoice: false
status: Pending
targetDate: '2022-02-24'
createdById: 2c92c0f84298ac5901429dea196212be
createdDate: '2022-08-22 06:47:18'
updatedById: 2c92c0f84298ac5901429dea196212be
updatedDate: '2022-08-22 06:47:18'
billRunFilters:
- filterType: InvoiceSchedule
accountId: 8ad09c4b82b5c6330182c5ccab3570e6
success: true
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/ExecuteInvoiceScheduleBillRunResponse'
definitions:
ExecuteInvoiceScheduleBillRunResponse:
allOf:
- properties:
autoEmail:
description: 'Whether to automatically send an email after Auto-Post is complete.
'
type: boolean
autoPost:
description: 'Whether to automatically post the bill run after the bill run is created.
'
type: boolean
autoRenewal:
description: 'Whether to automatically renew auto-renew subscriptions that are up for renewal.
'
type: boolean
batches:
description: "A list of the batches of accounts for this bill run. \n\nThis field cannot exist with the `billRunFilters` field.\n\n**Values:** `AllBatches` or Batch*n* where *n* is a number between 1 and 50, for example, `Batch7`.\n"
items:
type: string
type: array
billCycleDay:
description: "The day of the bill cycle, this field is only valid when `batches` is specified.\n\n**Values:** \n- `AllBillCycleDays` or 1 - 31 for an ad-hoc bill run \n- `AllBillCycleDays` or 1 - 31 or `AsRunDay` for a scheduled bill run\n"
type: string
billRunFilters:
description: 'A list of the target account or subscriptions for this bill run.
This field cannot exist with the `batches` field.
'
items:
$ref: '#/definitions/BillRunFilters'
type: array
billRunNumber:
description: 'The number of bill run.
'
type: string
chargeTypeToExclude:
description: 'The types of the charges to be excluded from the generation of billing documents.
'
items:
enum:
- OneTime
- Recurring
- Usage
type: string
type: array
createdById:
description: 'The ID of the user who created the bill run.
'
type: string
createdDate:
description: 'The date and time when the bill run was created.
'
format: date-time
type: string
id:
description: 'The unique ID of the bill run.
'
type: string
invoiceDate:
description: 'The invoice date for this bill run, only valid for ad-hoc bill runs.
'
format: date
type: string
invoiceDateOffset:
description: 'The offset compared to bill run execution date, only valid for scheduled bill runs.
'
type: integer
noEmailForZeroAmountInvoice:
description: "Whether to suppress emails for invoices with the total amount of zero or not for this bill run after the bill run is complete. \n\n**Note**: Do not email invoices with the total amount of zero.\n"
type: boolean
organizationLabels:
description: "The organization(s) that the object belongs to. \n\nNote: This field is available only when the Multi-Org feature is enabled. \n"
items:
properties:
organizationId:
description: 'The organization ID.
'
type: string
organizationName:
description: 'The organization name.
'
type: string
type: object
type: array
scheduledExecutionTime:
description: 'The scheduled execution time for a bill run.
'
format: date-time
type: string
status:
description: 'The status of the bill run.
'
enum:
- Pending
- Processing
- Completed
- Error
- Canceled
- Posted
- PostInProgress
- CancelInProgress
- RemoveInProgress
- Paused
type: string
targetDate:
description: 'The target date for this bill run, only valid for ad-hoc bill run.
'
format: date
type: string
targetDateOffset:
description: 'The offset compared to bill run execution date, only valid for scheduled bill run.
'
type: integer
updatedById:
description: 'The ID of the user who updated the bill run.
'
type: string
updatedDate:
description: 'The date and time when the bill run was updated.
'
format: date-time
type: string
type: object
- {}
example:
autoEmail: false
autoPost: false
autoRenewal: false
billRunFilters:
- accountId: 2c9081a03c63c94c013c66688a2c00bf
filterType: Subscription
subscriptionId: 402882297e387c51017e38a245c313db
billRunNumber: BR-00000016
chargeTypeToExclude:
- OneTime
- Usage
createdById: ff808081298c6e5401298c7274a40005
createdDate: '2022-01-24 19:58:27'
id: 2c9890077e8a8490017e8bf3a5171a43
invoiceDate: '2020-02-01'
noEmailForZeroAmountInvoice: false
status: Pending
success: true
targetDate: '2020-02-01'
updatedById: ff808081298c6e5401298c7274a40005
updatedDate: '2022-01-24 19:58:27'
UpdateScheduleItems:
allOf:
- properties:
amount:
description: "The amount of the invoice to be generated during the processing of the invoice schedule item. \n\nYou can only specify either the `amount` field or `percentage` field in one request. \n- If you choose to specify the `amount` field in the request, `null` is returned as the value of the `percentage` field in the corresponding response. \n- If you choose to specify the `percentage` field in the request, the value of the `amount` field returned in the corresponding response is calculated based on the percentage of the total amount.\n"
format: number
type: string
id:
description: "The unique ID of the invoice schedule item to be updated. \n\nIf this field is not provided, a new invoice schedule item is added to the invoice schedule.\n"
type: string
name:
description: 'The name of the invoice schedule item.
'
maxLength: 100
type: string
percentage:
description: "The percentage of the total amount to be billed during the processing of the invoice schedule item. \n\nYou can only specify either the `amount` field or `percentage` field in one request. \n- If you choose to specify the `amount` field in the request, `null` is returned as the value of the `percentage` field in the corresponding response. \n- If you choose to specify the `percentage` field in the request, the value of the `amount` field returned in the corresponding response is calculated based on the percentage of the total amount. \n"
runDate:
description: 'The date in the tenant’s time zone when the invoice schedule item is planned to be processed to generate an invoice.
'
format: date
type: string
targetDateForAdditionalSubscriptions:
description: "The date in the tenant's time zone used by the invoice schedule to determine which fixed-period regular charges to be billed together with the invoice schedule item. \n\nThe regular charges must come from the subscriptions specified in the `additionalSubscriptionsToBill` field.\n"
format: date
type: string
type: object
- $ref: '#/definitions/InvoiceScheduleItemCustomFields'
- {}
title: scheduleItems
ScheduleItemsResponse:
allOf:
- properties:
actualAmount:
description: 'The actual amount that needs to be billed during the processing of the invoice schedule item.
By default, the actual amount is the same as the total amount. Even if order changes occur like Remove Product or Cancel Subscription, the value of the `amount` field keeps unchanged. The value of the `actualAmount` field reflects the actual amount to be billed.
'
format: number
type: string
amount:
description: "The amount of the invoice generated during the processing of the invoice schedule item.\n\nYou can only specify either the `amount` field or `percentage` field in one request. \n- If you choose to specify the `amount` field in the request, `null` is returned as the value of the `percentage` field in the corresponding response. \n- If you choose to specify the `percentage` field in the request, the value of the `amount` field returned in the corresponding response is calculated based on the percentage of the total amount.\n\nThe value of this field keeps unchanged once invoice schedule items are created. \n"
format: number
type: string
creditMemoId:
description: 'The ID of the credit memo that is generated during the processing of the invoice schedule item.
'
type: string
id:
description: 'The unique ID of the invoice schedule item.
'
type: string
invoiceId:
description: 'The ID of the invoice that is generated during the processing of the invoice schedule item.
'
type: string
name:
description: 'The name of the invoice schedule item.
'
maxLength: 100
type: string
percentage:
description: "The percentage of the total amount to be billed during the processing of the invoice schedule item. \n\nYou can only specify either the `amount` field or `percentage` field in one request. \n- If you choose to specify the `amount` field in the request, `null` is returned as the value of the `percentage` field in the corresponding response. \n- If you choose to specify the `percentage` field in the request, the value of the `amount` field returned in the corresponding response is calculated based on the percentage of the total amount.\n"
runDate:
description: 'The date in the tenant’s time zone when the invoice schedule item is processed to generate an invoice.
'
format: date
type: string
status:
description: 'The status of the invoice schedule item.
'
enum:
- Pending
- Executing
- Processed
type: string
targetDateForAdditionalSubscriptions:
description: "The date in the tenant's time zone used by the invoice schedule to determine which fixed-period regular charges to be billed together with the invoice schedule item. \n\nThe regular charges must come from the subscriptions specified in the `additionalSubscriptionsToBill` field.\n"
format: date
type: string
type: object
- $ref: '#/definitions/InvoiceScheduleItemCustomFields'
- {}
title: scheduleItems
CommonResponseType:
properties:
processId:
description: 'The Id of the process that handle the operation.
'
type: string
reasons:
items:
properties:
code:
description: 'The error code of response.
'
type: string
message:
description: 'The detail information of the error response
'
type: string
type: object
type: array
success:
description: 'Indicates whether the call succeeded.
'
type: boolean
type: object
InvoiceScheduleResponses:
allOf:
- properties:
accountId:
description: 'The ID of the customer account that the invoice schedule belongs to.
'
type: string
actualAmount:
description: 'The actual amount that needs to be billed during the processing of the invoice schedule.
By default, the actual amount is the same as the total amount. Even if order changes occur like Remove Product or Cancel Subscription, the value of the `totalAmount` field keeps unchanged. The value of the `actualAmount` field reflects the actual amount to be billed.
'
format: number
type: string
additionalSubscriptionsToBill:
description: "A list of the numbers of the subscriptions that need to be billed together with the invoice schedule. \n\nOne invoice schedule can have at most 600 additional subscriptions.\n"
items:
type: string
type: array
billedAmount:
description: 'The amount that has been billed during the processing of the invoice schedule.
'
format: number
type: string
currency:
description: "The currency of the billing documents generated during the processing of the invoice schedule.\n\n**Note**: \n- This field is available only if you have the Multiple Currencies feature in the **Early Adopter** phase enabled.\n- If you have the Multiple Currencies feature disabled, the corresponding account's default currency is always used.\n"
type: string
id:
description: 'The unique ID of the invoice schedule.
'
type: string
invoiceSeparately:
description: 'Whether the invoice items created from the invoice schedule appears on a separate invoice when Zuora generates invoices.
'
type: boolean
nextRunDate:
description: 'The run date of the next execution of invoice schedule. By default, the next run date is the same as run date of next pending invoice schedule item. It can be overwritten with a different date other than the default value. When the invoice schedule has completed the execution, the next run date is null.
'
format: date
type: string
notes:
description: 'Comments on the invoice schedule.
'
maxLength: 255
type: string
number:
description: 'The sequence number of the invoice schedule.
'
type: string
orders:
description: 'A list of the IDs or numbers of the orders associated with the invoice schedule. One invoice schedule can be associated with at most 10 orders.
'
items:
type: string
type: array
scheduleItems:
description: 'Container for schedule items. One invoice schedule can have at most 50 invoice schedule items.
'
items:
$ref: '#/definitions/ScheduleItemsResponse'
type: array
specificSubscriptions:
description: 'A list of the numbers of specific subscriptions associated with the invoice schedule.
'
items:
$ref: '#/definitions/InvoiceScheduleSpecificSubscriptions'
type: array
status:
description: 'The status of the invoice schedule.
'
enum:
- Pending
- PartiallyProcessed
- Paused
- FullyProcessed
type: string
totalAmount:
description: "The total amount that needs to be billed during the processing of the invoice schedule. \n\nThe value of this field keeps unchanged once invoice schedule items are created.\n"
format: number
type: string
unbilledAmount:
description: 'The amount that is waiting to be billed during the processing of the invoice schedule.
'
format: number
type: string
type: object
- $ref: '#/definitions/InvoiceScheduleCustomFields'
- {}
BillRunFilters:
allOf:
- properties:
accountId:
description: 'The target account of the bill run.
'
type: string
filterType:
description: 'The type of the filter to determine whether to create a bill run at the account level or subscription level.
'
enum:
- Account
- Subscription
- InvoiceSchedule
type: string
subscriptionId:
description: "The unique ID of the target subscription belonged to the target account. \n\nThis field is required if you set the `filterType` field to `Subscription`.\n"
type: string
type: object
- {}
title: billRunFilters
POSTCreateInvoiceScheduleRequest:
allOf:
- properties:
accountKey:
description: 'The ID or number of the account associated with the invoice schedule.
'
type: string
additionalSubscriptionsToBill:
description: "A list of the numbers of the subscriptions that need to be billed together with the invoice schedule. \n\nOne invoice schedule can have at most 600 additional subscriptions.\n"
items:
type: string
type: array
invoiceSeparately:
description: 'Whether the invoice items created from the invoice schedule appears on a separate invoice when Zuora generates invoices.
'
type: boolean
notes:
description: 'Comments on the invoice schedule.
'
maxLength: 255
type: string
orders:
description: 'A list of the IDs or numbers of the orders associated with the invoice schedule. One invoice schedule can be associated with at most 10 orders.
'
items:
type: string
type: array
scheduleItems:
description: 'Container for invoice schedule items. One invoice schedule can have at most 50 invoice schedule items.
'
items:
$ref: '#/definitions/POSTScheduleItemType'
type: array
specificSubscriptions:
description: "A list of the numbers of specific subscriptions associated with the invoice schedule.\n\n- If the subscriptions specified in this field belong to the orders specified in the `orders` field, only the specific subscriptions instead of the orders are associated with the invoice schedule. \n- If only the `orders` field is specified, all the subscriptions from the order are associated with the invoice schedule.\n\nExample:\n```\n{\n \"orders\": [\n \"O-00000001\", \"O-00000002\"\n ],\n \"specificSubscriptions\": [\n {\n \"orderKey\": \"O-00000001\",\n \"subscriptionKey\": \"S-00000001\"\n }\n ]\n}\n```\n- For the order with number O-00000001, only subscription S-00000001 contained in the order is associated with the invoice schedule.\n- For the order with number O-00000002, all subscriptions contained in the order are associated with the invoice schedule.\n"
items:
$ref: '#/definitions/InvoiceScheduleSpecificSubscriptions'
type: array
type: object
- $ref: '#/definitions/InvoiceScheduleCustomFields'
- {}
example:
accountKey: A00000007
additionalSubscriptionsToBill:
- S-00000001
- S-00000002
invoiceSeparately: false
notes: 2022 Billing Schedule
orders:
- O-00000007
- O-00000008
scheduleItems:
- amount: 50000
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
- amount: 14000
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
- amount: 6200
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
InvoiceScheduleItemCustomFields:
additionalProperties:
description: 'Custom fields of the Invoice Schedule Item 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 an Invoice Schedule Item object.
'
title: invoiceScheduleItemCustomFields
type: object
POSTScheduleItemType:
allOf:
- properties:
amount:
description: "The amount of the invoice to be generated during the processing of the invoice schedule item. \n\nYou can only specify either the `amount` field or `percentage` field in one request. \n - If you choose to specify the `amount` field in the request, `null` is returned as the value of the `percentage` field in the corresponding response. \n - If you choose to specify the `percentage` field in the request, the value of the `amount` field returned in the corresponding response is calculated based on the percentage of the total amount. \n"
format: number
type: string
name:
description: 'The name of the invoice schedule item.
'
maxLength: 100
type: string
percentage:
description: "The percentage of the total amount to be billed during the processing of the invoice schedule item. \n\nYou can only specify either the `amount` field or `percentage` field in one request. \n - If you choose to specify the `amount` field in the request, `null` is returned as the value of the `percentage` field in the corresponding response. \n - If you choose to specify the `percentage` field in the request, the value of the `amount` field returned in the corresponding response is calculated based on the percentage of the total amount.\n"
format: number
maximum: 100
type: string
runDate:
description: "The date in the tenant’s time zone when the invoice schedule item is planned to be processed to generate an invoice.\n\n\nWhen specifying run dates for invoice schedule items, consider that:\n- An invoice schedule item with a blank run date will not be executed.\n- You can only update the run date for an invoice schedule item in Pending status.\n- If the run date of an invoice schedule item is left empty, the dates of all subsequent invoice schedule items must also be blank.\n- You must specify run dates in chronological order for invoice schedule items. \n"
format: date
type: string
targetDateForAdditionalSubscriptions:
description: "The date in the tenant's time zone used by the invoice schedule to determine which fixed-period regular charges to be billed together with the invoice schedule item. \n\nThe regular charges must come from the subscriptions specified in the `additionalSubscriptionsToBill` field.\n"
format: date
type: string
type: object
- $ref: '#/definitions/InvoiceScheduleItemCustomFields'
- {}
title: scheduleItems
InvoiceScheduleSpecificSubscriptions:
properties:
chargeNumbers:
description: 'A list of charges in the subscription that are chosen to be included in the invoice schedule.
'
type: string
orderKey:
description: 'The unique ID or number of the order associated with the invoice schedule.
'
type: string
subscriptionKey:
description: 'The unique number of the subscription contained in the order associated with the invoice schedule.
'
type: string
title: specificSubscriptions
type: object
InvoiceScheduleCustomFields:
additionalProperties:
description: 'Custom fields of the Invoice Schedule 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 an Invoice Schedule object.
'
title: invoiceScheduleCustomFields
type: object
POSTExecuteInvoiceScheduleRequest:
allOf:
- properties:
scheduleItemId:
description: 'The ID of the invoice schedule item to be executed.
The item must be the earliest pending schedule item. If all the invoice schedule items have been processed and credit is needed to be generated, do not specify this field in the request.
'
type: string
type: object
- {}
example:
scheduleItemId: 8ad09b7d82b5c62f0182c5cd16944f73
PUTUpdateInvoiceScheduleRequest:
allOf:
- properties:
additionalSubscriptionsToBill:
description: "A list of the numbers of the subscriptions that need to be billed together with the invoice schedule. \n\nOne invoice schedule can have at most 600 additional subscriptions.\n"
items:
type: string
type: array
invoiceSeparately:
description: 'Whether the invoice items created from the invoice schedule appears on a separate invoice when Zuora generates invoices.
'
type: boolean
nextRunDate:
description: "The run date of the next execution of the invoice schedule. \n\nBy default, the next run date is the same as the run date of next pending invoice schedule item. The date can be overwritten by a different date other than the default value. If the invoice schedule has completed the execution, the next run date is `null`.\n"
format: date
type: string
notes:
description: 'Comments on the invoice schedule.
'
maxLength: 255
type: string
orders:
description: 'A list of the IDs or numbers of the orders associated with the invoice schedule. One invoice schedule can be associated with at most 10 orders.
The orders specified in this field override all the existing orders associated with the invoice schedule.
'
items:
type: string
type: array
scheduleItems:
description: 'Container for invoice schedule items. The maximum number of schedule items is 50.
The invoice schedule items specified in this field override all the existing invoice schedule items.
'
items:
$ref: '#/definitions/UpdateScheduleItems'
type: array
specificSubscriptions:
description: "A list of the numbers of specific subscriptions associated with the invoice schedule.\n\n- If the subscriptions specified in this field belong to the orders specified in the `orders` field, only the specific subscriptions instead of the orders are associated with the invoice schedule. \n- If only the `orders` field is specified, all the subscriptions from the order are associated with the invoice schedule.\n \nThe specific subscriptions specified in this field override all the existing specific subscriptions associated with the invoice schedule.\n\nExample:\n```\n{\n \"orders\": [\n \"O-00000001\", \"O-00000002\"\n ],\n \"specificSubscriptions\": [\n {\n \"orderKey\": \"O-00000001\",\n \"subscriptionKey\": \"S-00000001\"\n }\n ]\n}\n```\n- For the order with number O-00000001, only subscription S-00000001 contained in the order is associated with the invoice schedule.\n- For the order with number O-00000002, all subscriptions contained in the order are associated with the invoice schedule.\n"
items:
$ref: '#/definitions/InvoiceScheduleSpecificSubscriptions'
type: array
type: object
- $ref: '#/definitions/InvoiceScheduleCustomFields'
- {}
example:
additionalSubscriptionsToBill:
- S-00000001
- S-00000002
invoiceSeparately: false
nextRunDate: '2022-02-01'
notes: 2022 Billing Schedule - V2
orders:
- O-00000007
- O-00000008
scheduleItems:
- amount: 54000
id: 8a8881aa82118bec018211daf9f01680
runDate: '2022-02-24'
targetDateForAdditionalSubscriptions: '2022-02-24'
- amount: 10000
id: 8a8881aa82118bec018211daf9f11681
runDate: '2022-10-17'
targetDateForAdditionalSubscriptions: '2022-10-17'
- amount: 6200
id: 8a8881aa82118bec018211daf9f11682
runDate: '2022-11-14'
targetDateForAdditionalSubscriptions: '2022-11-14'
specificSubscriptions:
- orderKey: O-00000008
subscriptionKey: S-00000008
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_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_pageSize:
name: pageSize
in: query
required: false
type: integer
maximum: 40
default: 20
description: 'The number of records returned per page in the response.
'
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).
'
GLOBAL_REQUEST_page:
name: page
in: query
required: false
type: integer
minimum: 1
default: 1
description: 'The index number of the page that you want to retrieve. This parameter is dependent on `pageSize`. You must set `pageSize` before specifying `page`. For example, if you set `pageSize` to `20` and `page` to `2`, the 21st to 40th records are returned in the response.
'
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