---
title: "Create an order asynchronously"
method: POST
path: "/v1/async/orders"
tags: ["Orders"]
---

# Create an order asynchronously

`POST /v1/async/orders`

**Note:** This operation is only available if you have the [Orders](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/orders-introduction/overview-of-orders) feature enabled. If you are an existing Zuora <a href="ttps://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/subscribe-and-amend" target="_blank">Subscribe and Amend</a> customer, we recommend you enable <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders-harmonization" target="_blank">Orders Harmonization</a> to access the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/orders-introduction/overview-of-orders" target="_blank">Orders</a> feature. With Orders, you can access both existing functions for subscription and billing management and the new features on Zuora Billing.

**Note:** The [Order Line Items](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-non-subscription-transactions/order-line-items) feature is now generally available to all Zuora customers. You need to enable the [Orders](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/orders-introduction/overview-of-orders) feature to access the [Order Line Items](ttps://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-non-subscription-transactions/order-line-items) feature. As of Zuora Billing Release 313 (November 2021), new customers who onboard on [Orders](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/orders-introduction/overview-of-orders) will have the [Order Line Items](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-non-subscription-transactions/order-line-items) feature enabled by default.      

In the case where a normal "Create an order" operation call will time out, use this operation instead to create an order asynchronously. A job will be creating the order in the back end; the job ID will be returned for tracking the job status and result. 

Note that this operation doesn't support auto-refund and invoice write-off during subscription cancellation. Use the "Create an order" operation instead.

The limit of orders allowed on a subscription is 1000.

The limit of order line items allowed in an order is 100.

Zuora has the following limits on the Orders synchronous API to prevent performance degradation: 
* Up to 50 subscriptions are allowed in a single [Create an order](https://developer.zuora.com/api-references/api/operation/POST_Order) or [Preview an order](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrder) operation call.
* Up to 50 order actions are allowed in a single [Create an order](https://developer.zuora.com/api-references/api/operation/POST_Order) or [Preview an order](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrder) operation call.
* Up to 50 order actions are allowed on a single subscription in a [Create an order](https://developer.zuora.com/api-references/api/operation/POST_Order) or [Preview an order](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrder) operation call.

If you have an Order that exceeds any limits of the above, Zuora recommends you use the following asynchronous API operations:
* [Create an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_CreateOrderAsynchronously)
* [Preview an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrderAsynchronously)
* [Retrieve the status and response of a job](https://developer.zuora.com/api-references/api/operation/GET_JobStatusAndResponse) for checking the status of the asynchronous API operations

Zuora has the following limits on the Orders asynchronous API operations to prevent performance degradation:
* Up to 300 subscriptions are allowed in a single [Create an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_CreateOrderAsynchronously) or [Preview an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrderAsynchronously) operation call.
* Up to 300 order actions are allowed in a single [Create an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_CreateOrderAsynchronously) or [Preview an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrderAsynchronously) operation call.
* Up to 300 order actions are allowed on a single subscription in a [Create an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_CreateOrderAsynchronously) or [Preview an order asynchronously](https://developer.zuora.com/api-references/api/operation/POST_PreviewOrderAsynchronously) operation call.

## Query parameters

- `returnIds` boolean

## Headers

- `Idempotency-Key` string
- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Track-Id` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Version` string

## Request body

- POSTOrderAsyncRequestType
  - `category` 'NewSales' | 'Return' — Category of the order to indicate a product sale or return. Default value is `NewSales`.
  - `customFields` OrderObjectCustomFields — Container for custom fields of an Order object.
  - `description` string — A description of the order.
  - `existingAccountId` string — The account ID under which this order will be created. This field sets the default invoice owner account and subscription owner account for any new subscriptions in the order. To override these defaults for individual subscriptions, use the `subscriptionOwnerAccountNumber` and `invoiceOwnerAccountNumber` nested fields in the `subscriptions` field. **Note:** You can specify either the `existingAccountNumber` or `existingAccountId` field, but not both.
  - `existingAccountNumber` string — The account number under which this order will be created. This field sets the default invoice owner account and subscription owner account for any new subscriptions in the order. To override these defaults for individual subscriptions, use the `subscriptionOwnerAccountNumber` and `invoiceOwnerAccountNumber` nested fields in the `subscriptions` field.
  - `externallyManagedBy` 'Amazon' | 'Apple' | 'Google' | 'Roku' — An enum field on the Subscription object to indicate the name of a third-party store. This field is used to represent subscriptions created through third-party stores.
  - `newAccount` CreateOrderNewAccount — Container for the data access control field.
    - `accountNumber` string
    - `additionalEmailAddresses` string — List of additional email addresses to receive emailed invoices. Values should be a comma-separated list of email addresses.
    - `allowInvoiceEdit` boolean — Indicates if associated invoices can be edited. Values are: * `true` * `false` (default)
    - `autoPay` boolean — Specifies whether future payments are to be automatically billed when they are due. Possible values are `true`, `false`.
    - `batch` string — **Note**: By default, you have 50 configurable account batches. To increase the limit to 200 batches, you must have the <a href="https://docs.zuora.com?resourceId=performance-booster-elite" target="_blank">Performance Booster Elite</a> package.
    - `billCycleDay` integer, required — Day of the month that the account prefers billing periods to begin on. If set to 0, the bill cycle day will be set as "AutoSet".
    - `billToContact` BillToContactPostOrder, required — Container for custom fields of a Contact object.
      - `address1` string — First line of the contact's address. This is often a street address or a business name.
      - `address2` string — Second line of the contact's address.
      - `city` string — City of the contact's address.
      - `contactDescription` string — A description for the contact.
      - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the bill-to contact to calculate tax.
      - `county` string — County of the contact's address.
      - `fax` string — Fax number of the contact.
      - `firstName` string, required — First name of the contact.
      - `homePhone` string — Home phone number of the contact.
      - `lastName` string, required — Last name of the contact.
      - `mobilePhone` string — Mobile phone number of the contact.
      - `nickname` string — Nickname of the contact.
      - `otherPhone` string — Additional phone number of the contact. Use the `otherPhoneType` field to specify the type of phone number.
      - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number in the `otherPhone` field.
      - `personalEmail` string, email — Personal email address of the contact.
      - `postalCode` string — ZIP code or other postal code of the contact's address.
      - `state` string — State or province of the contact's address.
      - `taxRegion` string, nullable — Region defined in your taxation rules. Only applicable if you use Zuora Tax.
      - `workEmail` string, email — Business email address of the contact.
      - `workPhone` string — Business phone number of the contact.
    - `communicationProfileId` string
    - `creditCard` CreditCard — Default payment method associated with an account. Only credit card payment methods are supported.
      - `cardHolderInfo` AccountCreditCardHolder — Information about the cardholder of a credit card payment method associated with an account. If you do not provide information about the cardholder, Zuora uses the account's bill-to contact.
        - `addressLine1` string — First line of the cardholder's address.
        - `addressLine2` string — Second line of the cardholder's address.
        - `cardHolderName` string — Full name of the cardholder as it appears on the card. For example, "John J Smith", 50 characters or less. The value must consist only of US-ASCII characters and must not include special characters.
        - `city` string — City of the cardholder's address. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
        - `country` string — Country of the cardholder's address. The value of this field must be a valid country name or abbreviation. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
        - `email` string — Email address of the cardholder.
        - `phone` string — Phone number of the cardholder.
        - `state` string — State or province of the cardholder's address.
        - `zipCode` string — ZIP code or other postal code of the cardholder's address.
      - `cardNumber` string — Card number. Once set, you cannot update or query the value of this field. The value of this field is only available in masked format. For example, XXXX-XXXX-XXXX-1234 (hyphens must not be used when you set the credit card number).
      - `cardType` 'Visa' | 'MasterCard' | 'AmericanExpress' | 'Discover' | 'JCB' | 'Diners' | 'CUP' | 'Maestro' | 'Electron' | 'AppleVisa' | 'AppleMasterCard' | 'AppleAmericanExpress' | 'AppleDiscover' | 'AppleJCB' | 'Elo' | 'Hipercard' | 'Naranja' | 'Nativa' | 'TarjetaShopping' | 'Cencosud' | 'Argencard' | 'Cabal' — Type of card.
      - `expirationMonth` integer — Expiration date of the card.
      - `expirationYear` integer — Expiration year of the card.
      - `securityCode` string — CVV or CVV2 security code of the card. To ensure PCI compliance, Zuora does not store the value of this field.
    - `creditMemoTemplateId` string — **Note:** This field is only available if you have [Invoice Settlement](https://docs.zuora.com?resourceId=billing-invoice-settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://docs.zuora.com?resourceId=billing-invoice-settlement-migration-checklist-and-guide) for more information. The unique ID of the credit memo template, configured in **Billing Settings** > **Manage Billing Document Configuration** through the Zuora UI. For example, 2c92c08a6246fdf101626b1b3fe0144b.
    - `crmId` string
    - `currency` string, required — 3 uppercase character currency code. For payment method authorization, if the `paymentMethod` > `currencyCode` field is specified, `currencyCode` is used. Otherwise, this `currency` field is used for payment method authorization. If no currency is specified for the account, the default currency of the account is then used.
    - `customFields` AccountObjectCustomFields — Container for custom fields of an Account object.
    - `customerServiceRepName` string — Name of the account's customer service representative, if applicable.
    - `debitMemoTemplateId` string — **Note:** This field is only available if you have [Invoice Settlement](https://docs.zuora.com?resourceId=billing-invoice-settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://docs.zuora.com?resourceId=billing-invoice-settlement-migration-checklist-and-guide) for more information. The unique ID of the debit memo template, configured in **Billing Settings** > **Manage Billing Document Configuration** through the Zuora UI. For example, 2c92c08d62470a8501626b19d24f19e2.
    - `hpmCreditCardPaymentMethodId` string — The ID of the payment method associated with this account. The payment method specified for this field will be set as the default payment method of the account. If the `autoPay` field is set to `true`, you must provide the credit card payment method ID for either this field or the `creditCard` field, but not both. For the Credit Card Reference Transaction payment method, you can specify the payment method ID in this field or use the `paymentMethod` field to create a CC Reference Transaction payment method for an account.
    - `invoiceDeliveryPrefsEmail` boolean — Specifies whether to turn on the invoice delivery method 'Email' for the new account. Values are: * `true` (default). Turn on the invoice delivery method 'Email' for the new account. * `false`. Turn off the invoice delivery method 'Email' for the new account.
    - `invoiceDeliveryPrefsPrint` boolean — Specifies whether to turn on the invoice delivery method 'Print' for the new account. Values are: * `true`. Turn on the invoice delivery method 'Print' for the new account. * `false` (default). Turn off the invoice delivery method 'Print' for the new account.
    - `invoiceTemplateId` string
    - `name` string, required
    - `notes` string
    - `organizationLabel` string — Name of the organization that the account belongs to. This field is only required when you have already turned on Multi-Org feature.
    - `parentId` string — Identifier of the parent customer account for this Account object. Use this field if you have <a href="https://docs.zuora.com?resourceId=billing-overview-customer-accounts" target="_blank">Customer Hierarchy</a> enabled.
    - `partnerAccount` boolean — Whether the customer account is a partner, distributor, or reseller. You can set this field to `true` if you have business with distributors or resellers, or operating in B2B model to manage numerous subscriptions through concurrent API requests. After this field is set to `true`, the calculation of account metrics is performed asynchronously during operations such as subscription creation, order changes, invoice generation, and payments. **Note**: This field is available only if you have the <a href="https://docs.zuora.com?resourceId=billing-reseller-account" target="_blank">Reseller Account</a> feature enabled.
    - `paymentGateway` string
    - `paymentMethod` union — Payment method information associated with an account.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `cardHolderInfo` CreatePaymentMethodCardholderInfo, required — Container for cardholder information. The nested `cardHolderName` field is required.
          - `addressLine1` string — First address line, 255 characters or less.
          - `addressLine2` string — Second address line, 255 characters or less.
          - `cardHolderName` string, required — The card holder's full name as it appears on the card, e.g., "John J Smith", 50 characters or less. The value must consist only of US-ASCII characters and must not include special characters.
          - `city` string — City, 40 characters or less. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — Country, must be a valid country name or abbreviation. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `email` string — Card holder's email address, 80 characters or less.
          - `phone` string — Phone number, 40 characters or less.
          - `state` string — State; must be a valid subregion (state or province) name or code. For more information, see <a href="https://docs.zuora.com?resourceId=view-sub-regions-of-specific-country-or-region" target="_blank">View subregions of a specific country or region</a>.
          - `zipCode` string — Zip code, 20 characters or less.
        - `cardMaskNumber` string — The masked card number. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `cardNumber` string, required — Credit card number.
        - `cardType` string, required — The type of the credit card. Possible values include `Visa`, `MasterCard`, `AmericanExpress`, `Discover`, `JCB`, and `Diners`. For more information about credit card types supported by different payment gateways, see <a href="https://docs.zuora.com?resourceId=payments-supported-payment-gateways" target="_blank">Supported Payment Gateways</a>.
        - `checkDuplicated` boolean — Indicates whether the duplication check is performed when you create a new credit card payment method. The default value is `false`. With this field set to `true`, Zuora will check all active payment methods associated with the same billing account to ensure that no duplicate credit card payment methods are created. An error is returned if a duplicate payment method is found. The following fields are used for the duplication check: - `cardHolderName` - `expirationMonth` - `expirationYear` - `creditCardMaskNumber`. It is the masked credit card number generated by Zuora. For example, `************1234`. **This field is being deprecated.** To achieve the same purpose, use the `processingOptions` > `checkDuplicated` field of the payment method object.
        - `expirationMonth` integer, required — One or two digit expiration month (1-12) of the credit card.
        - `expirationYear` integer, required — Four-digit expiration year of the credit card.
        - `identityNumber` string — The identity number of the cardholder. This field is required for Credit Card payment methods in certain countries such as Brazil.
        - `mitConsentAgreementRef` string — Specifies your reference for the stored credential consent agreement that you have established with the customer. Only applicable if you set the `mitProfileAction` field.
        - `mitConsentAgreementSrc` 'External' — Required if you set the `mitProfileAction` field. Specifies how the consent agreement has been established with the customer. The allowed value is `External`. If you do not specify the `mitProfileAction` field, Zuora will automatically create a stored credential profile for the payment method, with the default value `External` set to this field.
        - `mitNetworkTransactionId` string — Specifies the ID of a network transaction. Only applicable if you set the `mitProfileAction` field to `Persist`.
        - `mitProfileAction` 'Activate' | 'Persist' — Specifies how Zuora creates and activates the stored credential profile. - `Activate` - Use this value if you are creating the stored credential profile after receiving the customer's consent. Zuora will create the stored credential profile then send a cardholder-initiated transaction (CIT) to the payment gateway to validate the stored credential profile. If the CIT succeeds, the status of the stored credential profile will be `Active`. If the CIT does not succeed, Zuora will not create a stored credential profile. If the payment gateway does not support the stored credential transaction framework, the status of the stored credential profile will be `Agreed`. - `Persist` - Use this value if the stored credential profile represents a stored credential profile in an external system. The status of the payment method's stored credential profile will be `Active`. If you do not specify this field, Zuora will automatically create a stored credential profile for the payment method, with the default value `Activate` set to this field.
        - `mitProfileAgreedOn` string, date — The date on which the profile is agreed. The date format is `yyyy-mm-dd`.
        - `mitProfileType` 'Recurring' | 'Unscheduled' — Required if you set the `mitProfileAction` field. Indicates the type of the stored credential profile to process recurring or unsecheduled transactions. If you do not specify the `mitProfileAction` field, Zuora will automatically create a stored credential profile for the payment method, with the default value `Recurring` set to this field.
        - `screeningAmount` number — For <a href="https://docs.zuora.com?resourceId=payments-chase-orbital-gateway-integration" target="_blank">Chase Paymentech Orbital Gateway</a> integrations, if the Safetech Fraud service is enabled, use this field to pass in the amount used for fraud screening for Credit Card validation transactions. Two-decimal amount is supported. If the `screeningAmount` field is not specified, the authorization amount is used for fraud screening.
        - `securityCode` string — CVV or CVV2 security code of the credit card. To ensure PCI compliance, this value is not stored and cannot be queried.
        - `tokens` object — To create tokenized payment methods, pass in the existing token information through the fields in this container. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
          - `gatewayType` string, required — The type of the payment gateway to generate the tokens. This field is case-sensitive.
          - `secondTokenId` string — Pass in the second token of the payment method.
          - `thirdTokenId` string — Pass in the third token of the payment method.
          - `tokenId` string, required — Pass in the first token of the payment method.
        - `tokenize` boolean — Specify `true` to tokenize the payment method with the card information. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `creditCardMaskNumber` string — The masked credit card number, such as `*********1112`. This field is specific for the CC Reference Transaction payment method. It is an optional field that you can use to distinguish different CC Reference Transaction payment methods. Though there are no special restrictions on the input string, it is highly recommended to specify a card number that is masked.
        - `secondTokenId` string — A gateway unique identifier that replaces sensitive payment method data. `secondTokenId` is conditionally required only when `tokenId` is being used to represent a gateway customer profile. `secondTokenId` is used in the CC Reference Transaction payment method.
        - `tokenId` string, required — A gateway unique identifier that replaces sensitive payment method data or represents a gateway's unique customer profile. When `tokenId` is used to represent a customer profile, `secondTokenId` is conditionally required for representing the underlying tokenized payment method. The values for the `tokenId` and `secondTokenId` fields differ for gateways. For more information, see the Knowledge Center article specific to each gateway that supports the CC Reference Transaction payment method.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `addressLine1` string — First address line, 255 characters or less.
        - `addressLine2` string — Second address line, 255 characters or less.
        - `bankABACode` string, required — The nine-digit routing number or ABA number used by banks. This field is only required if the `type` field is set to `ACH`.
        - `bankAccountMaskNumber` string — The masked account number such as ****1234. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `bankAccountName` string, required — The name of the account holder, which can be either a person or a company. For ACH payment methods on the BlueSnap integration, see [Overview of BlueSnap gateway integration](https://docs.zuora.com?resourceId=payments-bluesnap-payment-gateway-integration) for more information about how Zuora splits the string in this field into two parts and passes them to BlueSnap's `firstName` and `lastName` fields.
        - `bankAccountNumber` string, required — The bank account number associated with the ACH payment. For the creation of tokenized ACH payment methods, this field is optional. Currently, ACH tokenization is supported on selected payment gateway integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `bankAccountType` 'BusinessChecking' | 'Checking' | 'Saving', required — The type of bank account associated with the ACH payment. When creating an ACH payment method on Adyen, this field is required by Zuora but it is not required by Adyen. To create the ACH payment method successfully, specify a real value for this field if you can. If it is not possible to get the real value for it, specify any of the allowed values as a dummy value, `Checking` preferably.
        - `bankName` string, required — The name of the bank where the ACH payment account is held. When creating an ACH payment method on Adyen, this field is required by Zuora but it is not required by Adyen. To create the ACH payment method successfully, specify a real value for this field if you can. If it is not possible to get the real value for it, specify a dummy value.
        - `city` string — City, 40 characters or less. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
        - `country` string — Country, must be a valid country name or abbreviation. See <a href="https://docs.zuora.com?resourceId=view-countries-or-regions" target="_blank">View countries or regions</a> for the list of supported country names and abbreviations. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
        - `phone` string — Phone number, 40 characters or less.
        - `state` string — State, must be a valid subregion (state or province) name or code. For more information, see <a href="https://docs.zuora.com?resourceId=view-sub-regions-of-specific-country-or-region" target="_blank">View subregions of a specific country or region</a>.
        - `zipCode` string — Zip code, 20 characters or less.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `tokens` object — To create tokenized payment methods, pass in the existing token information through the fields in this container. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
          - `gatewayType` string, required — The type of the payment gateway to generate the tokens. This field is case-sensitive.
          - `secondTokenId` string — Pass in the second token of the payment method.
          - `thirdTokenId` string — Pass in the third token of the payment method.
          - `tokenId` string, required — Pass in the first token of the payment method.
        - `tokenize` boolean — Specify `true` to tokenize the payment method with the account information. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `IBAN` string, required — The International Bank Account Number. This field is required if the `type` field is set to `SEPA`. However, for the creation of tokenized SEPA payment methods, this field is optional. Currently, SEPA tokenization is supported on selected payment gateway integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `accountHolderInfo` object, required — The container for the account holder information. The nested `accountHolderName` field is required. However, for the creation of tokenized SEPA payment methods, this field is optional. Currently, SEPA tokenization is supported on selected payment gateway integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
          - `accountHolderName` string, required — The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder. This field is required for SEPA Direct Debit payment methods on Stripe v2 for [certain countries](https://stripe.com/docs/payments/sepa-debit/set-up-payment?platform=web#web-submit-payment-method).
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays. This field is required for SEPA payment methods on Stripe v2 for [certain countries](https://stripe.com/docs/payments/sepa-debit/set-up-payment?platform=web#web-submit-payment-method).
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountMaskNumber` string — The masked account number such as ****1234. When creating tokenized SEPA payment methods, this `accountMaskNumber` field is required if the `tokens` field is provided. Currently, SEPA tokenization is supported on selected payment gateway integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `businessIdentificationCode` string — The BIC code used for SEPA.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `tokenize` boolean — When creating a SEPA payment method on Adyen Integration v2.0, use this field to specify whether to tokenize the payment method with IBAN. If `tokenize` is `true`, `IBAN` is required. If the `tokens` field is provided, this `tokenize` field is not required. For more information about how to create tokenized SEPA payment methods on Adyen, see <a href="https://docs.zuora.com?resourceId=payments-tokenize-payment-methods-on-adyen" target="_blank">Tokenize SEPA payment methods on Adyen Integration v2.0</a>.
        - `tokens` object — To create tokenized payment methods, pass in the existing token information through the fields in this container. Currently, SEPA tokenization is supported on selected payment gateway integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
          - `gatewayType` 'Adyen' | 'Stripe', required — The type of the payment gateway to generate the tokens. This field is case-sensitive.
          - `secondTokenId` string — Pass in the second token of the payment method.
          - `thirdTokenId` string — Pass in the third token of the payment method.
          - `tokenId` string, required — Pass in the first token of the payment method.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `accountHolderInfo` object, required — The container for the account holder information. The nested `accountHolderName` field is required.
          - `accountHolderName` string — Required. The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder.
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays.
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountNumber` string, required — The number of the customer's bank account.
        - `accountMaskNumber` string — The masked account number such as ****1234.
        - `bankCode` string, required — The sort code or number that identifies the bank. This is also known as the sort code.
        - `identityNumber` string, required — The identity number used for Bank Transfer.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `accountHolderInfo` object, required — The container for the account holder information. The nested `accountHolderName` field is required.
          - `accountHolderName` string — Required. The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder.
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays.
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountNumber` string, required — The number of the customer's bank account.
        - `accountMaskNumber` string — The masked account number such as ****1234.
        - `branchCode` string, required — The branch code of the bank used for direct debit.
        - `identityNumber` string, required — The identity number used for Bank Transfer.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `accountHolderInfo` object, required — The container for the account holder information. The nested `accountHolderName` field is required.
          - `accountHolderName` string — Required. The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder.
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays.
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountNumber` string, required — The number of the customer's bank account.
        - `accountMaskNumber` string — The masked account number such as ****1234. When creating BACS payment methods on Stripe, if the `tokens` field is provided, this `accountMaskNumber` field is required. For more information, see <a href="https://docs.zuora.com?resourceId=payments-stripe-gateway-integration" target="_blank">Overview of Stripe payment gateway integration</a>.
        - `bankCode` string, required — The sort code or number that identifies the bank. This is also known as the sort code.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `tokenize` boolean — When creating a BACS payment method on Adyen v2.0, set this field to `true` to support processing BACS recurring payments. For more information about other requirements for processing BACS recurring payments, see <a href="https://docs.zuora.com?resourceId=payments-direct-debit-uk-bacs-for-adyen" target="_blank">Overview of Adyen Integration v2.0</a>.
        - `tokens` object — To create tokenized BACS payment methods on Stripe v2, pass in the existing token information through the fields in this container. For more information, see <a href="https://docs.zuora.com?resourceId=payments-stripe-gateway-integration" target="_blank">Overview of Stripe payment gateway integration</a>.
          - `gatewayType` 'Stripe' — Required. The type of the payment gateway to generate the tokens. This field is case-sensitive.
          - `secondTokenId` string — Pass in the second token of the payment method. For more information, see <a href="https://docs.zuora.com?resourceId=payments-stripe-gateway-integration" target="_blank">Overview of Stripe payment gateway integration</a>.
          - `thirdTokenId` string — Pass in the third token of the payment method.
          - `tokenId` string — Required. Pass in the first token of the payment method. For more information, see <a href="https://docs.zuora.com?resourceId=payments-stripe-gateway-integration" target="_blank">Overview of Stripe payment gateway integration</a>.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `accountHolderInfo` object — The container for the account holder information. The nested `accountHolderName` field is required.
          - `accountHolderName` string — Required. The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder.
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays.
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountNumber` string, required — The number of the customer's bank account.
        - `accountMaskNumber` string — The masked account number such as ****1234.
        - `branchCode` string, required — The branch code of the bank used for direct debit.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `accountHolderInfo` object, required — The container for the account holder information. The nested `accountHolderName` field is required.
          - `accountHolderName` string — Required. The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder.
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays.
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountNumber` string, required — The number of the customer's bank account.
        - `accountMaskNumber` string — The masked account number such as ****1234.
        - `branchCode` string, required — The branch code of the bank used for direct debit.
        - `bankCode` string, required — The sort code or number that identifies the bank. This is also known as the sort code.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `accountHolderInfo` object, required — The container for the account holder information. The nested `accountHolderName` field is required.
          - `accountHolderName` string — Required. The full name of the bank account holder.
          - `addressLine1` string — The first line of the address for the account holder.
          - `addressLine2` string — The second line of the address for the account holder.
          - `city` string — The city where the account holder stays. It is recommended to provide the city and country information when creating a payment method. The information will be used to process payments. If the information is not provided during payment method creation, the city and country data will be missing during payment processing.
          - `country` string — The country where the account holder stays.
          - `email` string — The email address of the account holder.
          - `firstName` string — The first name of the account holder.
          - `lastName` string — The last name of the account holder.
          - `phone` string — The phone number of the account holder.
          - `state` string — The state where the account holder stays.
          - `zipCode` string — The zip code for the address of the account holder.
        - `accountNumber` string, required — The number of the customer's bank account.
        - `accountMaskNumber` string — The masked account number such as ****1234.
        - `branchCode` string, required — The branch code of the bank used for direct debit.
        - `bankCode` string, required — The sort code or number that identifies the bank. This is also known as the sort code.
        - `mandateInfo` object — The container of the mandate information for the payment method.
          - `mandateId` string — The mandate ID.
          - `mandateReason` string — The reason of the mandate from the gateway side.
          - `mandateStatus` string — The status of the mandate from the gateway side.
        - `processingOptions` object — The container for payment method processing options.
          - `checkDuplicated` boolean — Indicates whether to perform a duplication check when you create a payment method. The default value is `false`. With this field set to `true`, Zuora will check the active and closed payment methods associated with the same billing account to ensure that no duplicate payment methods are created. For more information, see <a href="https://docs.zuora.com?resourceId=payments-duplication-check" target="_blank">Duplication check on payment methods</a>.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `BAID` string, required — ID of a PayPal billing agreement. example: I-1TJ3GAGG82Y9
        - `email` string — Email address associated with the payment method.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `BAID` string, required — ID of a PayPal billing agreement.
        - `email` string, required — Email address associated with the payment method.
        - `tokens` object — To create tokenized payment methods, pass in the existing token information through the fields in this container. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
          - `gatewayType` string, required — The type of the payment gateway to generate the tokens. This field is case-sensitive.
          - `secondTokenId` string — Pass in the second token of the payment method.
          - `thirdTokenId` string — Pass in the third token of the payment method.
          - `tokenId` string, required — Pass in the first token of the payment method.
        - `tokenize` boolean — Specify `true` to tokenize the payment method. Currently, this field is only supported on certain integrations. See <a href="https://docs.zuora.com?resourceId=payments-create-tokenized-payment-methods" target="_blank">this article</a> for more information.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `BAID` string, required — ID of a PayPal billing agreement.
        - `email` string, required — Email address associated with the payment method.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object — Container for custom fields of a payment method object.
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `preapprovalKey` string, required — The PayPal preapproval key.
        - `email` string, email, required — Email address associated with the payment method.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `applePaymentData` string, required — This field is specific for setting up Apple Pay for Adyen to include payload with Apple Pay token or Apple payment data. This information should be stringified. For more information, see [Set up Adyen Apple Pay](https://docs.zuora.com?resourceId=payments-create-apply-pay-using-api).
        - `email` string, email — Email address associated with the payment method. This field is specific for setting up Apple Pay on Adyen v2.0. This field will be passed to Adyen as `shopperEmail`.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `googlePaymentToken` string, required — This field is specific for setting up Google Pay on Chase gateway integrations to specify the stringified Google Pay token. For more information, see [Set up Google Pay on Chase](https://docs.zuora.com?resourceId=payments-setup-chase-googlepay-using-api).
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
      - object
        - `type` 'CreditCard' | 'CreditCardReferenceTransaction' | 'ACH' | 'SEPA' | 'Betalingsservice' | 'Autogiro' | 'Bacs' | 'Becs' | 'Becsnz' | 'PAD' | 'PayPalCP' | 'PayPalEC' | 'PayPalNativeEC' | 'PayPalAdaptive' | 'AdyenApplePay' | 'AdyenGooglePay' | 'GooglePay' | 'AmazonPay', required — Type of the payment method. The following types of the payment methods are supported: * `CreditCard` * `CreditCardReferenceTransaction` * `ACH` * `SEPA` * `Betalingsservice` * `Autogiro` * `Bacs` * `Becs` * `Becsnz` * `PAD` * `PayPalCP` * `PayPalEC` * `PayPalNativeEC` * `PayPalAdaptive` * `AdyenApplePay` * `AdyenGooglePay` * `GooglePay` * `AmazonPay` To view the schema and example applicable to a specific payment method type, select the corresponding option from the following list.
        - `amazonPayToken` string, required — This field is specific for setting up Amazon Pay gateway integrations to specify the stringified Amazon Pay token.
        - `accountKey` string — The customer account ID such as `2x92c0f859b0480f0159d3a4a6ee5bb6` or the customer account number such as `A02855638`. To create an orphan payment method that is not associated with any customer account, you can skip this field. As soon as the account information is available, associate the payment method with an account through the [Update a payment method](https://developer.zuora.com/v1-api-reference/api/operation/PUT_PaymentMethod/) operation.
        - `authGateway` string — Internal ID of the payment gateway that Zuora will use to authorize the payments that are made with the payment method. If you do not set this field, Zuora will use one of the following payment gateways instead: * The default payment gateway of the customer account that owns the payment method, if the `accountKey` field is set. * The default payment gateway of your Zuora tenant, if the `accountKey` field is not set. If <a href="https://docs.zuora.com?resourceId=payments-gateway-routing" target="_blank">Payment Gateway Routing</a> is enabled: - If this field is not specified, gateway routing rules will be invoked. - If this field is specified, the specified gateway will be used to process the payment. If Payment Gateway Routing is disabled: - If this field is not specified, the default payment gateway will be used to process the payment. The default gateway of the customer account takes precedence over the default gateway of the tenant. - If this field is specified, the specified gateway will be used to process the payment.
        - `currencyCode` string — The currency used for payment method authorization.
        - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the Overview topic of each gateway integration in [Zuora Knowledge Center](https://docs.zuora.com?resourceId=payments-supported-payment-gateways). Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
          - `key` string — The name of a gateway-specific parameter.
          - `value` string — The value of the gateway-specific parameter.
        - `ipAddress` string — The IPv4 or IPv6 information of the user when the payment method is created or updated. Some gateways use this field for fraud prevention. If this field is passed to Zuora, Zuora directly passes it to gateways. If the IP address length is beyond 45 characters, a validation error occurs. For validating SEPA payment methods on Stripe v2, this field is required.
        - `makeDefault` boolean — Specifies whether the payment method will be the default payment method of the customer account that owns the payment method. Only applicable if the `accountKey` field is set. When you set this field to `true`, make sure the payment method is supported by the default payment gateway.
        - `skipValidation` boolean — Specify whether to skip the validation of the information through the payment gateway. For example, when migrating your payment methods, you can set this field to `true` to skip the validation.
    - `paymentTerm` string — **Note**: If you want to specify a payment term when creating a new account, you must set a value in this field. If you do not set a value in this field, Zuora will use the default value set in **Billing Settings** > **Payment Terms** from Zuora UI.
    - `purchaseOrderNumber` string — The number of the purchase order associated with this account. Purchase order information generally comes from customers.
    - `salesRep` string — The name of the sales representative associated with this account, if applicable.
    - `sequenceSetId` string, nullable — The ID of the sequence set to assign to the customer account. The billing documents to generate for this account will adopt the prefix and starting document number configured in the sequence set.
    - `shipToContact` ShipToContactPostOrder — Container for custom fields of a Contact object.
      - `address1` string — First line of the contact's address. This is often a street address or a business name.
      - `address2` string — Second line of the contact's address.
      - `city` string — City of the contact's address.
      - `contactDescription` string — A description for the contact.
      - `country` string — Country; must be a valid country name or abbreviation.
      - `county` string — County of the contact's address.
      - `fax` string — Fax number of the contact.
      - `firstName` string, required — First name of the contact.
      - `homePhone` string — Home phone number of the contact.
      - `lastName` string, required — Last name of the contact.
      - `mobilePhone` string — Mobile phone number of the contact.
      - `nickname` string — Nickname of the contact.
      - `otherPhone` string — Additional phone number of the contact. Use the `otherPhoneType` field to specify the type of phone number.
      - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number in the `otherPhone` field.
      - `personalEmail` string, email — Personal email address of the contact.
      - `postalCode` string — ZIP code or other postal code of the contact's address.
      - `state` string — State or province of the contact's address.
      - `taxRegion` string, nullable — Region defined in your taxation rules. Only applicable if you use Zuora Tax.
      - `workEmail` string, email — Business email address of the contact.
      - `workPhone` string — Business phone number of the contact.
    - `shipToSameAsBillTo` boolean — Whether the ship-to contact and bill-to contact are the same entity. The created account has the same bill-to contact and ship-to contact entity only when all the following conditions are met in the request body: - This field is set to `true`. - A bill-to contact is specified. - No ship-to contact is specified.
    - `soldToContact` SoldToContactPostOrder — Container for custom fields of a Contact object.
      - `address1` string — First line of the contact's address. This is often a street address or a business name.
      - `address2` string — Second line of the contact's address.
      - `city` string — City of the contact's address.
      - `contactDescription` string — A description for the contact.
      - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
      - `county` string — County of the contact's address.
      - `fax` string — Fax number of the contact.
      - `firstName` string, required — First name of the contact.
      - `homePhone` string — Home phone number of the contact.
      - `lastName` string, required — Last name of the contact.
      - `mobilePhone` string — Mobile phone number of the contact.
      - `nickname` string — Nickname of the contact.
      - `otherPhone` string — Additional phone number of the contact. Use the `otherPhoneType` field to specify the type of phone number.
      - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number in the `otherPhone` field.
      - `personalEmail` string, email — Personal email address of the contact.
      - `postalCode` string — ZIP code or other postal code of the contact's address.
      - `state` string — State or province of the contact's address.
      - `taxRegion` string, nullable — Region defined in your taxation rules. Only applicable if you use Zuora Tax.
      - `workEmail` string, email — Business email address of the contact.
      - `workPhone` string — Business phone number of the contact.
    - `soldToSameAsBillTo` boolean — Whether the sold-to contact and bill-to contact are the same entity. The created account has the same bill-to contact and sold-to contact entity only when all the following conditions are met in the request body: - This field is set to `true`. - A bill-to contact is specified. - No sold-to contact is specified.
    - `taxInfo` TaxInfo — Information about the tax exempt status of a customer account.
      - `VATId` string — EU Value Added Tax ID. **Note:** This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com).
      - `companyCode` string — Unique code that identifies a company account in Avalara. Use this field to calculate taxes based on origin and sold-to addresses in Avalara. **Note:** This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com).
      - `exemptCertificateId` string — ID of the customer tax exemption certificate. Applicable if you use Zuora Tax or Connect tax engines.
      - `exemptCertificateType` string — Type of tax exemption certificate that the customer holds. Applicable if you use Zuora Tax or Connect tax engines.
      - `exemptDescription` string — Description of the tax exemption certificate that the customer holds. Applicable if you use Zuora Tax or Connect tax engines.
      - `exemptEffectiveDate` string, date — Date when the customer tax exemption starts, in YYYY-MM-DD format. Applicable if you use Zuora Tax or Connect tax engines.
      - `exemptExpirationDate` string, date — Date when the customer tax exemption expires, in YYYY-MM-DD format. Applicable if you use Zuora Tax or Connect tax engines.
      - `exemptIssuingJurisdiction` string — Jurisdiction in which the customer tax exemption certificate was issued.
      - `exemptStatus` 'No' | 'Yes' | 'PendingVerification' — Status of the account tax exemption. Applicable if you use Zuora Tax or Connect tax engines. Required if you use Zuora Tax.
  - `orderDate` string, date, required — The date when the order is signed. All the order actions under this order will use this order date as the contract effective date if the contract effective date field is skipped or its value is left as null.
  - `orderLineItems` CreateOrderOrderLineItem[] — [Order Line Items](https://docs.zuora.com?resourceId=billing-order-line-items) are non subscription based items created by an Order, representing transactional charges such as one-time fees, physical goods, or professional service charges that are not sold as subscription services. With the Order Line Items feature enabled, you can now launch non-subscription and unified monetization business models in Zuora, in addition to subscription business models. If you do not have the **Create Order Line Items Without Product Catalog** billing permission, you can only create order line items from existing products by specifying the product rate plan charge ID in the `productRatePlanChargeId` field. For more information about billing permissions, see <a href="https://docs.zuora.com?resourceId=platform-billing-roles" target="_blank">Billing Roles</a>. **Note:** The [Order Line Items](https://docs.zuora.com?resourceId=billing-order-line-items) feature is now generally available to all Zuora customers. You need to enable the [Orders](https://docs.zuora.com?resourceId=billing-overview-orders) feature to access the [Order Line Items](https://docs.zuora.com?resourceId=billing-order-line-items) feature. As of Zuora Billing Release 313 (November 2021), new customers who onboard on [Orders](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/orders-introduction/overview-of-orders) will have the [Order Line Items](https://docs.zuora.com?resourceId=billing-order-line-items) feature enabled by default.
    - `UOM` string — Specifies the units to measure usage.
    - `accountingCode` string — The accounting code for the Order Line Item.
    - `adjustmentLiabilityAccountingCode` string — The accounting code on the Order Line Item object for customers using [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration).
    - `adjustmentRevenueAccountingCode` string — The accounting code on the Order Line Item object for customers using [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration).
    - `amountPerUnit` number — The actual charged amount per unit for the Order Line Item. If you set the `inlineDiscountType`, `inlineDiscountPerUnit`, and `listPricePerUnit` fields, the system will automatically generate the `amountPerUnit` field. You shall not set the `amountPerUnit` field by yourself.
    - `billTargetDate` string, date — The target date for the Order Line Item to be picked up by bill run for billing.
    - `billTo` string — The ID of the bill-to contact of an order line item. Specify an existing contact under the billing account as the bill-to contact of the order line item. The billing account is the order account. **Note**: If an order's category is set to **Return** in a return Order Line Item, it will inherit the original Order Line Item's `billTo` contact automatically. You cannot specify a different value.
    - `billingRule` 'TriggerWithoutFulfillment' | 'TriggerAsFulfillmentOccurs' — The billing rule for the Order Line Item.
    - `contractAssetAccountingCode` string — The accounting code on the Order Line Item object for customers using [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration).
    - `contractLiabilityAccountingCode` string — The accounting code on the Order Line Item object for customers using [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration).
    - `contractRecognizedRevenueAccountingCode` string — The accounting code on the Order Line Item object for customers using [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration).
    - `currency` string — The currency for the order line item. You can specify a currency when creating an order line item through the "Create an order" operation.
    - `customFields` OrderLineItemCustomFields — Container for custom fields of an Order Line Item object.
    - `deferredRevenueAccountingCode` string — The deferred revenue accounting code for the Order Line Item.
    - `description` string — The description of the Order Line Item.
    - `excludeItemBillingFromRevenueAccounting` boolean — The flag to exclude Order Line Item related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting. **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
    - `excludeItemBookingFromRevenueAccounting` boolean — The flag to exclude Order Line Item from revenue accounting. **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
    - `inlineDiscountPerUnit` number — Use this field in accordance with the `inlineDiscountType` field, in the following manner: * If the `inlineDiscountType` field is set as `Percentage`, this field specifies the discount percentage for each unit of the order line item. For exmaple, if you specify `5` in this field, the discount percentage is 5%. * If the `inlineDiscountType` field is set as `FixedAmount`, this field specifies the discount amount on each unit of the order line item. For exmaple, if you specify `10` in this field, the discount amount on each unit of the order line item is 10. Once you set the `inlineDiscountType`, `inlineDiscountPerUnit`, and `listPricePerUnit` fields, the system will automatically generate the `amountPerUnit` field. You shall not set the `amountPerUnit` field by yourself.
    - `inlineDiscountType` 'Percentage' | 'FixedAmount' | 'None' — Use this field to specify the inline discount type, which can be `Percentage`, `FixedAmount`, or `None`. The default value is `Percentage`. Use this field together with the `inlineDiscountPerUnit` field to specify inline discounts for order line items. The inline discount is applied to the list price of an order line item. Once you set the `inlineDiscountType`, `inlineDiscountPerUnit`, and `listPricePerUnit` fields, the system will automatically generate the `amountPerUnit` field. You shall not set the `amountPerUnit` field by yourself.
    - `isAllocationEligible` boolean — This field is used to identify if the charge segment is allocation eligible in revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
    - `isUnbilled` boolean — This field is used to dictate how to perform the accounting during revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
    - `itemCategory` 'Sales' | 'Return' — The category for the Order Line Item, to indicate a product sale or return.
    - `itemName` string — The name of the Order Line Item.
    - `itemNumber` string — The number of the Order Line Item. Use this field to specify a custom item number for your Order Line Item. If you are to use this field, you must set all the item numbers in an order when there are several order line items in the order.
    - `itemState` 'Executing' | 'Booked' | 'SentToBilling' | 'Complete' | 'Cancelled' — The state of an Order Line Item. If you want to generate billing documents for order line items, you must set this field to `SentToBilling`. For invoice preview, you do not need to set this field. See [State transitions for an order, order line item, and fulfillment](https://docs.zuora.com?resourceId=billing-state-transitions-order-line-items) for more information.
    - `itemType` 'Product' | 'Fee' | 'Services' — The type of the Order Line Item.
    - `listPricePerUnit` number — The list price per unit for the Order Line Item.
    - `originalOrderLineItemNumber` string — The number of the original sale order line item for a return order line item.
    - `originalOrderNumber` string — The number of the original sale order for a return order line item.
    - `ownerAccountNumber` string — Use this field to assign an existing account as the owner of an order line item.
    - `productCode` string — The product code for the Order Line Item.
    - `productRatePlanChargeId` string — ID of a product rate plan charge. Only one-time charges are supported. If you do not have the **Create Order Line Items Without Product Catalog** billing permission, you must specify this field to create the order line item from an existing product rate plan charge.
    - `purchaseOrderNumber` string — Used by customers to specify the Purchase Order Number provided by the buyer.
    - `quantity` number — The quantity of units, such as the number of authors in a hosted wiki service.
    - `recognizedRevenueAccountingCode` string — The recognized revenue accounting code for the Order Line Item.
    - `relatedSubscriptionNumber` string — Use this field to relate an order line item to a subscription when you create the order line item. * To relate an order line item to a new subscription which is yet to create in the same "Create an order" call, use this field in combination with the `subscriptions` > `subscriptionNumber` field in the "Create an order" operation. Specify this field to the same value as that of the `subscriptions` > `subscriptionNumber` field when you make the "Create an order" call. * To relate an order line item to an existing subscription, specify this field to the subscription number of the existing subscription.
    - `revenueRecognitionRule` string — The Revenue Recognition rule for the Order Line Item.
    - `revenueRecognitionTiming` 'Upon Billing Document Posting Date' | 'Upon Order Activation Date' — Specifies the type of revenue recognition timing. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have the Order to Revenue feature enabled.
    - `revenueAmortizationMethod` 'Immediate' | 'Ratable Using Start And End Dates' — Specifies the type of revenue amortization method. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have the Order to Revenue feature enabled.
    - `invoiceGroupNumber` string, nullable — The number of the invoice group associated with the order line item. After enabling the Invoice Grouping feature, you can specify invoice group numbers to bill subscriptions and order line items based on specific criteria. For the same account, Zuora generates separate invoices for subscriptions and order line items, each identified by unique invoice group numbers. For more information, see [Invoice Grouping](https://docs.zuora.com?resourceId=billing-invoice-grouping). **Note**: - If you have the <a href="https://docs.zuora.com?resourceId=billing-attributes-for-flexible-billing" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request during subscription creation, the value of this field is automatically set to `null` in the response body. - You can specify this field on a sales order line item when its state (that is, the `itemState` field) is `Executing`, `Booked`, or `SentToBilling`.
    - `sequenceSetId` string — The ID of the sequence set associated with the order line item. **Note**: - This field is only available in the request body if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature enabled. Otherwise, the response value for this field is `null`. - If you don't specify this field in the request during the creation, OLI uses the value from the account automatically. - You can specify this field on a sales order line item when its state (that is, the `itemState` field) is `Executing`, `Booked`, or `SentToBilling`.
    - `paymentTerm` string — The payment term name associated with the order line item. **Note**: - If you have the <a href="https://docs.zuora.com?resourceId=billing-attributes-for-flexible-billing" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you don't specify this field in the request during the creation, OLI uses the value from the account automatically. - You can specify this field on a sales order line item when its state (that is, the `itemState` field) is `Executing`, `Booked`, or `SentToBilling`.
    - `invoiceTemplateId` string — The ID of the invoice template associated with the order line item. **Note**: - If you have the <a href="https://docs.zuora.com?resourceId=billing-attributes-for-flexible-billing" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you don't specify this field in the request during the creation, OLI uses the value from the account automatically. - You can specify this field on a sales order line item when its state (that is, the `itemState` field) is `Executing`, `Booked`, or `SentToBilling`.
    - `shipTo` string — Use this field to assign an existing account as the ship-to contact of an order line item, by the following rules: * If the `ownerAccountNumber` field is set, then this field must be the ID of a contact that belongs to the owner account of the order line item. * If the `ownerAccountNumber` field is not set, then this field must be the ID of a contact that belongs to the billing account of the order line item. The billing account is the order account. **Note**: If an order's category is set to **Return** in a return Order Line Item, it will inherit the original Order Line Item's `shipTo` contact automatically. You cannot specify a different value.
    - `soldTo` unknown
    - `taxCode` string — The tax code for the Order Line Item.
    - `taxMode` 'TaxInclusive' | 'TaxExclusive' — The tax mode for the Order Line Item.
    - `transactionEndDate` string, date — The date a transaction is completed. The default value of this field is the transaction start date. Also, the value of this field should always equal or be later than the value of the `transactionStartDate` field.
    - `transactionStartDate` string, date — The date a transaction starts. The default value of this field is the order date.
    - `unbilledReceivablesAccountingCode` string — The accounting code on the Order Line Item object for customers using [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration).
  - `orderNumber` string — The order number of the new order. If not provided, system will auto-generate a number for this order. **Note:** The characters `#`, `?`, and `/` are not allowed in this field. Additionally, to ensure compatibility with the UI when viewing orders, use only the following special characters: `_`,`-`, `.`, `~`, `*`, `(`, `)`, and `'`.
  - `processingOptions` ProcessingOptionsOrdersAsync — The container for billing processing options and payment processing options. **Note:** This field is not supported in draft orders.
    - `allowPaymentFailure` boolean — Determines whether to create the order even if payment collection fails. If you set this field to `true` and `collectPayment` is `true`, Zuora creates the order if order validation, persistence, activation, and invoice generation succeed.
    - `applicationOrder` string[] — The priority order to apply credit memos and/or unapplied payments to an invoice. Possible item values are: `CreditMemo`, `UnappliedPayment`. **Note:** - This field is valid only if the `applyCredit` field is set to `true`. - If no value is specified for this field, the default priority order is used, ["CreditMemo", "UnappliedPayment"], to apply credit memos first and then apply unapplied payments. - If only one item is specified, only the items of the spedified type are applied to invoices. For example, if the value is `["CreditMemo"]`, only credit memos are used to apply to invoices.
    - `applyCredit` boolean — - If the value is true, the credit memo or unapplied payment on the order account will be automatically applied to the invoices generated by this order. The credit memo generated by this order will not be automatically applied to any invoices **Note:** This field is only available if you have [Invoice Settlement](https://docs.zuora.com?resourceId=billing-invoice-settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://docs.zuora.com?resourceId=billing-invoice-settlement-migration-checklist-and-guide) for more information.
    - `applyCreditBalance` boolean — Indicates if any credit balance on a customer's account is automatically applied to invoices. If no value is specified then this field defaults to false. This feature is not available if you have enabled the Invoice Settlement feature.
    - `billingOptions` object
      - `creditMemoReasonCode` string — A code identifying the reason for the credit memo transaction that is generated by the request. The value must be an existing reason code. If you do not pass the field or pass the field with empty value, Zuora uses the default reason code.
      - `documentDate` string, date — The invoice date displayed on the invoice.
      - `generateDraftInvoice` boolean — Indicates if the current request needs to generate a draft invoice. Values are: * `true` * `false` (default)
      - `targetDate` string, date — Date through which to calculate charges if an invoice is generated. See [What is a Target Date?](https://docs.zuora.com?resourceId=billing-bill-runs-creation). **Note**: If you do not specify this field, today's date is used by default.
      - `chargeTypeToExclude` string[] — The types of the charges to be excluded from the generation of billing documents.
    - `collectPayment` boolean — Indicates if the current request needs to collect payments. This value can not be 'true' when 'runBilling' flag is 'false'.
    - `electronicPaymentOptions` object — Container for the electronic payment options.
      - `paymentGatewayId` string — Specifies the ID of a payment gateway to override the default gateway. If this field is not specified, the default payment gateway will be used to process the payment.
      - `paymentMethodId` string — Specifies an electronic payment method. It can be one that has already been associated with an invoice owner, or an orphan payment method, which is not associated with any invoice owner. For an orphan payment method, this operation will then associate it with the account that this order will be created under.
      - `gatewayOptions` object — The field used to pass gateway-specific parameters and parameter values. The fields supported by gateways vary. For more information, see the overview topic of each gateway integration in <a href="https://docs.zuora.com?resourceId=payments-supported-payment-gateways" target="_blank">Zuora Knowledge Center</a>. Zuora sends all the information that you specified to the gateway. If you specify any unsupported gateway option parameters, they will be ignored without error prompts.
    - `runBilling` boolean — Indicates if the current request needs to generate an invoice. The invoice will be generated against all subscriptions included in this order.
  - `reasonCode` string — Values of reason code configured in **Billing Settings** > **Configure Reason Codes** through Zuora UI. Indicates the reason when a return order line item occurs.
  - `subscriptions` object[] — Each item includes a set of order actions, which will be applied to the same base subscription. When you create an order that involves multiple subscriptions, these subscriptions can have different invoice owner accounts or subscription owner accounts.
    - `customFields` SubscriptionObjectCustomFields — Container for custom fields of a Subscription object.
    - `notes` string — Notes about the subscription. These notes are only visible to Zuora users. Notes set in this field will override the value of the `notes` field within the createSubscription order action.
    - `orderActions` CreateOrderOrderAction[] — The actions to be applied to the subscription. Order actions will be stored with the sequence when it was provided in the request.
      - `addProduct` CreateOrderRatePlanOverride — Information about an order action of type `AddProduct`. If you want to create a pending order through the "Add product" order action, and if the charge's trigger condition is `Specific Date`, you must set a charge number in the `chargeNumber` field for the "Add product" order action. In this case, if you do not set it, Zuora will not generate the charge number for you. See more information about pending orders in <a href="https://docs.zuora.com?resourceId=billing-pending-orders-and-subscriptions" target="_blank">Pending orders and subscriptions</a>.
        - `chargeOverrides` CreateOrderChargeOverride[] — List of charges associated with the rate plan.
          - `accountReceivableAccountingCode` string — The accountReceivableAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a>, <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a>, and <a href="https://docs.zuora.com?resourceId=billing-invoice-settlement" target="_blank">Invoice Settlement</a> features are enabled.
          - `adjustmentLiabilityAccountingCode` string — The adjustmentLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `adjustmentRevenueAccountingCode` string — The adjustmentRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `billing` object — Billing information about the charge.
            - `billCycleDay` integer — Day of the month that each billing period begins on. Only applicable if the value of the `billCycleType` field is `SpecificDayofMonth`.
            - `billCycleType` 'DefaultFromCustomer' | 'SpecificDayofMonth' | 'SubscriptionStartDay' | 'ChargeTriggerDay' | 'SpecificDayofWeek' — Specifies how Zuora determines the day that each billing period begins on. * `DefaultFromCustomer` - Each billing period begins on the bill cycle day of the account that owns the subscription. * `SpecificDayofMonth` - Use the `billCycleDay` field to specify the day of the month that each billing period begins on. * `SubscriptionStartDay` - Each billing period begins on the same day of the month as the start date of the subscription. * `ChargeTriggerDay` - Each billing period begins on the same day of the month as the date when the charge becomes active. * `SpecificDayofWeek` - Use the `weeklyBillCycleDay` field to specify the day of the week that each billing period begins on.
            - `billingPeriod` 'Month' | 'Quarter' | 'Semi_Annual' | 'Annual' | 'Eighteen_Months' | 'Two_Years' | 'Three_Years' | 'Five_Years' | 'Specific_Months' | 'Subscription_Term' | 'Week' | 'Specific_Weeks' | 'Specific_Days' — Billing frequency of the charge. The value of this field controls the duration of each billing period. If the value of this field is `Specific_Days`, `Specific_Months` or `Specific_Weeks`, use the `specificBillingPeriod` field to specify the duration of each billing period.
            - `billingPeriodAlignment` 'AlignToCharge' | 'AlignToSubscriptionStart' | 'AlignToTermStart' — Specifies how Zuora determines when to start new billing periods. You can use this field to align the billing periods of different charges. * `AlignToCharge` - Zuora starts a new billing period on the first billing day that falls on or after the date when the charge becomes active. * `AlignToSubscriptionStart` - Zuora starts a new billing period on the first billing day that falls on or after the start date of the subscription. * `AlignToTermStart` - For each term of the subscription, Zuora starts a new billing period on the first billing day that falls on or after the start date of the term. See the `billCycleType` field for information about how Zuora determines the billing day. **Note**: This field is not supported in one time charges.
            - `billingTiming` 'IN_ADVANCE' | 'IN_ARREARS' — Specifies whether to invoice for a billing period on the first day of the billing period (billing in advance) or the first day of the next billing period (billing in arrears).
            - `specificBillingPeriod` integer — Duration of each billing period in months or weeks, depending on the value of the `billingPeriod` field. Only applicable if the value of the `billingPeriod` field is `Specific_Months` or `Specific_Weeks`.
            - `weeklyBillCycleDay` 'Sunday' | 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' — Day of the week that each billing period begins on. Only applicable if the value of the `billCycleType` field is `SpecificDayofWeek`.
          - `chargeFunction` 'CommitmentTrueUp' | 'CreditCommitment' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines what type of charge it is: * CommitmentTrueUp: For recurring charges. Currency based minimum commitment charge. * CreditCommitment: For usage charges. Credit to minimum commitment funds.
          - `creditOption` 'TimeBased' | 'ConsumptionBased' | 'FullCreditBack' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines the way to calculate credit. See [Credit Option](https://docs.zuora.com?resourceId=billing-prepayment-charge) for more information.
          - `chargeModel` string — The chargeModel of a standalone charge. Supported charge models: * `FlatFee` * `PerUnit` * `Volume` * `Tiered` * `DiscountFixedAmount` * `DiscountPercentage` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `chargeNumber` string — Charge number of the charge. For example, C-00000307. * If you do not set this field, Zuora will generate a charge number starting with a default prefix, for example, C-. This default prefix is predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. * If you want to use a custom charge number, do not use the default prefix predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. Use your own prefix, for example, SC-.
          - `chargeType` string — The chargeType of a standalone charge. Supported charge types: * `OneTime` * `Recurring` * `Usage` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `contractAssetAccountingCode` string — The contractAssetAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `contractLiabilityAccountingCode` string — The contractLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `contractRecognizedRevenueAccountingCode` string — The contractRecognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `customFields` RatePlanChargeObjectCustomFields — Container for custom fields of a Rate Plan Charge object.
          - `deferredRevenueAccountingCode` string — The deferredRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
          - `description` string — Description of the charge.
          - `drawdownPriority` integer — Drawdown priority for consumption ordering. Lower value means that it will be consumed first. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `drawdownRate` number — **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. The [conversion rate](https://docs.zuora.com?resourceId=billing-create-drawdown-charge) between Usage UOM and Drawdown UOM for a [drawdown charge](https://docs.zuora.com?resourceId=billing-create-drawdown-charge). Must be a positive number (>0).
          - `drawdownScope` 'SUBSCRIPTION' | 'ACCOUNT' — The scope in which the funds are applicable for the usage drawdown charges during drawdown. Valid for the charge with function of `Prepayment`. - `SUBSCRIPTION` - only usage charges of the same subscription can be drawn down. - `ACCOUNT` - only usage charges in the same account (subscription owner) can be drawn down. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `endDate` EndConditions — Specifies when a charge becomes inactive.
            - `endDateCondition` 'Subscription_End' | 'Fixed_Period' | 'Specific_End_Date' | 'One_Time', nullable — Condition for the charge to become inactive. - If the value of this field is `Fixed_Period`, the charge is active for a predefined duration based on the value of the `upToPeriodsType` and `upToPeriods` fields. - If the value of this field is `Specific_End_Date`, use the `specificEndDate` field to specify the date when the charge becomes inactive.
            - `endDatePolicy` 'AlignToApplyToCharge' | 'SpecificEndDate' | 'FixedPeriod' — End date policy of the discount charge to become active when the **Apply to billing period partially** checkbox is selected from the product catalog UI or the `applyToBillingPeriodPartially` field is set as true from the "CRUD: Create a product rate plan charge" operation. - If the value of this field is `FixedPeriod`, the charge is active for a predefined duration based on the value of the `upToPeriodsType` and `upToPeriods` fields. - If the value of this field is `SpecificEndDate`, use the `specificEndDate` field to specify the date when the charge becomes inactive. **Notes**: - You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field. - You can use either `endDateCondition` or `endDatePolicy` to define when a discount charge ends, but not both at the same time.
            - `specificEndDate` string, date, nullable — Date in YYYY-MM-DD format. Only applicable if the value of the `endDateCondition` field is `Specific_End_Date`.
            - `upToPeriods` integer, nullable — Duration of the charge in billing periods, days, weeks, months, or years, depending on the value of the `upToPeriodsType` field. Only applicable if the value of the `endDateCondition` field is `Fixed_Period`.
            - `upToPeriodsType` 'Billing_Periods' | 'Days' | 'Weeks' | 'Months' | 'Years', nullable — Unit of time that the charge duration is measured in. Only applicable if the value of the `endDateCondition` field is `Fixed_Period`.
          - `estimatedStartDate` string, date — The estimated start date of the pending charge in an active subscription. If you specify `SpecificDate` in the `startDate` > `triggerEvent` field and want to create a completed order and an active subscription, you must specify either the `estimatedStartDate` or `startDate` > `specificTriggerDate` field: - `estimatedStartDate`: The charge will be in pending status. - `specificTriggerDate`: The charge will be in active status. The value of this field must be a date within the subscription term. The system will then automatically calculate the estimated end date for the pending charge. The estimated start and end dates are used to manage the estimated charge duration and forecast the revenue for the pending charge. **Note:** This field is available only when the Pending Subscription Processing feature is turned on.
          - `excludeItemBillingFromRevenueAccounting` boolean — The flag to exclude rate plan charge related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting. If both the following features are enabled in your tenant, you must ensure the `excludeItemBillingFromRevenueAccounting` field is set consistently for a prepayment charge and the corresponding drawdown charge. In addition, if the `excludeItemBookingFromRevenueAccounting` field in a Create Subscription or Add Product order action is set to `false`, you must also set the `excludeItemBillingFromRevenueAccounting` field in this order action to `false`. * Prepaid with Drawdown * Unbilled Usage **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
          - `excludeItemBookingFromRevenueAccounting` boolean — The flag to exclude rate plan charges from revenue accounting. If both the following features are enabled in your tenant, you must ensure the `excludeItemBookingFromRevenueAccounting` field is set consistently for a prepayment charge and the corresponding drawdown charge. * Prepaid with Drawdown * Unbilled Usage **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
          - `fundSupportAccountHierarchy` boolean — Indicates whether to enable sub-account's usage to drawdown from the parent's funds. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `isAllocationEligible` boolean — This field is used to identify if the charge segment is allocation eligible in revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `isRollover` boolean — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The value is either "True" or "False". It determines whether the rollover fields are needed.
          - `isUnbilled` boolean — This field is used to dictate how to perform the accounting during revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `name` string — The name of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `negotiatedPriceTable` NegotiatedItems[] — Array of negotiated price table information. The rate card entries provided in the array will override the existing rate card entries in the standard price table to form a negotiated price table that will be used during pricing evaluation. **Note:** To enable the Negotiated Price Table feature, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `items` object — The rate card entry object. **Note:** For more information, refer to the rate card definition in the product catalog.
          - `pobPolicy` string — The pobPolicy of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `prepaidQuantity` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The number of units included in a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover). Must be a positive number (>0).
          - `prepaymentUnitType` 'UNIT' — The unit type of the prepayment charge. For topup (recurring/one-time) charges, this field indicates what type of funds are created. For drawdown (usage) charges, this field indicates what type of funds are drawn down from those created by topup charges. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `pricing` object — Pricing information about the charge.
            - `chargeModelData` ChargeModelDataOverride — Container for charge model configuration data. **Note**: This field is only available if you have the High Water Mark, Pre-Rated Pricing, or Multi-Attribute Pricing charge models enabled. The High Water Mark and Pre-Rated Pricing charge models are available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://docs.zuora.com/en/entitlements/current-entitlements/zuora-editions) for pricing information.
              - …
            - `discount` DiscountPricingOverride — Pricing information about a discount charge.
              - …
            - `oneTimeFlatFee` OneTimeFlatFeePricingOverride — Pricing information about a one-time charge that uses the "flat fee" charge model. In this charge model, the charge has a fixed price.
              - …
            - `oneTimePerUnit` OneTimePerUnitPricingOverride — Pricing information about a one-time charge that uses the "per unit" charge model. In this charge model, the charge has a fixed price per unit purchased.
              - …
            - `oneTimeTiered` OneTimeTieredPricingOverride — Pricing information about a one-time charge that uses the "tiered pricing" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are purchased.
              - …
            - `oneTimeVolume` OneTimeVolumePricingOverride — Pricing information about a one-time charge that uses the "volume pricing" charge model. In this charge model, the charge has a variable price per unit, depending on how many units are purchased.
              - …
            - `recurringCalculated` RecurringCalculatedPricingOverride — Pricing information about a recurring charge that uses the "calculated" charge model.
              - …
            - `recurringDeliveryBased` RecurringDeliveryPricingOverride — Pricing information about a recurring charge that uses the Delivery Pricing charge model. In this charge model, the charge has a fixed price. This field is only available if you have the Delivery Pricing charge model enabled.
              - …
            - `recurringFlatFee` RecurringFlatFeePricingOverride — Pricing information about a recurring charge that uses the "flat fee" charge model. In this charge model, the charge has a fixed price.
              - …
            - `recurringPerUnit` RecurringPerUnitPricingOverride — Pricing information about a recurring charge that uses the "per unit" charge model. In this charge model, the charge has a fixed price per unit purchased.
              - …
            - `recurringTiered` RecurringTieredPricingOverride — Pricing information about a recurring charge that uses the "tiered pricing" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are purchased.
              - …
            - `recurringVolume` RecurringVolumePricingOverride — Pricing information about a recurring charge that uses the "volume pricing" charge model. In this charge model, the charge has a variable price per unit, depending on how many units are purchased.
              - …
            - `usageFlatFee` UsageFlatFeePricingOverride — Pricing information about a usage charge that uses the "flat fee" charge model. In this charge model, the charge has a fixed price.
              - …
            - `usageOverage` UsageOveragePricingOverride — Pricing information about a usage charge that uses the "overage" charge model. In this charge model, the charge has an allowance of free units and a fixed price per additional unit consumed.
              - …
            - `usagePerUnit` UsagePerUnitPricingOverride — Pricing information about a usage charge that uses the "per unit" charge model. In this charge model, the charge has a fixed price per unit consumed.
              - …
            - `usageTiered` UsageTieredPricingOverride — Pricing information about a usage charge that uses the "tiered pricing" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are consumed.
              - …
            - `usageTieredWithOverage` UsageTieredWithOveragePricingOverride — Pricing information about a usage charge that uses the "tiered with overage" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are consumed. The charge also has a fixed price per unit consumed beyond the limit of the final tier.
              - …
            - `usageVolume` UsageVolumePricingOverride — Pricing information about a usage charge that uses the "volume pricing" charge model. In this charge model, the charge has a variable price per unit, depending on how many units are consumed.
              - …
          - `pricingAttributes` object — Container for pricing attribute and value that provide additional context for dynamic pricing. The pricing attribute values are used to get the charge’s list price from the product catalog. For the pricing attribute mapped to a Zuora object field, Zuora will retrieve the value automatically, you don’t need to pass its value explicitly. If you pass a value that doesn’t match the actual value of the Zuora object, an error will be returned. Note that for any pricing attribute mapped to the field of Zuora object Usage, because its value is only determined when the usage record arrives, you can’t provide a value via Orders API payload and Zuora will not retrieve its value automatically. **Note:** To enable Dynamic Pricing, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `productCategory` string — The productCategory of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productClass` string — The productClass of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productFamily` string — The productFamily of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productLine` string — The productLine of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productRatePlanChargeId` string, required — Internal identifier of the product rate plan charge that the charge is based on. You can specify either `productRatePlanChargeId` or `productRatePlanChargeNumber`. When subscribing to a hard bundle, include the optional component charge’s ID explicitly in order to add it to the subscription. When `isAddingSubsetCharges` is set to true, the product rate charge specified by `productRatePlanChargeId` is added to the existing rate plan specified by `ratePlanId`. **Note**: The **Hard Bundle** feature is in the **Early Availability** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early availability program, submit a request at <a href="https://support.zuora.com" target="_blank">Zuora Global Support</a>.
          - `productRatePlanChargeNumber` string — Number of a product rate-plan charge for this subscription. You can specify either `productRatePlanChargeId` or `productRatePlanChargeNumber`.
          - `prorationOption` 'NoProration' | 'TimeBasedProration' | 'DefaultFromTenantSetting' | 'ChargeFullPeriod' | 'CustomizeProrationOptionOverrides' — **Note**: This field is only available if you have the **Charge Level Proration** feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-usage-charge-proration" target="_blank">Usage charge proration</a> and <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. You can use this field to specify the charge-level proration option for a usage charge or recurring charge when you create or add a subscription rate plan charge through an order. The tenant-level proration option will be overridden. * `NoProration`: charge-level proration option that you can set for a usage charge. This option means to not use any proration, which is the default current system behavior for a usage charge. * `TimeBasedProration`: charge-level proration option that you can set for a usage charge. This option means to prorate the usage charge amount using the actual number of days if the billing period is a partial period. * `DefaultFromTenantSetting`: charge-level proration option that you can set for a recurring charge. This option means to follow the customer billing rule proration setting. * `ChargeFullPeriod`: charge-level proration option that you can set for a recurring charge. This options means to charge the full period amount for a partial billing period. Note that this setting means that there is no proration for either collecting or refunding. Even if you cancel the recurring charge in the middle of a billing period, there is no refund for this billing period. * `CustomizeProrationOptionOverrides`: charge-level proration option that you can set for a recurring charge. This option means to use the customized charge proration settings that is specified by the `ratingPropertiesOverride` field. When the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature is enabled, the possible options are: - DefaultFromTenantSetting - CustomizeProrationOptionOverrides. When `CustomizeProrationOptionOverrides` is selected, define the customization rules using these options in the `ratingPropertiesOverride` field.
          - `ratingPropertiesOverride` object — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. This field is used only when the value of the `prorationOption` field is set to `CustomizeProrationOptionOverrides`. Use this field to specify more customized proration options for a recurring charge when you creating or adding a subscription rate plan charge through an order. The tenant-level proration option will be overridden.
            - `isProratePartialMonth` boolean — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. Use this field to specify whether to prorate the recurring charge for a partial month. The tenant-level proration option will be overridden.
            - `prepaymentChargeProrationRule` 'ProrateAmount' | 'ChargeFullAmount' — Define whether to prorate the charge amount or not. When `ProrateAmount` is selected, define the proration rules via the options under this section. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `prorationUnit` 'ProrateByDay' | 'ProrateByMonthFirst' — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. Use this field to specify the unit of proration for a recurring charge. The tenant-level proration option will be overridden.
            - `daysInMonth` 'UseActualDays' | 'Assume30Days' | 'Assume30DaysStrict' — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. Use this field to specify the number of days counted for a month when prorating a recurring charge. The tenant-level proration option will be overridden. See more details for each of the following enum values in <a href="https://docs.zuora.com?resourceId=billing-proration" target="_blank">Proration</a>.
          - `recognizedRevenueAccountingCode` string — The recognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
          - `revRecCode` string — Revenue Recognition Code
          - `revRecTriggerCondition` 'Contract Effective Date' | 'Service Activation Date' | 'Customer Acceptance Date' — Specifies the revenue recognition trigger condition. * `Contract Effective Date` * `Service Activation Date` * `Customer Acceptance Date`
          - `revenueRecognitionRuleName` string — Specifies the revenue recognition rule, such as `Recognize upon invoicing` or `Recognize daily over time`.
          - `revenueRecognitionTiming` 'Upon Billing Document Posting Date' | 'Upon Order Activation Date' — Specifies the type of revenue recognition timing. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have both the Order to Revenue feature and the Standalone Orders feature enabled.
          - `revenueAmortizationMethod` 'Immediate' | 'Ratable Using Start And End Dates' — Specifies the type of revenue amortization method. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have both the Order to Revenue feature and the Standalone Orders feature enabled.
          - `rolloverApply` 'ApplyFirst' | 'ApplyLast' — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. This field defines the priority of rollover, which is either first or last.
          - `rolloverEndDate` string, date — Explicit cutoff date when `rolloverEndDateType` is `SpecificDate`. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `rolloverEndDateType` 'ChargeEndDate' | 'SubscriptionTerm' | 'SpecificDate' — Rollover cutoff strategy determining when the rollover eligibility will end. Possible values are: * `ChargeEndDate` - Rollover stops at the charge end date. * `SubscriptionTerm` - Rollover stops at the subscription term end. * `SpecificDate` - Rollover stops at an explicit date specified in `RolloverEndDate`. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `rolloverFundPriority` integer — Priority for rolled-over funds. Lower value means that it will be consumed first. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `rolloverPeriodLength` integer — **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. Use this field when you want to set the rollover fund's period length shorter than the prepayment charge's validity period. In this case, you must set the `rolloverPeriods` field to 1. For example, you can define the rollover fund's period length as 5 months, shorter than the prepayment charge's validity period: a year. When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can customize a single rollover period length together with `rolloverPeriodType` field.
          - `rolloverPeriods` number — **Note:** This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. This field defines the number of rollover periods, it is restricted to 3.
          - `rolloverPeriodType` 'Day' | 'Month' | 'Quarter' | 'Annual' — Unit for rollover period length. Possible values are: * `Day` - Day-based rollover periods. * `Month` - Month-based rollover periods. * `Quarter` - Quarter-based rollover periods. * `Annual` - Annual rollover periods. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `specificValidityPeriodLength` integer — The number of days, weeks, or months for the validity period when `ValidityPeriodType` is `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, or `SPECIFIC_MONTHS`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `startDate` CreateOrderTriggerParams — Specifies when a charge becomes active.
            - `periodsAfterChargeStart` integer — Duration of the discount charge in days, weeks, months, or years, depending on the value of the `startPeriodsType` field. Only applicable if the value of the `startDatePolicy` field is `FixedPeriodAfterApplyToChargeStartDate`. **Note**: You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field.
            - `specificTriggerDate` string, date — Date in YYYY-MM-DD format. Only applicable if the value of the `triggerEvent` field is `SpecificDate`. While this field is applicable, if this field is not set, your `CreateSubscription` order action creates a `Pending` order and a `Pending Acceptance` subscription. If at the same time the service activation date is required and not set, a `Pending Activation` subscription is created. While this field is applicable, if this field is not set, the following order actions create a `Pending` order but do not impact the subscription status. **Note**: This feature is in **Limited Availability**. If you want to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). * AddProduct * UpdateProduct * RemoveProduct * RenewSubscription * TermsAndConditions
            - `startDatePolicy` 'AlignToApplyToCharge' | 'SpecificDate' | 'EndOfLastInvoicePeriodOfApplyToCharge' | 'FixedPeriodAfterApplyToChargeStartDate' — Start date policy of the discount charge to become active when the **Apply to billing period partially** checkbox is selected from the product catalog UI or the `applyToBillingPeriodPartially` field is set as true from the "CRUD: Create a product rate plan charge" operation. - If the value of this field is `SpecificDate`, use the `specificTriggerDate` field to specify the date when the charge becomes active. - If the value of this field is `FixedPeriodAfterApplyToChargeStartDate`, the charge is active for a predefined duration based on the value of the `upToPeriodsType` and `upToPeriods` fields. **Notes**: - You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field. - You can use either `triggerEvent` or `startDatePolicy` to define when a discount charge starts, but not both at the same time.
            - `startPeriodsType` 'Days' | 'Weeks' | 'Months' | 'Years' — Unit of time that the discount charge duration is measured in. Only applicable if the value of the `startDatePolicy` field is `FixedPeriodAfterApplyToChargeStartDate`. **Note**: You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field.
            - `triggerEvent` 'ContractEffective' | 'ServiceActivation' | 'CustomerAcceptance' | 'SpecificDate' — Condition for the charge to become active. If this field is not specified, the value of the field will be defaulted to the trigger event value defined in the product catalog. If the value of this field is `SpecificDate`, use the `specificTriggerDate` field to specify the date when the charge becomes active.
          - `taxCode` string — The tax code of a charge. This field is available when the `taxable` field is set to `true`.
          - `taxMode` 'TaxExclusive' | 'TaxInclusive' — The tax mode of a charge. This field is available when the `taxable` field is set to `true`.
          - `taxable` boolean — The flag indicates whether the charge is taxable. If this field is set to `true`, you must specify the `taxCode` and `taxMode` fields.
          - `unBilledReceivablesAccountingCode` string — The unBilledReceivablesAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `uniqueToken` string — Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the charge. Then when you update the product, you can use the same unique identifier to specify which charge to modify.
          - `upsellOriginChargeNumber` string — The identifier of the original upselling charge associated with the current charge. For a termed subscription, you can now use the "Create an order" API operation to perform an Add Product order action to make a product quantity upsell for per unit recurring charges. The benefit is that the charge added by this approach will be automatically combined with the original existing charge for which you want to upsell when the subscription is renewed. The approach is as follows: * Use an Add Product order action to add a charge that is of the same charge type, charge model, and charge end date as the existing per unit recurring charge for which you want to make a quantity upsell. * In the preceding charge to add, use the `upsellOriginChargeNumber` field to specify the existing rate plan charge for which you want to make the quantity upsell. Note that a termed subscription with such upsell charges can not be changed to an evergreen subscription. **Note**: The Quantity Upsell feature is in the **Early Adopter** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early adopter program, submit a request at [Zuora Global Support](https://support.zuora.com).
          - `validityPeriodType` 'SUBSCRIPTION_TERM' | 'ANNUAL' | 'SEMI_ANNUAL' | 'QUARTER' | 'MONTH' — **Note**: This field is only available if you have enabled either of the following: * <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> * <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> * Both <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> You can use this field in the following scenarios: * When you create a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover), use this field to define the period in which the prepayment units are valid to use. * When you override the setting of <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">commitment true-up charge</a> from the product catalog, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When you use a standalone order to create a commitment true-up charge, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can also choose from the following options: `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, `SPECIFIC_MONTHS`. Specify the actual number in `specificValidityPeriodLength` field.
          - `validityPeriodAlignment` 'ChargeStart' | 'TermStart' | 'TermEnd' | 'SpecificDate' — Determines the anchor date for validity period (VP) boundaries. The anchor date defines the recurring grid — VP boundaries fall at every VP-length step from the anchor. The charge's start and end dates then determine which portion of this grid is covered. Possible values are: * `ChargeStart` (default) - Anchor date is the charge start date. Simplest option with no partial first VP. * `TermStart` - Anchor date is the subscription term start date. Aligns all charges on the same subscription to a common grid. * `TermEnd` - Anchor date is derived by walking backward from the subscription term end date. Last VP always ends cleanly at term end; partial VP (if any) is at the start. * `SpecificDate` - Anchor date is an explicit `validityPeriodAnchorDate` on the charge. Custom alignment for special billing arrangements. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `validityPeriodAnchorDate` string, date — The anchor date for validity period alignment. Required when `validityPeriodAlignment` is `SpecificDate`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `validityPeriodProrationOption` 'ProrateUnits' | 'NoProrate' — Controls what happens to units when a validity period (VP) is partial. Possible values are: * `ProrateUnits` - Grant partial units, the number is prorated based on the overlap ratio. * `NoProrate` - Grant full units. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
        - `clearingExistingFeatures` boolean — Specifies whether all features in the rate plan will be cleared.
        - `customFields` OrdersRatePlanObjectCustomFields — Container for custom fields of the Rate Plan object. The custom fields of the Rate Plan object are used when rate plans are subscribed.
        - `externalCatalogPlanId` string — An external ID of the product rate plan to be added. You can use this field to specify a product rate plan that is imported from an external system. The value of the `externalCatalogPlanId` field must match one of the values that are predefined in the `externallyManagedPlanIds` field on a product rate plan. **Note:** If both `externalCatalogPlanId` and `productRatePlanId` are provided. They must point to the same product rate plan. Otherwise, the request would fail.
        - `externallyManagedPlanId` string — Indicates the unique identifier for the rate plan purchased on a third-party store. This field is used to represent a subscription rate plan created through third-party stores.
        - `isAddingSubsetCharges` boolean — Specifies whether to add a subset of charges to the subscription. **Note:** To access this field for adding a subset of charges, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `isFromExternalCatalog` boolean — Indicates whether the rate plan is created from the Zuora product catalog or from an external product catalog. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
        - `productRatePlanId` string — Internal identifier of the product rate plan that the rate plan is based on.
        - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
        - `ratePlanName` string — Name of the standalone rate plan. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
        - `subscriptionProductFeatures` CreateOrderRatePlanFeatureOverride[] — List of features associated with the rate plan. The system compares the `subscriptionProductFeatures` and `featureId` fields in the request with the counterpart fields in a rate plan. The comparison results are as follows: * If there is no `subscriptionProductFeatures` field or the field is empty, features in the rate plan remain unchanged. But if the `clearingExistingFeatures` field is additionally set to true, all features in the rate plan are cleared. * If the `subscriptionProductFeatures` field contains the `featureId` nested fields, as well as the optional `description` and `customFields` nested fields, the features indicated by the featureId nested fields in the request overwrite all features in the rate plan.
          - `customFields` RatePlanFeatureOverrideCustomFields — A container for custom fields of the feature.
          - `description` string — A description of the feature.
          - `featureId` string, required — Internal identifier of the feature in the product catalog.
        - `subscriptionRatePlanNumber` string — Number of a subscription rate plan for this subscription.
        - `uniqueToken` string — Unique identifier for the rate plan. This identifier enables you to refer to the rate plan before the rate plan has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the rate plan. Then when you update the product, you can use the same unique identifier to specify which rate plan to modify.
      - `cancelSubscription` CancelSubscription — Information about an order action of type `CancelSubscription`.
        - `cancellationEffectiveDate` string, date
        - `cancellationPolicy` 'EndOfCurrentTerm' | 'EndOfLastInvoicePeriod' | 'SpecificDate', required
      - `changePlan` CreateChangePlan — Information about an order action of type `ChangePlan`. Use the change plan type of order action to replace the existing rate plans in a subscription with other rate plans. **Note**: The change plan type of order action is supported for the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature. However, it is currently not supported for the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> feature. When Billing - Revenue Integration is enabled, the change plan type of order action will no longer be applicable in Zuora Billing. If you want to create a pending order through the "change plan" order action, and if the charge's trigger condition is `Specific Date`, you must set a charge number in the `chargeNumber` field for the "change plan" order action. In this case, if you do not set it, Zuora will not generate the charge number for you. See more information about pending orders in <a href="https://docs.zuora.com?resourceId=billing-pending-orders-and-subscriptions" target="_blank">Pending orders and subscriptions</a>.
        - `effectivePolicy` 'EffectiveImmediately' | 'EffectiveEndOfBillingPeriod' | 'SpecificDate' — The default value for the `effectivePolicy` field is as follows: * If the rate plan change (from old to new) is an upgrade, the effective policy is `EffectiveImmediately` by default. * If the rate plan change (from old to new) is a downgrade, the effective policy is `EffectiveEndOfBillingPeriod` by default. * Otherwise, the effective policy is `SpecificDate` by default. **Notes**: * When setting this field to `EffectiveEndOfBillingPeriod`, you cannot set the <a href="https://docs.zuora.com?resourceId=billing-trigger-dates-updation-for-subscriptions" target="_blank">billing trigger dates</a> for the subscription as the system will automatically set the trigger dates to the end of billing period, and you cannot set the following billing trigger date settings to `Yes`: * <a href="https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings" target="_blank">Require Customer Acceptance of Orders?</a> * <a href="https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings" target="_blank">Require Service Activation of Orders?</a> * When setting this field to `SpecificDate`, you must also set the contract effective date in the `triggerDates` field as follows: * Set the `name` field as `ContractEffective` * Specify a date for the `triggerDate` field
        - `externalCatalogPlanId` string — An external ID of the rate plan to be removed. You can use this field to specify an existing rate plan in your subscription. The value of the `externalCatalogPlanId` field must match one of the values that are predefined in the `externallyManagedPlanIds` field on a product rate plan. However, if there are multiple rate plans with the same `productRatePlanId` value existing in the subscription, you must use the `ratePlanId` field to remove the rate plan. The `externalCatalogPlanId` field cannot be used to distinguish multiple rate plans in this case. **Note:** Please provide only one of `externalCatalogPlanId`, `ratePlanId` or `productRatePlanId`. If more than 1 field is provided then the request would fail.
        - `newProductRatePlan` CreateOrderChangePlanRatePlanOverride, required — Information about the new product rate plan to add.
          - `chargeOverrides` ChangePlanChargeOverride[] — List of charges associated with the rate plan.
            - `accountReceivableAccountingCode` string — The accountReceivableAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a>, <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a>, and <a href="https://docs.zuora.com?resourceId=billing-invoice-settlement" target="_blank">Invoice Settlement</a> features are enabled.
            - `adjustmentLiabilityAccountingCode` string — The adjustmentLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `adjustmentRevenueAccountingCode` string — The adjustmentRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `billing` object — Billing information about the charge.
              - …
            - `chargeFunction` 'CommitmentTrueUp' | 'CreditCommitment' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines what type of charge it is: * CommitmentTrueUp: For recurring charges. Currency based minimum commitment charge. * CreditCommitment: For usage charges. Credit to minimum commitment funds.
            - `creditOption` 'TimeBased' | 'ConsumptionBased' | 'FullCreditBack' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines the way to calculate credit. See [Credit Option](https://docs.zuora.com?resourceId=billing-prepayment-charge) for more information.
            - `chargeModel` string — The chargeModel of a standalone charge. Supported charge models: * `FlatFee` * `PerUnit` * `Volume` * `Tiered` * `DiscountFixedAmount` * `DiscountPercentage` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `chargeNumber` string — Charge number of the charge. For example, C-00000307. * If you do not set this field, Zuora will generate a charge number starting with a default prefix, for example, C-. This default prefix is predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. * If you want to use a custom charge number, do not use the default prefix predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. Use your own prefix, for example, SC-.
            - `chargeType` string — The chargeType of a standalone charge. Supported charge types: * `OneTime` * `Recurring` * `Usage` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `contractAssetAccountingCode` string — The contractAssetAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `contractLiabilityAccountingCode` string — The contractLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `contractRecognizedRevenueAccountingCode` string — The contractRecognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `customFields` RatePlanChargeObjectCustomFields — Container for custom fields of a Rate Plan Charge object.
            - `deferredRevenueAccountingCode` string — The deferredRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
            - `description` string — Description of the charge.
            - `drawdownPriority` integer — Drawdown priority for consumption ordering. Lower value means that it will be consumed first. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `drawdownRate` number — The [conversion rate](https://docs.zuora.com?resourceId=billing-create-drawdown-charge) between Usage UOM and Drawdown UOM for a [drawdown charge](https://docs.zuora.com?resourceId=billing-create-drawdown-charge). Must be a positive number (>0). **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced unit-based Prepaid with Drawdown</a> feature enabled.
            - `drawdownScope` 'SUBSCRIPTION' | 'ACCOUNT' — The scope in which the funds are applicable for the usage drawdown charges during drawdown. Valid for the charge with function of `Prepayment`. - `SUBSCRIPTION` - only usage charges of the same subscription can be drawn down. - `ACCOUNT` - only usage charges in the same account (subscription owner) can be drawn down. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `endDate` EndConditions — Specifies when a charge becomes inactive.
              - …
            - `estimatedStartDate` string, date — The estimated start date of the pending charge in an active subscription. If you specify `SpecificDate` in the `startDate` > `triggerEvent` field and want to create a completed order and an active subscription, you must specify either the `estimatedStartDate` or `startDate` > `specificTriggerDate` field: - `estimatedStartDate`: The charge will be in pending status. - `specificTriggerDate`: The charge will be in active status. The value of this field must be a date within the subscription term. The system will then automatically calculate the estimated end date for the pending charge. The estimated start and end dates are used to manage the estimated charge duration and forecast the revenue for the pending charge. **Note:** This field is available only when the **Pending Subscription Processing** feature is turned on.
            - `excludeItemBillingFromRevenueAccounting` boolean — The flag to exclude rate plan charge related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting. **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
            - `excludeItemBookingFromRevenueAccounting` boolean — The flag to exclude rate plan charges from revenue accounting. **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
            - `fundSupportAccountHierarchy` boolean — Indicates whether to enable sub-account's usage to drawdown from the parent's funds. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> feature enabled.
            - `isAllocationEligible` boolean — This field is used to identify if the charge segment is allocation eligible in revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `isRollover` boolean — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The value is either "True" or "False". It determines whether the rollover fields are needed.
            - `isUnbilled` boolean — This field is used to dictate how to perform the accounting during revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `name` string — The name of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `negotiatedPriceTable` NegotiatedItems[] — Array of negotiated price table information. The rate card entries provided in the array will override the existing rate card entries in the standard price table to form a negotiated price table that will be used during pricing evaluation. **Note:** To enable the Negotiated Price Table feature, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
              - …
            - `pobPolicy` string — The pobPolicy of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `prepaidQuantity` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The number of units included in a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover). Must be a positive number (>0).
            - `prepaymentUnitType` 'UNIT' — The unit type of the prepayment charge. For topup (recurring/one-time) charges, this field indicates what type of funds are created. For drawdown (usage) charges, this field indicates what type of funds are drawn down from those created by topup charges. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> feature enabled.
            - `pricing` object — Pricing information about the charge.
              - …
            - `pricingAttributes` object — Container for pricing attribute and value that provide additional context for dynamic pricing. The pricing attribute values are used to get the charge’s list price from the product catalog. For the pricing attribute mapped to a Zuora object field, Zuora will retrieve the value automatically, you don’t need to pass its value explicitly. If you pass a value that doesn’t match the actual value of the Zuora object, an error will be returned. Note that for any pricing attribute mapped to the field of Zuora object Usage, because its value is only determined when the usage record arrives, you can’t provide a value via Orders API payload and Zuora will not retrieve its value automatically. **Note:** To enable Dynamic Pricing, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `productCategory` string — The productCategory of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productClass` string — The productClass of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productFamily` string — The productFamily of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productLine` string — The productLine of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productRatePlanChargeId` string, required — Internal identifier of the product rate plan charge that the charge is based on. You can specify either `productRatePlanChargeId` or `productRatePlanChargeNumber`. When subscribing to a hard bundle, include the optional component charge’s ID explicitly in order to add it to the subscription. When `isAddingSubsetCharges` is set to true, the product rate charge specified by `productRatePlanChargeId` is added to the existing rate plan specified by `ratePlanId`. **Note**: The **Hard Bundle** feature is in the **Early Availability** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early availability program, submit a request at <a href="https://support.zuora.com" target="_blank">Zuora Global Support</a>.
            - `productRatePlanChargeNumber` string — Number of a product rate-plan charge for this subscription. You can specify either `productRatePlanChargeId` or `productRatePlanChargeNumber`.
            - `prorationOption` 'NoProration' | 'TimeBasedProration' | 'DefaultFromTenantSetting' | 'ChargeFullPeriod' | 'CustomizeProrationOptionOverrides' — **Note**: This field is only available if you have the **Charge Level Proration** feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-usage-charge-proration" target="_blank">Usage charge proration</a> and <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. You can use this field to specify the charge-level proration option for a usage charge or recurring charge when you create or add a subscription rate plan charge through an order. The tenant-level proration option will be overridden. * `NoProration`: charge-level proration option that you can set for a usage charge. This option means to not use any proration, which is the default current system behavior for a usage charge. * `TimeBasedProration`: charge-level proration option that you can set for a usage charge. This option means to prorate the usage charge amount using the actual number of days if the billing period is a partial period. * `DefaultFromTenantSetting`: charge-level proration option that you can set for a recurring charge. This option means to follow the customer billing rule proration setting. * `ChargeFullPeriod`: charge-level proration option that you can set for a recurring charge. This options means to charge the full period amount for a partial billing period. Note that this setting means that there is no proration for either collecting or refunding. Even if you cancel the recurring charge in the middle of a billing period, there is no refund for this billing period. * `CustomizeProrationOptionOverrides`: charge-level proration option that you can set for a recurring charge. This option means to use the customized charge proration settings that is specified by the `ratingPropertiesOverride` field. When the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature is enabled, the possible options are: - DefaultFromTenantSetting - CustomizeProrationOptionOverrides. When `CustomizeProrationOptionOverrides` is selected, define the customization rules using these options in the `ratingPropertiesOverride` field.
            - `ratingPropertiesOverride` object — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. This field is used only when the value of the `prorationOption` field is set to `CustomizeProrationOptionOverrides`. Use this field to specify more customized proration options for a recurring charge when you creating or adding a subscription rate plan charge through an order. The tenant-level proration option will be overridden.
              - …
            - `recognizedRevenueAccountingCode` string — The recognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
            - `revRecCode` string — Revenue Recognition Code
            - `revRecTriggerCondition` 'Contract Effective Date' | 'Service Activation Date' | 'Customer Acceptance Date' — Specifies the revenue recognition trigger condition. * `Contract Effective Date` * `Service Activation Date` * `Customer Acceptance Date`
            - `revenueRecognitionRuleName` string — Specifies the revenue recognition rule, such as `Recognize upon invoicing` or `Recognize daily over time`.
            - `revenueRecognitionTiming` 'Upon Billing Document Posting Date' | 'Upon Order Activation Date' — Specifies the type of revenue recognition timing. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have both the Order to Revenue feature and the Standalone Orders feature enabled.
            - `revenueAmortizationMethod` 'Immediate' | 'Ratable Using Start And End Dates' — Specifies the type of revenue amortization method. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have both the Order to Revenue feature and the Standalone Orders feature enabled.
            - `rolloverApply` 'ApplyFirst' | 'ApplyLast' — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. This field defines the priority of rollover, which is either first or last.
            - `rolloverEndDate` string, date — Explicit cutoff date when `rolloverEndDateType` is `SpecificDate`. **Note**: This field is only available if you have the **PPDD Proration** feature enabled.
            - `rolloverEndDateType` 'ChargeEndDate' | 'SubscriptionTerm' | 'SpecificDate' — Rollover cutoff strategy determining when the rollover eligibility will end. Possible values are: * `ChargeEndDate` - Rollover stops at the charge end date. * `SubscriptionTerm` - Rollover stops at the subscription term end. * `SpecificDate` - Rollover stops at an explicit date specified in `RolloverEndDate`. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `rolloverFundPriority` integer — Priority override for rolled-over funds. Lower value means that it will be consumed first. **Note**: This field is only available if you have the **PPDD Proration** feature enabled.
            - `rolloverPeriodLength` integer — **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. Use this field when you want to set the rollover fund's period length shorter than the prepayment charge's validity period. In this case, you must set the `rolloverPeriods` field to 1. For example, you can define the rollover fund's period length as 5 months, shorter than the prepayment charge's validity period: a year. When the **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can customize a single rollover period length together with `rolloverPeriodType` field.
            - `rolloverPeriods` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. This field defines the number of rollover periods, it is restricted to 3.
            - `rolloverPeriodType` 'Day' | 'Month' | 'Quarter' | 'Annual' — Unit for rollover period length. Possible values are: * `Day` - Day-based rollover periods. * `Month` - Month-based rollover periods. * `Quarter` - Quarter-based rollover periods. * `Annual` - Annual rollover periods. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `specificValidityPeriodLength` integer — The number of days, weeks, or months for the validity period when `ValidityPeriodType` is `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, or `SPECIFIC_MONTHS`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `startDate` CreateOrderTriggerParams — Specifies when a charge becomes active.
              - …
            - `taxCode` string — The taxCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `taxMode` string — The taxMode of a standalone charge. Values: * `TaxExclusive` * `TaxInclusive` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `unBilledReceivablesAccountingCode` string — The unBilledReceivablesAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `uniqueToken` string — Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the charge. Then when you update the product, you can use the same unique identifier to specify which charge to modify.
            - `upsellOriginChargeNumber` string — The identifier of the original upselling charge associated with the current charge. For a termed subscription, you can now use the "Create an order" API operation to perform an Add Product order action to make a product quantity upsell for per unit recurring charges. The benefit is that the charge added by this approach will be automatically combined with the original existing charge for which you want to upsell when the subscription is renewed. The approach is as follows: * Use an Add Product order action to add a charge that is of the same charge type, charge model, and charge end date as the existing per unit recurring charge for which you want to make a quantity upsell. * In the preceding charge to add, use the `upsellOriginChargeNumber` field to specify the existing rate plan charge for which you want to make the quantity upsell. Note that a termed subscription with such upsell charges can not be changed to an evergreen subscription. **Note**: The Quantity Upsell feature is in the **Early Adopter** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early adopter program, submit a request at [Zuora Global Support](https://support.zuora.com).
            - `validityPeriodType` 'SUBSCRIPTION_TERM' | 'ANNUAL' | 'SEMI_ANNUAL' | 'QUARTER' | 'MONTH' — **Note**: This field is only available if you have enabled either of the following: * <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> * <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> * Both <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> You can use this field in the following scenarios: * When you create a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover), use this field to define the period in which the prepayment units are valid to use. * When you override the setting of <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">commitment true-up charge</a> from the product catalog, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When you use a standalone order to create a commitment true-up charge, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can also choose from the following options: `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, `SPECIFIC_MONTHS`. Specify the actual number in `specificValidityPeriodLength` field.
            - `validityPeriodAlignment` 'ChargeStart' | 'TermStart' | 'TermEnd' | 'SpecificDate' — Determines the anchor date for validity period (VP) boundaries. The anchor date defines the recurring grid — VP boundaries fall at every VP-length step from the anchor. The charge's start and end dates then determine which portion of this grid is covered. Possible values are: * `ChargeStart` (default) - Anchor date is the charge start date. Simplest option with no partial first VP. * `TermStart` - Anchor date is the subscription term start date. Aligns all charges on the same subscription to a common grid. * `TermEnd` - Anchor date is derived by walking backward from the subscription term end date. Last VP always ends cleanly at term end; partial VP (if any) is at the start. * `SpecificDate` - Anchor date is an explicit `validityPeriodAnchorDate` on the charge. Custom alignment for special billing arrangements. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `validityPeriodAnchorDate` string, date — The anchor date for validity period alignment. Required when `validityPeriodAlignment` is `SpecificDate`. **Note**: This field is only available if you have the **PPDD Proration** feature enabled.
            - `validityPeriodProrationOption` 'ProrateUnits' | 'NoProrate' — Controls what happens to units when a validity period (VP) is partial. Possible values are: * `ProrateUnits` - Grant partial units, the number is prorated based on the overlap ratio. * `NoProrate` - Grant full units. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `clearingExistingFeatures` boolean — Specifies whether all features in the rate plan will be cleared.
          - `customFields` OrdersRatePlanObjectCustomFields — Container for custom fields of the Rate Plan object. The custom fields of the Rate Plan object are used when rate plans are subscribed.
          - `externalCatalogPlanId` string — An external ID of the product rate plan to be added. You can use this field to specify a product rate plan that is imported from an external system. The value of the `externalCatalogPlanId` field must match one of the values that are predefined in the `externallyManagedPlanIds` field on a product rate plan. **Note:** If both `externalCatalogPlanId` and `productRatePlanId` are provided. They must point to the same product rate plan. Otherwise, the request would fail.
          - `externallyManagedPlanId` string — Indicates the unique identifier for the rate plan purchased on a third-party store. This field is used to represent a subscription rate plan created through third-party stores.
          - `subscriptionRatePlanNumber` string — Number of a subscription rate plan for this subscription.
          - `isFromExternalCatalog` boolean — Indicates whether the rate plan is created from the Zuora product catalog or from an external product catalog. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productRatePlanId` string — Internal identifier of the product rate plan that the rate plan is based on.
          - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
          - `ratePlanName` string — Name of the standalone rate plan. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `subscriptionProductFeatures` CreateOrderRatePlanFeatureOverride[] — List of features associated with the rate plan. The system compares the `subscriptionProductFeatures` and `featureId` fields in the request with the counterpart fields in a rate plan. The comparison results are as follows: * If there is no `subscriptionProductFeatures` field or the field is empty, features in the rate plan remain unchanged. But if the `clearingExistingFeatures` field is additionally set to true, all features in the rate plan are cleared. * If the `subscriptionProductFeatures` field contains the `featureId` nested fields, as well as the optional `description` and `customFields` nested fields, the features indicated by the featureId nested fields in the request overwrite all features in the rate plan.
            - `customFields` RatePlanFeatureOverrideCustomFields — A container for custom fields of the feature.
            - `description` string — A description of the feature.
            - `featureId` string, required — Internal identifier of the feature in the product catalog.
          - `uniqueToken` string — Unique identifier for the rate plan. This identifier enables you to refer to the rate plan before the rate plan has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the rate plan. Then when you update the product, you can use the same unique identifier to specify which rate plan to modify.
        - `productRatePlanId` string — ID of the product rate plan that the removed rate plan is based on.
        - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
        - `ratePlanId` string — ID of the rate plan to remove. This can be the latest version or any history version of ID. Note that the removal of a rate plan through the Change Plan order action supports the function of <a href="https://docs.zuora.com?resourceId=billing-rate-plans-removal-from-subscriptions-before-future-dated-removals" target="_blank">removal before future-dated removals</a>, as in a Remove Product order action.
        - `resetBcd` boolean — If resetBcd is true then reset the Account BCD to the effective date; if it is false keep the original BCD. **Note**: If the rate plan change is an upgrade (the `subType` field is `Upgrade`), then the effective policy is `EffectiveImmediately` by default. In this case, if you do not specify the `resetBcd` field, the system sets this field to `true` while BCD is the effective date.
        - `subType` 'Upgrade' | 'Downgrade' | 'Crossgrade' | 'PlanChanged' — Use this field to choose the sub type for your change plan order action. However, if you do not set this field, the field will be automatically generated by the system according to the following rules: When the old and new rate plans are within the same Grading catalog group: * If the grade of new plan is greater than that of the old plan, this is an "Upgrade". * If the grade of new plan is less than that of the old plan, this is a "Downgrade". * If the grade of new plan equals that of the old plan, this is a "Crossgrade". When the old and new rate plans are not in the same Grading catalog group, or either has no group, this is "PlanChanged".
        - `subscriptionRatePlanNumber` string — Number of a rate plan for this subscription.
      - `changeReason` string — The change reason set for an order action when an order is created.
      - `createSubscription` CreateOrderCreateSubscription — Information about an order action of type `CreateSubscription`.
        - `billToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `billToContactId` string — The ID of the bill-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `currency` string — The code of currency that is used for this subscription. If the currency is not selected, the default currency from the account will be used. All subscriptions in the same order must use the same currency. The currency for a subscription cannot be changed. **Note**: This field is available only if you have the <a href="https://docs.zuora.com?resourceId=billing-multiple-currencies-overview" target="_blank">Multiple Currencies</a> feature enabled.
        - `invoiceGroupNumber` string, nullable — The number of the invoice group associated with the subscription. After enabling the Invoice Grouping feature, you can specify invoice group numbers to bill subscriptions and order line items based on specific criteria. For the same account, Zuora generates separate invoices for subscriptions and order line items, each identified by unique invoice group numbers. For more information, see [Invoice Grouping](https://docs.zuora.com?resourceId=billing-invoice-grouping). **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `invoiceSeparately` boolean — Specifies whether the subscription appears on a separate invoice when Zuora generates invoices.
        - `invoiceTemplateId` string — The ID of the invoice template associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Template from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `newSubscriptionOwnerAccount` CreateOrderCreateSubscriptionNewSubscriptionOwnerAccount — Container for the data access control field.
          - `accountNumber` string — Account number. For example, A00000001.
          - `additionalEmailAddresses` string — List of additional email addresses to receive emailed invoices. Values should be a comma-separated list of email addresses.
          - `allowInvoiceEdit` boolean — Indicates if associated invoices can be edited. Values are: * `true` * `false` (default)
          - `autoPay` boolean — Specifies whether future payments are automatically billed when they are due.
          - `batch` string — Name of the billing batch that the account belongs to. For example, Batch1.
          - `billCycleDay` integer, required — Day of the month that the account prefers billing periods to begin on. If set to 0, the bill cycle day will be set as "AutoSet".
          - `billToContact` BillToContactPostOrder, required — Container for custom fields of a Contact object.
            - `address1` string — First line of the contact's address. This is often a street address or a business name.
            - `address2` string — Second line of the contact's address.
            - `city` string — City of the contact's address.
            - `contactDescription` string — A description for the contact.
            - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the bill-to contact to calculate tax.
            - `county` string — County of the contact's address.
            - `fax` string — Fax number of the contact.
            - `firstName` string, required — First name of the contact.
            - `homePhone` string — Home phone number of the contact.
            - `lastName` string, required — Last name of the contact.
            - `mobilePhone` string — Mobile phone number of the contact.
            - `nickname` string — Nickname of the contact.
            - `otherPhone` string — Additional phone number of the contact. Use the `otherPhoneType` field to specify the type of phone number.
            - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number in the `otherPhone` field.
            - `personalEmail` string, email — Personal email address of the contact.
            - `postalCode` string — ZIP code or other postal code of the contact's address.
            - `state` string — State or province of the contact's address.
            - `taxRegion` string, nullable — Region defined in your taxation rules. Only applicable if you use Zuora Tax.
            - `workEmail` string, email — Business email address of the contact.
            - `workPhone` string — Business phone number of the contact.
          - `communicationProfileId` string — Internal identifier of the communication profile that Zuora uses when sending notifications to the account's contacts.
          - `creditCard` CreditCard — Default payment method associated with an account. Only credit card payment methods are supported.
            - `cardHolderInfo` AccountCreditCardHolder — Information about the cardholder of a credit card payment method associated with an account. If you do not provide information about the cardholder, Zuora uses the account's bill-to contact.
              - …
            - `cardNumber` string — Card number. Once set, you cannot update or query the value of this field. The value of this field is only available in masked format. For example, XXXX-XXXX-XXXX-1234 (hyphens must not be used when you set the credit card number).
            - `cardType` 'Visa' | 'MasterCard' | 'AmericanExpress' | 'Discover' | 'JCB' | 'Diners' | 'CUP' | 'Maestro' | 'Electron' | 'AppleVisa' | 'AppleMasterCard' | 'AppleAmericanExpress' | 'AppleDiscover' | 'AppleJCB' | 'Elo' | 'Hipercard' | 'Naranja' | 'Nativa' | 'TarjetaShopping' | 'Cencosud' | 'Argencard' | 'Cabal' — Type of card.
            - `expirationMonth` integer — Expiration date of the card.
            - `expirationYear` integer — Expiration year of the card.
            - `securityCode` string — CVV or CVV2 security code of the card. To ensure PCI compliance, Zuora does not store the value of this field.
          - `creditMemoTemplateId` string — **Note:** This field is only available if you have [Invoice Settlement](https://docs.zuora.com?resourceId=billing-invoice-settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://docs.zuora.com?resourceId=billing-invoice-settlement-migration-checklist-and-guide) for more information. The unique ID of the credit memo template, configured in **Billing Settings** > **Manage Billing Document Configuration** through the Zuora UI. For example, 2c92c08a6246fdf101626b1b3fe0144b.
          - `crmId` string — External identifier of the account in a CRM system.
          - `currency` string, required — ISO 3-letter currency code (uppercase). For example, USD.
          - `customFields` AccountObjectCustomFields — Container for custom fields of an Account object.
          - `customerServiceRepName` string — Name of the account's customer service representative, if applicable.
          - `debitMemoTemplateId` string — **Note:** This field is only available if you have [Invoice Settlement](https://docs.zuora.com?resourceId=billing-invoice-settlement) enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see [Invoice Settlement Enablement and Checklist Guide](https://docs.zuora.com?resourceId=billing-invoice-settlement-migration-checklist-and-guide) for more information. The unique ID of the debit memo template, configured in **Billing Settings** > **Manage Billing Document Configuration** through the Zuora UI. For example, 2c92c08d62470a8501626b19d24f19e2.
          - `hpmCreditCardPaymentMethodId` string — The ID of the payment method associated with this account. The payment method specified for this field will be set as the default payment method of the account. If the `autoPay` field is set to `true`, you must provide the credit card payment method ID for either this field or the `creditCard` field, but not both. For the Credit Card Reference Transaction payment method, you can specify the payment method ID in this field or use the `paymentMethod` field to create a CC Reference Transaction payment method for an account.
          - `invoiceDeliveryPrefsEmail` boolean — Specifies whether to turn on the invoice delivery method 'Email' for the new account. Values are: * `true` (default). Turn on the invoice delivery method 'Email' for the new account. * `false`. Turn off the invoice delivery method 'Email' for the new account.
          - `invoiceDeliveryPrefsPrint` boolean — Specifies whether to turn on the invoice delivery method 'Print' for the new account. Values are: * `true`. Turn on the invoice delivery method 'Print' for the new account. * `false` (default). Turn off the invoice delivery method 'Print' for the new account.
          - `invoiceTemplateId` string — Internal identifier of the invoice template that Zuora uses when generating invoices for the account.
          - `name` string, required — Account name.
          - `notes` string — Notes about the account. These notes are only visible to Zuora users.
          - `parentId` string — Identifier of the parent customer account for this Account object. Use this field if you have <a href="https://docs.zuora.com?resourceId=billing-overview-customer-accounts" target="_blank">Customer Hierarchy</a> enabled.
          - `paymentGateway` string — The payment gateway that Zuora uses when processing electronic payments and refunds for the account. If you do not specify this field or if the value of this field is null, Zuora uses your default payment gateway.
          - `paymentMethod` union — Payment method information associated with an account.
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object — Container for custom fields of a payment method object.
              - …
            - object
              - …
            - object
              - …
            - object
              - …
          - `paymentTerm` string — Name of the payment term associated with the account. For example, "Net 30". The payment term determines the due dates of invoices.
          - `purchaseOrderNumber` string — The number of the purchase order associated with this account. Purchase order information generally comes from customers.
          - `salesRep` string — The name of the sales representative associated with this account, if applicable.
          - `soldToContact` SoldToContactPostOrder — Container for custom fields of a Contact object.
            - `address1` string — First line of the contact's address. This is often a street address or a business name.
            - `address2` string — Second line of the contact's address.
            - `city` string — City of the contact's address.
            - `contactDescription` string — A description for the contact.
            - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
            - `county` string — County of the contact's address.
            - `fax` string — Fax number of the contact.
            - `firstName` string, required — First name of the contact.
            - `homePhone` string — Home phone number of the contact.
            - `lastName` string, required — Last name of the contact.
            - `mobilePhone` string — Mobile phone number of the contact.
            - `nickname` string — Nickname of the contact.
            - `otherPhone` string — Additional phone number of the contact. Use the `otherPhoneType` field to specify the type of phone number.
            - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number in the `otherPhone` field.
            - `personalEmail` string, email — Personal email address of the contact.
            - `postalCode` string — ZIP code or other postal code of the contact's address.
            - `state` string — State or province of the contact's address.
            - `taxRegion` string, nullable — Region defined in your taxation rules. Only applicable if you use Zuora Tax.
            - `workEmail` string, email — Business email address of the contact.
            - `workPhone` string — Business phone number of the contact.
          - `taxInfo` TaxInfo — Information about the tax exempt status of a customer account.
            - `VATId` string — EU Value Added Tax ID. **Note:** This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com).
            - `companyCode` string — Unique code that identifies a company account in Avalara. Use this field to calculate taxes based on origin and sold-to addresses in Avalara. **Note:** This feature is in Limited Availability. If you wish to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com).
            - `exemptCertificateId` string — ID of the customer tax exemption certificate. Applicable if you use Zuora Tax or Connect tax engines.
            - `exemptCertificateType` string — Type of tax exemption certificate that the customer holds. Applicable if you use Zuora Tax or Connect tax engines.
            - `exemptDescription` string — Description of the tax exemption certificate that the customer holds. Applicable if you use Zuora Tax or Connect tax engines.
            - `exemptEffectiveDate` string, date — Date when the customer tax exemption starts, in YYYY-MM-DD format. Applicable if you use Zuora Tax or Connect tax engines.
            - `exemptExpirationDate` string, date — Date when the customer tax exemption expires, in YYYY-MM-DD format. Applicable if you use Zuora Tax or Connect tax engines.
            - `exemptIssuingJurisdiction` string — Jurisdiction in which the customer tax exemption certificate was issued.
            - `exemptStatus` 'No' | 'Yes' | 'PendingVerification' — Status of the account tax exemption. Applicable if you use Zuora Tax or Connect tax engines. Required if you use Zuora Tax.
        - `notes` string — Notes about the subscription. These notes are only visible to Zuora users.
        - `paymentProfile` object — Container for payment gateway and payment method details of a payment. If you do not set this field, the payment method and payment gateway values cannot be set in the subscription. **Note:** - If multiple order actions are specified, they will be applied in the same order they appear in the API payload. - If one or more of these order actions include the `paymentProfile` element, the changes will be applied in sequence, and the result will be consistent with the last `paymentProfile` element.
          - `paymentGatewayId` string — The ID of the gateway instance that processes the payment. This field remains unset, if you do not provide value.
          - `paymentMethodId` string — The ID of the payment method. This field remains unset, if you do not provide value.
        - `paymentTerm` string — The name of the payment term associated with the subscription. For example, `Net 30`. The payment term determines the due dates of invoices. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Term from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `sequenceSetId` string, nullable — The ID of the sequence set associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Set from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `shipToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `shipToContactId` string — The ID of the ship-to contact associated with the subscription. It must be a contact of the subscription owner. **Note:** To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `soldToContactId` string — The ID of the sold-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `soldToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `subscribeToRatePlans` CreateOrderRatePlanOverride[] — List of rate plans associated with the subscription.
          - `chargeOverrides` CreateOrderChargeOverride[] — List of charges associated with the rate plan.
            - `accountReceivableAccountingCode` string — The accountReceivableAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a>, <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a>, and <a href="https://docs.zuora.com?resourceId=billing-invoice-settlement" target="_blank">Invoice Settlement</a> features are enabled.
            - `adjustmentLiabilityAccountingCode` string — The adjustmentLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `adjustmentRevenueAccountingCode` string — The adjustmentRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `billing` object — Billing information about the charge.
              - …
            - `chargeFunction` 'CommitmentTrueUp' | 'CreditCommitment' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines what type of charge it is: * CommitmentTrueUp: For recurring charges. Currency based minimum commitment charge. * CreditCommitment: For usage charges. Credit to minimum commitment funds.
            - `creditOption` 'TimeBased' | 'ConsumptionBased' | 'FullCreditBack' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines the way to calculate credit. See [Credit Option](https://docs.zuora.com?resourceId=billing-prepayment-charge) for more information.
            - `chargeModel` string — The chargeModel of a standalone charge. Supported charge models: * `FlatFee` * `PerUnit` * `Volume` * `Tiered` * `DiscountFixedAmount` * `DiscountPercentage` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `chargeNumber` string — Charge number of the charge. For example, C-00000307. * If you do not set this field, Zuora will generate a charge number starting with a default prefix, for example, C-. This default prefix is predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. * If you want to use a custom charge number, do not use the default prefix predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. Use your own prefix, for example, SC-.
            - `chargeType` string — The chargeType of a standalone charge. Supported charge types: * `OneTime` * `Recurring` * `Usage` **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `contractAssetAccountingCode` string — The contractAssetAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `contractLiabilityAccountingCode` string — The contractLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `contractRecognizedRevenueAccountingCode` string — The contractRecognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `customFields` RatePlanChargeObjectCustomFields — Container for custom fields of a Rate Plan Charge object.
            - `deferredRevenueAccountingCode` string — The deferredRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
            - `description` string — Description of the charge.
            - `drawdownPriority` integer — Drawdown priority for consumption ordering. Lower value means that it will be consumed first. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `drawdownRate` number — **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. The [conversion rate](https://docs.zuora.com?resourceId=billing-create-drawdown-charge) between Usage UOM and Drawdown UOM for a [drawdown charge](https://docs.zuora.com?resourceId=billing-create-drawdown-charge). Must be a positive number (>0).
            - `drawdownScope` 'SUBSCRIPTION' | 'ACCOUNT' — The scope in which the funds are applicable for the usage drawdown charges during drawdown. Valid for the charge with function of `Prepayment`. - `SUBSCRIPTION` - only usage charges of the same subscription can be drawn down. - `ACCOUNT` - only usage charges in the same account (subscription owner) can be drawn down. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `endDate` EndConditions — Specifies when a charge becomes inactive.
              - …
            - `estimatedStartDate` string, date — The estimated start date of the pending charge in an active subscription. If you specify `SpecificDate` in the `startDate` > `triggerEvent` field and want to create a completed order and an active subscription, you must specify either the `estimatedStartDate` or `startDate` > `specificTriggerDate` field: - `estimatedStartDate`: The charge will be in pending status. - `specificTriggerDate`: The charge will be in active status. The value of this field must be a date within the subscription term. The system will then automatically calculate the estimated end date for the pending charge. The estimated start and end dates are used to manage the estimated charge duration and forecast the revenue for the pending charge. **Note:** This field is available only when the Pending Subscription Processing feature is turned on.
            - `excludeItemBillingFromRevenueAccounting` boolean — The flag to exclude rate plan charge related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting. If both the following features are enabled in your tenant, you must ensure the `excludeItemBillingFromRevenueAccounting` field is set consistently for a prepayment charge and the corresponding drawdown charge. In addition, if the `excludeItemBookingFromRevenueAccounting` field in a Create Subscription or Add Product order action is set to `false`, you must also set the `excludeItemBillingFromRevenueAccounting` field in this order action to `false`. * Prepaid with Drawdown * Unbilled Usage **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
            - `excludeItemBookingFromRevenueAccounting` boolean — The flag to exclude rate plan charges from revenue accounting. If both the following features are enabled in your tenant, you must ensure the `excludeItemBookingFromRevenueAccounting` field is set consistently for a prepayment charge and the corresponding drawdown charge. * Prepaid with Drawdown * Unbilled Usage **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
            - `fundSupportAccountHierarchy` boolean — Indicates whether to enable sub-account's usage to drawdown from the parent's funds. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `isAllocationEligible` boolean — This field is used to identify if the charge segment is allocation eligible in revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `isRollover` boolean — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The value is either "True" or "False". It determines whether the rollover fields are needed.
            - `isUnbilled` boolean — This field is used to dictate how to perform the accounting during revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `name` string — The name of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `negotiatedPriceTable` NegotiatedItems[] — Array of negotiated price table information. The rate card entries provided in the array will override the existing rate card entries in the standard price table to form a negotiated price table that will be used during pricing evaluation. **Note:** To enable the Negotiated Price Table feature, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
              - …
            - `pobPolicy` string — The pobPolicy of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `prepaidQuantity` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The number of units included in a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover). Must be a positive number (>0).
            - `prepaymentUnitType` 'UNIT' — The unit type of the prepayment charge. For topup (recurring/one-time) charges, this field indicates what type of funds are created. For drawdown (usage) charges, this field indicates what type of funds are drawn down from those created by topup charges. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `pricing` object — Pricing information about the charge.
              - …
            - `pricingAttributes` object — Container for pricing attribute and value that provide additional context for dynamic pricing. The pricing attribute values are used to get the charge’s list price from the product catalog. For the pricing attribute mapped to a Zuora object field, Zuora will retrieve the value automatically, you don’t need to pass its value explicitly. If you pass a value that doesn’t match the actual value of the Zuora object, an error will be returned. Note that for any pricing attribute mapped to the field of Zuora object Usage, because its value is only determined when the usage record arrives, you can’t provide a value via Orders API payload and Zuora will not retrieve its value automatically. **Note:** To enable Dynamic Pricing, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `productCategory` string — The productCategory of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productClass` string — The productClass of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productFamily` string — The productFamily of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productLine` string — The productLine of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
            - `productRatePlanChargeId` string, required — Internal identifier of the product rate plan charge that the charge is based on. You can specify either `productRatePlanChargeId` or `productRatePlanChargeNumber`. When subscribing to a hard bundle, include the optional component charge’s ID explicitly in order to add it to the subscription. When `isAddingSubsetCharges` is set to true, the product rate charge specified by `productRatePlanChargeId` is added to the existing rate plan specified by `ratePlanId`. **Note**: The **Hard Bundle** feature is in the **Early Availability** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early availability program, submit a request at <a href="https://support.zuora.com" target="_blank">Zuora Global Support</a>.
            - `productRatePlanChargeNumber` string — Number of a product rate-plan charge for this subscription. You can specify either `productRatePlanChargeId` or `productRatePlanChargeNumber`.
            - `prorationOption` 'NoProration' | 'TimeBasedProration' | 'DefaultFromTenantSetting' | 'ChargeFullPeriod' | 'CustomizeProrationOptionOverrides' — **Note**: This field is only available if you have the **Charge Level Proration** feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-usage-charge-proration" target="_blank">Usage charge proration</a> and <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. You can use this field to specify the charge-level proration option for a usage charge or recurring charge when you create or add a subscription rate plan charge through an order. The tenant-level proration option will be overridden. * `NoProration`: charge-level proration option that you can set for a usage charge. This option means to not use any proration, which is the default current system behavior for a usage charge. * `TimeBasedProration`: charge-level proration option that you can set for a usage charge. This option means to prorate the usage charge amount using the actual number of days if the billing period is a partial period. * `DefaultFromTenantSetting`: charge-level proration option that you can set for a recurring charge. This option means to follow the customer billing rule proration setting. * `ChargeFullPeriod`: charge-level proration option that you can set for a recurring charge. This options means to charge the full period amount for a partial billing period. Note that this setting means that there is no proration for either collecting or refunding. Even if you cancel the recurring charge in the middle of a billing period, there is no refund for this billing period. * `CustomizeProrationOptionOverrides`: charge-level proration option that you can set for a recurring charge. This option means to use the customized charge proration settings that is specified by the `ratingPropertiesOverride` field. When the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature is enabled, the possible options are: - DefaultFromTenantSetting - CustomizeProrationOptionOverrides. When `CustomizeProrationOptionOverrides` is selected, define the customization rules using these options in the `ratingPropertiesOverride` field.
            - `ratingPropertiesOverride` object — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. This field is used only when the value of the `prorationOption` field is set to `CustomizeProrationOptionOverrides`. Use this field to specify more customized proration options for a recurring charge when you creating or adding a subscription rate plan charge through an order. The tenant-level proration option will be overridden.
              - …
            - `recognizedRevenueAccountingCode` string — The recognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
            - `revRecCode` string — Revenue Recognition Code
            - `revRecTriggerCondition` 'Contract Effective Date' | 'Service Activation Date' | 'Customer Acceptance Date' — Specifies the revenue recognition trigger condition. * `Contract Effective Date` * `Service Activation Date` * `Customer Acceptance Date`
            - `revenueRecognitionRuleName` string — Specifies the revenue recognition rule, such as `Recognize upon invoicing` or `Recognize daily over time`.
            - `revenueRecognitionTiming` 'Upon Billing Document Posting Date' | 'Upon Order Activation Date' — Specifies the type of revenue recognition timing. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have both the Order to Revenue feature and the Standalone Orders feature enabled.
            - `revenueAmortizationMethod` 'Immediate' | 'Ratable Using Start And End Dates' — Specifies the type of revenue amortization method. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have both the Order to Revenue feature and the Standalone Orders feature enabled.
            - `rolloverApply` 'ApplyFirst' | 'ApplyLast' — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. This field defines the priority of rollover, which is either first or last.
            - `rolloverEndDate` string, date — Explicit cutoff date when `rolloverEndDateType` is `SpecificDate`. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `rolloverEndDateType` 'ChargeEndDate' | 'SubscriptionTerm' | 'SpecificDate' — Rollover cutoff strategy determining when the rollover eligibility will end. Possible values are: * `ChargeEndDate` - Rollover stops at the charge end date. * `SubscriptionTerm` - Rollover stops at the subscription term end. * `SpecificDate` - Rollover stops at an explicit date specified in `RolloverEndDate`. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `rolloverFundPriority` integer — Priority for rolled-over funds. Lower value means that it will be consumed first. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `rolloverPeriodLength` integer — **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. Use this field when you want to set the rollover fund's period length shorter than the prepayment charge's validity period. In this case, you must set the `rolloverPeriods` field to 1. For example, you can define the rollover fund's period length as 5 months, shorter than the prepayment charge's validity period: a year. When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can customize a single rollover period length together with `rolloverPeriodType` field.
            - `rolloverPeriods` number — **Note:** This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. This field defines the number of rollover periods, it is restricted to 3.
            - `rolloverPeriodType` 'Day' | 'Month' | 'Quarter' | 'Annual' — Unit for rollover period length. Possible values are: * `Day` - Day-based rollover periods. * `Month` - Month-based rollover periods. * `Quarter` - Quarter-based rollover periods. * `Annual` - Annual rollover periods. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `specificValidityPeriodLength` integer — The number of days, weeks, or months for the validity period when `ValidityPeriodType` is `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, or `SPECIFIC_MONTHS`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `startDate` CreateOrderTriggerParams — Specifies when a charge becomes active.
              - …
            - `taxCode` string — The tax code of a charge. This field is available when the `taxable` field is set to `true`.
            - `taxMode` 'TaxExclusive' | 'TaxInclusive' — The tax mode of a charge. This field is available when the `taxable` field is set to `true`.
            - `taxable` boolean — The flag indicates whether the charge is taxable. If this field is set to `true`, you must specify the `taxCode` and `taxMode` fields.
            - `unBilledReceivablesAccountingCode` string — The unBilledReceivablesAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
            - `uniqueToken` string — Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the charge. Then when you update the product, you can use the same unique identifier to specify which charge to modify.
            - `upsellOriginChargeNumber` string — The identifier of the original upselling charge associated with the current charge. For a termed subscription, you can now use the "Create an order" API operation to perform an Add Product order action to make a product quantity upsell for per unit recurring charges. The benefit is that the charge added by this approach will be automatically combined with the original existing charge for which you want to upsell when the subscription is renewed. The approach is as follows: * Use an Add Product order action to add a charge that is of the same charge type, charge model, and charge end date as the existing per unit recurring charge for which you want to make a quantity upsell. * In the preceding charge to add, use the `upsellOriginChargeNumber` field to specify the existing rate plan charge for which you want to make the quantity upsell. Note that a termed subscription with such upsell charges can not be changed to an evergreen subscription. **Note**: The Quantity Upsell feature is in the **Early Adopter** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early adopter program, submit a request at [Zuora Global Support](https://support.zuora.com).
            - `validityPeriodType` 'SUBSCRIPTION_TERM' | 'ANNUAL' | 'SEMI_ANNUAL' | 'QUARTER' | 'MONTH' — **Note**: This field is only available if you have enabled either of the following: * <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> * <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> * Both <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> You can use this field in the following scenarios: * When you create a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover), use this field to define the period in which the prepayment units are valid to use. * When you override the setting of <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">commitment true-up charge</a> from the product catalog, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When you use a standalone order to create a commitment true-up charge, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can also choose from the following options: `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, `SPECIFIC_MONTHS`. Specify the actual number in `specificValidityPeriodLength` field.
            - `validityPeriodAlignment` 'ChargeStart' | 'TermStart' | 'TermEnd' | 'SpecificDate' — Determines the anchor date for validity period (VP) boundaries. The anchor date defines the recurring grid — VP boundaries fall at every VP-length step from the anchor. The charge's start and end dates then determine which portion of this grid is covered. Possible values are: * `ChargeStart` (default) - Anchor date is the charge start date. Simplest option with no partial first VP. * `TermStart` - Anchor date is the subscription term start date. Aligns all charges on the same subscription to a common grid. * `TermEnd` - Anchor date is derived by walking backward from the subscription term end date. Last VP always ends cleanly at term end; partial VP (if any) is at the start. * `SpecificDate` - Anchor date is an explicit `validityPeriodAnchorDate` on the charge. Custom alignment for special billing arrangements. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `validityPeriodAnchorDate` string, date — The anchor date for validity period alignment. Required when `validityPeriodAlignment` is `SpecificDate`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `validityPeriodProrationOption` 'ProrateUnits' | 'NoProrate' — Controls what happens to units when a validity period (VP) is partial. Possible values are: * `ProrateUnits` - Grant partial units, the number is prorated based on the overlap ratio. * `NoProrate` - Grant full units. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `clearingExistingFeatures` boolean — Specifies whether all features in the rate plan will be cleared.
          - `customFields` OrdersRatePlanObjectCustomFields — Container for custom fields of the Rate Plan object. The custom fields of the Rate Plan object are used when rate plans are subscribed.
          - `externalCatalogPlanId` string — An external ID of the product rate plan to be added. You can use this field to specify a product rate plan that is imported from an external system. The value of the `externalCatalogPlanId` field must match one of the values that are predefined in the `externallyManagedPlanIds` field on a product rate plan. **Note:** If both `externalCatalogPlanId` and `productRatePlanId` are provided. They must point to the same product rate plan. Otherwise, the request would fail.
          - `externallyManagedPlanId` string — Indicates the unique identifier for the rate plan purchased on a third-party store. This field is used to represent a subscription rate plan created through third-party stores.
          - `isAddingSubsetCharges` boolean — Specifies whether to add a subset of charges to the subscription. **Note:** To access this field for adding a subset of charges, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `isFromExternalCatalog` boolean — Indicates whether the rate plan is created from the Zuora product catalog or from an external product catalog. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productRatePlanId` string — Internal identifier of the product rate plan that the rate plan is based on.
          - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
          - `ratePlanName` string — Name of the standalone rate plan. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `subscriptionProductFeatures` CreateOrderRatePlanFeatureOverride[] — List of features associated with the rate plan. The system compares the `subscriptionProductFeatures` and `featureId` fields in the request with the counterpart fields in a rate plan. The comparison results are as follows: * If there is no `subscriptionProductFeatures` field or the field is empty, features in the rate plan remain unchanged. But if the `clearingExistingFeatures` field is additionally set to true, all features in the rate plan are cleared. * If the `subscriptionProductFeatures` field contains the `featureId` nested fields, as well as the optional `description` and `customFields` nested fields, the features indicated by the featureId nested fields in the request overwrite all features in the rate plan.
            - `customFields` RatePlanFeatureOverrideCustomFields — A container for custom fields of the feature.
            - `description` string — A description of the feature.
            - `featureId` string, required — Internal identifier of the feature in the product catalog.
          - `subscriptionRatePlanNumber` string — Number of a subscription rate plan for this subscription.
          - `uniqueToken` string — Unique identifier for the rate plan. This identifier enables you to refer to the rate plan before the rate plan has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the rate plan. Then when you update the product, you can use the same unique identifier to specify which rate plan to modify.
        - `subscriptionNumber` string — Subscription number of the subscription. For example, A-S00000001. If you do not set this field, Zuora will generate the subscription number.
        - `subscriptionOwnerAccountNumber` string — Account number of an existing account that will own the subscription. For example, A00000001. If you do not set this field or the `newSubscriptionOwnerAccount` field, the account that owns the order will also own the subscription. Zuora will return an error if you set this field and the `newSubscriptionOwnerAccount` field.
        - `invoiceOwnerAccountNumber` string — Account number of an existing account that will own the invoice. For example, A00000001. If you do not set this field, the account that owns the order will also own this invoice.
        - `terms` object — Container for the terms and renewal settings of the subscription.
          - `autoRenew` boolean — Specifies whether the subscription automatically renews at the end of the each term. Only applicable if the type of the first term is `TERMED`.
          - `initialTerm` object, required — Information about the first term of the subscription.
            - `period` integer — Duration of the first term in months, years, days, or weeks, depending on the value of the `periodType` field. Only applicable if the value of the `termType` field is `TERMED`.
            - `periodType` 'Month' | 'Year' | 'Day' | 'Week' — Unit of time that the first term is measured in. Only applicable if the value of the `termType` field is `TERMED`.
            - `startDate` string, date — Start date of the first term, in YYYY-MM-DD format.
            - `endDate` string, date — End date of the first term, in YYYY-MM-DD format.
            - `termType` 'TERMED' | 'EVERGREEN', required — Type of the first term. If the value of this field is `TERMED`, the first term has a predefined duration based on the value of the `period` field. If the value of this field is `EVERGREEN`, the first term does not have a predefined duration.
          - `renewalSetting` 'RENEW_WITH_SPECIFIC_TERM' | 'RENEW_TO_EVERGREEN' — Specifies the type of the terms that follow the first term if the subscription is renewed. Only applicable if the type of the first term is `TERMED`. * `RENEW_WITH_SPECIFIC_TERM` - Each renewal term has a predefined duration. The first entry in `renewalTerms` specifies the duration of the second term of the subscription, the second entry in `renewalTerms` specifies the duration of the third term of the subscription, and so on. The last entry in `renewalTerms` specifies the ultimate duration of each renewal term. * `RENEW_TO_EVERGREEN` - The second term of the subscription does not have a predefined duration.
          - `renewalTerms` RenewalTerm[] — List of renewal terms of the subscription. Only applicable if the type of the first term is `TERMED` and the value of the `renewalSetting` field is `RENEW_WITH_SPECIFIC_TERM`.
            - `period` integer — Duration of the renewal term in months, years, days, or weeks, depending on the value of the `periodType` field.
            - `periodType` 'Month' | 'Year' | 'Day' | 'Week' — Unit of time that the renewal term is measured in.
      - `customFields` OrderActionObjectCustomFields — Container for custom fields of an Order Action object.
      - `ownerTransfer` OwnerTransfer — Information about an order action of type `OwnerTransfer`. **Note:** The Owner Transfer 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/).
        - `billToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `billToContactId` string — The contact id of the bill to contact that the subscription is being transferred to. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `clearingExistingBillToContact` boolean — Whether to clear the existing bill-to contact ID at the subscription level. This field is mutually exclusive with the `billToContactId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingInvoiceGroupNumber` boolean — Whether to clear the existing invoice group number at the subscription level. This field is mutually exclusive with the `invoiceGroupNumber` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingInvoiceTemplate` boolean — Whether to clear the existing invoice template ID at the subscription level. This field is mutually exclusive with the `invoiceTemplateId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingPaymentTerm` boolean — Whether to clear the existing payment term at the subscription level. This field is mutually exclusive with the `paymentTerm` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingSequenceSet` boolean — Whether to clear the existing sequence set ID at the subscription level. This field is mutually exclusive with the `sequenceSetId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingShipToContact` boolean — Whether to clear the existing ship-to contact ID at the subscription level. This field is mutually exclusive with the `shipToContactId` field. **Note:** To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `clearingExistingSoldToContact` boolean — Whether to clear the existing sold-to contact ID at the subscription level. This field is mutually exclusive with the `soldToContactId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `destinationAccountNumber` string — The account number of the account that the subscription is being transferred to.
        - `destinationInvoiceAccountNumber` string — The account number of the invoice owner account that the subscription is being transferred to.
        - `invoiceGroupNumber` string, nullable — The number of the invoice group associated with the subscription. After enabling the Invoice Grouping feature, you can specify invoice group numbers to bill subscriptions and order line items based on specific criteria. For the same account, Zuora generates separate invoices for subscriptions and order line items, each identified by unique invoice group numbers. For more information, see [Invoice Grouping](https://docs.zuora.com?resourceId=billing-invoice-grouping). **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `invoiceTemplateId` string — The ID of the invoice template associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Template from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `paymentProfile` object — Container for payment gateway and payment method details of a payment. If you do not set this field, the payment method and payment gateway values cannot be set in the subscription. **Note:** - If multiple order actions are specified, they will be applied in the same order they appear in the API payload. - If one or more of these order actions include the `paymentProfile` element, the changes will be applied in sequence, and the result will be consistent with the last `paymentProfile` element.
          - `paymentGatewayId` string — The ID of the gateway instance that processes the payment. This field remains unset, if you do not provide value.
          - `paymentMethodId` string — The ID of the payment method. This field remains unset, if you do not provide value.
        - `paymentTerm` string — Name of the payment term associated with the account. For example, "Net 30". The payment term determines the due dates of invoices. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Term from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `sequenceSetId` string, nullable — The ID of the sequence set associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Set from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `shipToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `shipToContactId` string — The ID of the ship-to contact associated with the subscription. **Note**: To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `soldToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `soldToContactId` string — The ID of the sold-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
      - `removeProduct` RemoveProduct — Information about an order action of type `RemoveProduct`.
        - `externalCatalogPlanId` string — An external ID of the rate plan to be removed. You can use this field to specify an existing rate plan in your subscription. The value of the `externalCatalogPlanId` field must match one of the values that are predefined in the `externallyManagedPlanIds` field on a product rate plan. However, if there are multiple rate plans with the same `productRatePlanId` value existing in the subscription, you must use the `ratePlanId` field to remove the rate plan. The `externalCatalogPlanId` field cannot be used to distinguish multiple rate plans in this case. **Note:** If both `externalCatalogPlanId` and `ratePlanId` are provided. They must point to the same product rate plan. Otherwise, the request would fail.
        - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
        - `ratePlanId` string — ID of the rate plan to remove. This can be the latest version or any history version of ID.
        - `subscriptionRatePlanNumber` string — Number of a rate plan for this subscription.
        - `uniqueToken` string — Unique identifier for the rate plan. This identifier enables you to refer to the rate plan before the rate plan has an internal identifier in Zuora.
        - `customFields` object — Container for custom fields of a Rate Plan object.
        - `chargeUpdates` OrderActionRatePlanChargeRemove[]
          - `chargeNumber` string — Read only. Identifies the charge to be updated.
          - `productRatePlanChargeId` string — Identifier of the rate plan that was updated.
          - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
          - `uniqueToken` string — A unique string to represent the rate plan charge in the order. The unique token is used to perform multiple actions against a newly added rate plan. For example, if you want to add and update a product in the same order, you would assign a unique token to the product rate plan when added and use that token in future order actions.
          - `customFields` object — Container for custom fields of a Rate Plan Charge object.
      - `renewSubscription` RenewSubscription — Information about an order action of type `RenewSubscription`.
        - `billToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `billToContactId` string — The ID of the bill-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `clearingExistingBillToContact` boolean — Whether to clear the existing bill-to contact ID at the subscription level. This field is mutually exclusive with the `billToContactId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingInvoiceGroupNumber` boolean — Whether to clear the existing invoice group number at the subscription level. This field is mutually exclusive with the `invoiceGroupNumber` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingInvoiceTemplate` boolean — Whether to clear the existing invoice template ID at the subscription level. This field is mutually exclusive with the `invoiceTemplateId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingPaymentTerm` boolean — Whether to clear the existing payment term at the subscription level. This field is mutually exclusive with the `paymentTerm` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingSequenceSet` boolean — Whether to clear the existing sequence set ID at the subscription level. This field is mutually exclusive with the `sequenceSetId` field. **Note**: If you have the [Flexible Billing Attributes](https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes) feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingShipToContact` boolean — Whether to clear the existing ship-to contact ID at the subscription level. This field is mutually exclusive with the `shipToContactId` field. **Note:** To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `clearingExistingSoldToContact` boolean — Whether to clear the existing sold-to contact ID at the subscription level. This field is mutually exclusive with the `soldToContactId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `invoiceGroupNumber` string, nullable — The number of the invoice group associated with the subscription. After enabling the Invoice Grouping feature, you can specify invoice group numbers to bill subscriptions and order line items based on specific criteria. For the same account, Zuora generates separate invoices for subscriptions and order line items, each identified by unique invoice group numbers. For more information, see [Invoice Grouping](https://docs.zuora.com?resourceId=billing-invoice-grouping). **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a>feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `invoiceTemplateId` string, nullable — The ID of the invoice template associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Template from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `paymentTerm` string — The name of the payment term associated with the subscription. For example, `Net 30`. The payment term determines the due dates of invoices. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Term from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body..
        - `sequenceSetId` string, nullable — The ID of the sequence set associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Set from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `shipToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `shipToContactId` string — The ID of the ship-to contact associated with the subscription. **Note:** To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `soldToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `soldToContactId` string — The ID of the sold-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
      - `resume` CreateOrderResume — Information about an order action of type `Resume`.
        - `extendsTerm` boolean — Specifies whether to extend the subscription term by the length of time the suspension is in effect.
        - `resumePeriods` integer — This field is applicable only when the `resumePolicy` field is set to `FixedPeriodsFromToday` or `FixedPeriodsFromSuspendDate`. It must be used together with the `resumePeriodsType` field. The total number of the periods used to specify when a subscription resumption takes effect. The subscription resumption will take place after the specified time frame (`suspendPeriods` multiplied by `suspendPeriodsType`) from today's date.
        - `resumePeriodsType` 'Day' | 'Week' | 'Month' | 'Year' — This field is applicable only when the `resumePolicy` field is set to `FixedPeriodsFromToday` or `FixedPeriodsFromSuspendDate`. It must be used together with the `resumePeriods` field. The period type used to specify when a subscription resumption takes effect. The subscription suspension will take place after the specified time frame (`suspendPeriods` multiplied by `suspendPeriodsType`) from today's date.
        - `resumePolicy` 'Today' | 'FixedPeriodsFromSuspendDate' | 'FixedPeriodsFromToday' | 'SpecificDate' | 'SuspendDate', required — Resume methods. Specify a way to resume a subscription. See [Resume Date](https://docs.zuora.com?resourceId=billing-subscriptions-resumption) for more information. If `SuspendDate` is specfied, the resumption will take place on the same day as the suspension.
        - `resumeSpecificDate` string, date — This field is applicable only when the `resumePolicy` field is set to `SpecificDate`. A specific date when the subscription resumption takes effect, in YYYY-MM-DD format. The value should not be earlier than the subscription suspension date.
      - `suspend` CreateOrderSuspend — Information about an order action of type `Suspend`.
        - `suspendPeriods` integer — This field is applicable only when the `suspendPolicy` field is set to `FixedPeriodsFromToday`. It must be used together with the `suspendPeriodsType` field. The total number of the periods used to specify when a subscription suspension takes effect. The subscription suspension will take place after the specified time frame (`suspendPeriods` multiplied by `suspendPeriodsType`) from today's date.
        - `suspendPeriodsType` 'Day' | 'Week' | 'Month' | 'Year' — This field is applicable only when the `suspendPolicy` field is set to `FixedPeriodsFromToday`. It must be used together with the `suspendPeriods` field. The period type used to specify when a subscription suspension takes effect. The subscription suspension will take place after the specified time frame (`suspendPeriods` multiplied by `suspendPeriodsType`) from today's date.
        - `suspendPolicy` 'Today' | 'EndOfLastInvoicePeriod' | 'FixedPeriodsFromToday' | 'SpecificDate', required — Suspend methods. Specify a way to suspend a subscription. See [Suspend Date](https://docs.zuora.com?resourceId=billing-considerations-of-suspend-a-subscription) for more information.
        - `suspendSpecificDate` string, date — This field is applicable only when the `suspendPolicy` field is set to `SpecificDate`. A specific date when the subscription suspension takes effect, in YYYY-MM-DD format. The value should not be earlier than the subscription's contract effective date or later [available versions](https://developer.zuora.com/api-references/api/overview/#section/API-Versions/Minor-Version) than the subscription's term end date.
      - `termsAndConditions` CreateOrderTermsAndConditions — Information about an order action of type `TermsAndConditions`.
        - `autoRenew` boolean
        - `billToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `billToContactId` string — The ID of the bill-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `clearingExistingBillToContact` boolean — Whether to clear the existing bill-to contact ID at the subscription level. This field is mutually exclusive with the `billToContactId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingInvoiceGroupNumber` boolean — Whether to clear the existing invoice group number at the subscription level. This field is mutually exclusive with the `invoiceGroupNumber` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingInvoiceTemplate` boolean — Whether to clear the existing invoice template ID at the subscription level. This field is mutually exclusive with the `invoiceTemplateId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingPaymentTerm` boolean — Whether to clear the existing payment term at the subscription level. This field is mutually exclusive with the `paymentTerm` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingSequenceSet` boolean — Whether to clear the existing sequence set ID at the subscription level. This field is mutually exclusive with the `sequenceSetId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `clearingExistingShipToContact` boolean — Whether to clear the existing ship-to contact ID at the subscription level. This field is mutually exclusive with the `shipToContactId` field. **Note**: To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `clearingExistingSoldToContact` boolean — Whether to clear the existing sold-to contact ID at the subscription level. This field is mutually exclusive with the `soldToContactId` field. **Note**: If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body.
        - `communicationProfileId` string — The ID of the communication profile associated with the subscription. **Note**: This field is available in the request body only if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature turned on. The value is `null` in the response body without this feature turned on.
        - `clearingExistingCommunicationProfile` boolean — Whether to clear the existing communication profile at the subscription level. This field is mutually exclusive with the `communicationProfileId` field.
        - `invoiceGroupNumber` string, nullable — The number of the invoice group associated with the subscription. After enabling the Invoice Grouping feature, you can specify invoice group numbers to bill subscriptions and order line items based on specific criteria. For the same account, Zuora generates separate invoices for subscriptions and order line items, each identified by unique invoice group numbers. For more information, see [Invoice Grouping](https://docs.zuora.com?resourceId=billing-invoice-grouping). **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `invoiceSeparately` boolean — Specifies whether the subscription appears on a separate invoice while generating invoices.
        - `invoiceTemplateId` string — The ID of the invoice template associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Template from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `lastTerm` LastTerm — The length of the period for the current subscription term.
          - `period` integer — Specify only when the termType is 'TERMED'.
          - `periodType` 'Month' | 'Year' | 'Day' | 'Week' — Specify only when the termType is 'TERMED'.
          - `startDate` string, date — The start date of the current term. You can change the term start date of a renewed subscription through a T&Cs order action. However, when changing it to an earlier date, this date must not be earlier than the term start date of the current term before this T&Cs.
          - `endDate` string, date — The end date of the current term, in YYYY-MM-DD format.
          - `termType` 'TERMED' | 'EVERGREEN', required
        - `paymentProfile` object — Container for payment gateway and payment method details of a payment. If you do not set this field, the payment method and payment gateway values cannot be set in the subscription. **Note:** - If multiple order actions are specified, they will be applied in the same order they appear in the API payload. - If one or more of these order actions include the `paymentProfile` element, the changes will be applied in sequence, and the result will be consistent with the last `paymentProfile` element.
          - `paymentGatewayId` string — The ID of the gateway instance that processes the payment. This field remains unset, if you do not provide value.
          - `paymentMethodId` string — The ID of the payment method. This field remains unset, if you do not provide value.
        - `paymentTerm` string — The name of the payment term associated with the subscription. For example, `Net 30`. The payment term determines the due dates of invoices. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Term from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `renewalSetting` 'RENEW_WITH_SPECIFIC_TERM' | 'RENEW_TO_EVERGREEN'
        - `renewalTerms` RenewalTerm[]
          - `period` integer — Duration of the renewal term in months, years, days, or weeks, depending on the value of the `periodType` field.
          - `periodType` 'Month' | 'Year' | 'Day' | 'Week' — Unit of time that the renewal term is measured in.
        - `scheduledCancelDate` string, date — The date when the subscription is scheduled to be canceled. The subscription is not canceled until the date specified in this field.
        - `scheduledSuspendDate` string, date — The date when the subscription is scheduled to be suspended. The subscription is not suspended until the date specified in this field.
        - `scheduledResumeDate` string, date — The date when the subscription is scheduled to be resumed. The subscription is not resumed until the date specified in this field.
        - `clearingScheduledCancelDate` boolean — Whether to clear the value of the `scheduledCancelDate` field. **Note**: Do not set this field and the `scheduledCancelDate` field simultaneously.
        - `clearingScheduledSuspendDate` boolean — Whether to clear the value of the `scheduledSuspendDate` field. **Note**: Do not set this field and the `scheduledSuspendDate` field simultaneously.
        - `clearingScheduledResumeDate` boolean — Whether to clear the value of the `scheduledResumeDate` field. **Note**: Do not set this field and the `scheduledResumeDate` field simultaneously.
        - `sequenceSetId` string — The ID of the sequence set associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Set from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
        - `shipToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `shipToContactId` string — The ID of the ship-to contact associated with the subscription. **Note**: To access this field, you must have the <b>ShipToContactSupport</b> permission. If you want to enable this permission, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `soldToContact` CreateAccountContact — Container for bill-to/sold-to/ship-to contact information for this account.
          - `address1` string — First address line, 255 characters or less.
          - `address2` string — Second address line, 255 characters or less.
          - `city` string — City, 100 characters or less.
          - `country` string — Country; must be a valid country name or abbreviation. If using Zuora Tax, you must specify a country in the sold-to contact to calculate tax. A bill-to contact may be used if no sold-to contact is provided.
          - `county` string — County; 100 characters or less. May optionally be used by Zuora Tax to calculate county tax.
          - `fax` string — Fax phone number, 40 characters or less.
          - `firstName` string, required — First name, 100 characters or less.
          - `homePhone` string — Home phone number, 40 characters or less.
          - `lastName` string, required — Last name, 100 characters or less.
          - `mobilePhone` string — Mobile phone number, 40 characters or less.
          - `nickname` string — Nickname for this contact
          - `otherPhone` string — Other phone number, 40 characters or less.
          - `otherPhoneType` 'Work' | 'Mobile' | 'Home' | 'Other' — Specifies the type of phone number.
          - `personalEmail` string, email — Personal email address, 80 characters or less.
          - `postalCode` string — Postal code, 20 characters or less.
          - `state` string — State; must be a valid state or province name or 2-character abbreviation. If using Zuora Tax, be aware that Zuora Tax requires a state (in the US) or province (in Canada) in this field for the sold-to contact to calculate tax, and that a bill-to contact may be used if no sold-to contact is provided.
          - `taxRegion` string — If using Zuora Tax, a region string as optionally defined in your tax rules. Not required.
          - `workEmail` string, email — Work email address, 80 characters or less.
          - `workPhone` string — Work phone number, 40 characters or less.
          - `contactDescription` string — A description for the contact.
        - `soldToContactId` string — The ID of the sold-to contact associated with the subscription. **Note**: - If you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/flexible-billing/flexible-billing-attributes/overview-of-flexible-billing-attributes" target="_blank">Flexible Billing Attributes</a> feature disabled, this field is unavailable in the request body and the value of this field is `null` in the response body. - If you have the Flexible Billing Attributes feature enabled, and you do not specify this field in the request or you select **Default Contact from Account** for this field during subscription creation, the value of this field is automatically set to `null` in the response body.
      - `triggerDates` TriggerDate[] — Container for the contract effective, service activation, and customer acceptance dates of the order action. If [Zuora is configured to require service activation](https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings) and the `ServiceActivation` field is not set for a `CreateSubscription` order action, a `Pending` order and a `Pending Activation` subscription are created. If [Zuora is configured to require customer acceptance](https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings) and the `CustomerAcceptance` field is not set for a `CreateSubscription` order action, a `Pending` order and a `Pending Acceptance` subscription are created. At the same time, if the service activation date field is also required and not set, a `Pending` order and a `Pending Activation` subscription are created instead. If [Zuora is configured to require service activation](https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings) and the `ServiceActivation` field is not set for either of the following order actions, a `Pending` order is created. The subscription status is not impacted. **Note:** This feature is in **Limited Availability**. If you want to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). * AddProduct * UpdateProduct * RemoveProduct * RenewSubscription * TermsAndConditions If [Zuora is configured to require customer acceptance](https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings) and the `CustomerAcceptance` field is not set for either of the following order actions, a `Pending` order is created. The subscription status is not impacted. **Note:** This feature is in **Limited Availability**. If you want to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). * AddProduct * UpdateProduct * RemoveProduct * RenewSubscription * TermsAndConditions
        - `name` 'ContractEffective' | 'ServiceActivation' | 'CustomerAcceptance' — Name of the trigger date of the order action.
        - `triggerDate` string, date — Trigger date in YYYY-MM-DD format.
      - `type` 'CreateSubscription' | 'TermsAndConditions' | 'AddProduct' | 'UpdateProduct' | 'RemoveProduct' | 'RenewSubscription' | 'CancelSubscription' | 'OwnerTransfer' | 'Suspend' | 'Resume' | 'ChangePlan', required — Type of order action. Unless the type of order action is `RenewSubscription`, you must use the corresponding field to provide information about the order action. For example, if the type of order action is `AddProduct`, you must set the `addProduct` field. Zuora returns an error if you set a field that corresponds to a different type of order action. For example, if the type of order action is `AddProduct`, Zuora returns an error if you set the `updateProduct` field. A [pending order](https://docs.zuora.com?resourceId=billing-pending-subscriptions-or-orders) supports the following order actions: * CreateSubscription * AddProduct * UpdateProduct * RemoveProduct * RenewSubscription * TermsAndConditions * ChangePlan However, pending orders created through all order actions except for "Create new subscription": * Do not impact the subscription status. * Are in **Limited Availability**. If you want to have access to the feature, submit a request at [Zuora Global Support](https://support.zuora.com). A pending order is created in either of the following conditions: * [Zuora is configured to require service activation](https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings) and the service activation date is not set in your "Create an order" call. * [Zuora is configured to require customer acceptance](https://docs.zuora.com?resourceId=billing-default-subscription-and-order-settings) and the customer acceptance date is not set in your "Create an order" call. * When a charge in the subscription has its `triggerEvent` field set as `SpecificDate` and the `specificTriggerDate` field is not set in your "Create an order" API call. **Note**: The change plan type of order action is supported for the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature. However, it is currently not supported for the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> feature. When Billing - Revenue Integration is enabled, the change plan type of order action will no longer be applicable in Zuora Billing.
      - `updateProduct` CreateOrderRatePlanUpdate — Information about an order action of type `UpdateProduct`.
        - `chargeUpdates` CreateOrderChargeUpdate[] — Array of the JSON objects containing the information for a charge update in the `updateProduct` type of order action.
          - `billing` BillingUpdate
            - `billingPeriodAlignment` 'AlignToCharge' | 'AlignToSubscriptionStart' | 'AlignToTermStart', nullable — **Note**: This field is not supported in one time charges.
          - `chargeNumber` string — The number of the charge to be updated. The value of this field is inherited from the `subscriptions` > `orderActions` > `addProduct` > `chargeOverrides` > `chargeNumber` field.
          - `estimatedStartDate` string, date — The estimated start date of the pending charge in an active subscription. The value of this field must be a date within the subscription term. The system will then automatically calculate the estimated end date for the pending charge. The estimated start and end dates are used to manage the estimated charge duration and forecast the revenue for the pending charge. **Note:** This field is available only when the Pending Subscription Processing feature is turned on.
          - `negotiatedPriceTable` NegotiatedItems[] — Array of negotiated price table information. The rate card entries provided in the array will override the existing rate card entries in the standard price table to form a negotiated price table that will be used during pricing evaluation. **Note:** To enable the Negotiated Price Table feature, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `items` object — The rate card entry object. **Note:** For more information, refer to the rate card definition in the product catalog.
          - `pricingAttributes` unknown
          - `productRatePlanChargeId` string — ID of a product rate plan charge for this subscription. When `isAddingSubsetCharges` is set to true, the product rate charge specified by `productRatePlanChargeId` is added to the existing rate plan specified by `ratePlanId`.
          - `productRatePlanChargeNumber` string — Number of a product rate plan charge for this subscription. When `isAddingSubsetCharges` is set to true, the product rate charge specified by `productRatePlanChargeNumber` is added to the existing rate plan specified by `ratePlanId`.
          - `customFields` RatePlanChargeObjectCustomFields — Container for custom fields of a Rate Plan Charge object.
          - `description` string
          - `effectiveDate` CreateOrderUpdateProductTriggerParams — Specifies when a charge becomes active.
            - `specificTriggerDate` string, date — Date in YYYY-MM-DD format. Only applicable if the value of the `triggerEvent` field is `SpecificDate`. While this field is applicable, if this field is not set, your `CreateSubscription` order action creates a `Pending` order and a `Pending Acceptance` subscription. If at the same time the service activation date is required and not set, a `Pending Activation` subscription is created. While this field is applicable, if this field is not set, the following order actions create a `Pending` order but do not impact the subscription status. **Note**: This feature is in **Limited Availability**. If you want to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). * AddProduct * UpdateProduct * RemoveProduct * RenewSubscription * TermsAndConditions While this field is applicable, for the `updateProduct` order action, if the Pending order feature as above is not enabled, this field must not be set to null.
            - `triggerEvent` 'ContractEffective' | 'ServiceActivation' | 'CustomerAcceptance' | 'SpecificDate' — Condition for the charge to become active. If this field is not specified, the value of the field will be defaulted to the trigger event value defined in the product catalog. If the value of this field is `SpecificDate`, use the `specificTriggerDate` field to specify the date when the charge becomes active.
          - `prepaidQuantity` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The number of units included in a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover). Must be a positive number (>0).
          - `pricing` CreateOrderPricingUpdate
            - `chargeModelData` ChargeModelDataOverride — Container for charge model configuration data. **Note**: This field is only available if you have the High Water Mark, Pre-Rated Pricing, or Multi-Attribute Pricing charge models enabled. The High Water Mark and Pre-Rated Pricing charge models are available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://docs.zuora.com/en/entitlements/current-entitlements/zuora-editions) for pricing information.
              - …
            - `discount` DiscountPricingUpdate
              - …
            - `recurringCalculated` RecurringCalculatedPricingUpdate — Pricing information about a recurring charge that uses the "calculated" charge model.
              - …
            - `recurringDeliveryBased` RecurringDeliveryPricingUpdate
              - …
            - `recurringFlatFee` RecurringFlatFeePricingUpdate
              - …
            - `recurringPerUnit` RecurringPerUnitPricingUpdate
              - …
            - `recurringTiered` RecurringTieredPricingUpdate
              - …
            - `recurringVolume` RecurringVolumePricingUpdate
              - …
            - `usageFlatFee` UsageFlatFeePricingUpdate
              - …
            - `usageOverage` UsageOveragePricingUpdate
              - …
            - `usagePerUnit` UsagePerUnitPricingUpdate
              - …
            - `usageTiered` UsageTieredPricingUpdate
              - …
            - `usageTieredWithOverage` UsageTieredWithOveragePricingUpdate
              - …
            - `usageVolume` UsageVolumePricingUpdate
              - …
          - `uniqueToken` string — A unique string to represent the rate plan charge in the order. The unique token is used to perform multiple actions against a newly added rate plan charge. For example, if you want to add and update a product in the same order, assign a unique token to the newly added rate plan charge and use that token in future order actions.
        - `chargeOverrides` ChargeOverride[] — This section is only available for hard bundle rate plans. To include additional charges to the subscribed hard bundle, specify the product rate plan charge ID and its attributes. **Note:** This field is only available when the **Hard Bundle** feature is enabled. The **Hard Bundle** feature is in the **Early Availability** phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early availability program, submit a request at <a href="https://support.zuora.com" target="_blank">Zuora Global Support</a>.
          - `accountReceivableAccountingCode` string — The accountReceivableAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a>, <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a>, and <a href="https://docs.zuora.com?resourceId=billing-invoice-settlement" target="_blank">Invoice Settlement</a> features are enabled.
          - `adjustmentLiabilityAccountingCode` string — The adjustmentLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `adjustmentRevenueAccountingCode` string — The adjustmentRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `billing` object — Billing information about the charge.
            - `billCycleDay` integer — Day of the month that each billing period begins on. Only applicable if the value of the `billCycleType` field is `SpecificDayofMonth`.
            - `billCycleType` 'DefaultFromCustomer' | 'SpecificDayofMonth' | 'SubscriptionStartDay' | 'ChargeTriggerDay' | 'SpecificDayofWeek' | 'TermStartDay' | 'TermEndDay', nullable — Specifies how Zuora determines the day that each billing period begins on. * `DefaultFromCustomer` - Each billing period begins on the bill cycle day of the account that owns the subscription. * `SpecificDayofMonth` - Use the `billCycleDay` field to specify the day of the month that each billing period begins on. * `SubscriptionStartDay` - Each billing period begins on the same day of the month as the start date of the subscription. * `ChargeTriggerDay` - Each billing period begins on the same day of the month as the date when the charge becomes active. * `SpecificDayofWeek` - Use the `weeklyBillCycleDay` field to specify the day of the week that each billing period begins on. * `TermStartDay` - The start day of the term. * `TermEndDay` - The End day of the term.
            - `billingPeriod` 'Month' | 'Quarter' | 'Semi_Annual' | 'Annual' | 'Eighteen_Months' | 'Two_Years' | 'Three_Years' | 'Five_Years' | 'Specific_Months' | 'Subscription_Term' | 'Week' | 'Specific_Weeks' | 'Specific_Days', nullable — Billing frequency of the charge. The value of this field controls the duration of each billing period. If the value of this field is `Specific_Days`, `Specific_Months` or `Specific_Weeks`, use the `specificBillingPeriod` field to specify the duration of each billing period.
            - `billingPeriodAlignment` 'AlignToCharge' | 'AlignToSubscriptionStart' | 'AlignToTermStart' | 'AlignToTermEnd', nullable — Specifies how Zuora determines when to start new billing periods. You can use this field to align the billing periods of different charges. * `AlignToCharge` - Zuora starts a new billing period on the first billing day that falls on or after the date when the charge becomes active. * `AlignToSubscriptionStart` - Zuora starts a new billing period on the first billing day that falls on or after the start date of the subscription. * `AlignToTermStart` - For each term of the subscription, Zuora starts a new billing period on the first billing day that falls on or after the start date of the term. * `AlignToTermEnd` - This field is available only for prepayment charges by default. To enable this value for non-prepaid recurring charges, contact <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>. See the `billCycleType` field for information about how Zuora determines the billing day. **Note**: This field is not supported in one time charges.
            - `billingTiming` 'IN_ADVANCE' | 'IN_ARREARS', nullable — Specifies whether to invoice for a billing period on the first day of the billing period (billing in advance) or the first day of the next billing period (billing in arrears). This field is only used if the `ratePlanChargeType` value is `Recurring`.
            - `specificBillingPeriod` integer, nullable — Duration of each billing period in months or weeks, depending on the value of the `billingPeriod` field. Only applicable if the value of the `billingPeriod` field is `Specific_Months` or `Specific_Weeks`.
            - `weeklyBillCycleDay` 'Sunday' | 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday', nullable — Day of the week that each billing period begins on. Only applicable if the value of the `billCycleType` field is `SpecificDayofWeek`.
          - `chargeFunction` 'Standard' | 'Prepayment' | 'CommitmentTrueUp' | 'Drawdown' | 'CreditCommitment' | 'DrawdownAndCreditCommitment' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines what type of charge it is: * Standard: Normal charge with no Prepayment or Commitment or Drawdown. * Prepayment: For recurring charges. Unit or currency based prepaid charge. * CommitmentTrueUp: For recurring charges. Currency based minimum commitment charge. * Drawdown: For usage charges. Drawdown from prepaid funds. * DrawdownAndCreditCommitment: For usage charges. Drawdown from prepaid funds and then credit to minimum commitment funds. * CreditCommitment: For usage charges. Credit to minimum commitment funds.
          - `creditOption` 'TimeBased' | 'ConsumptionBased' | 'FullCreditBack' — **Note**: This field is only available if you have both the <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> features enabled. With this field, you can use a standalone order to subscribe to a minimum commitment subscription. This field defines the way to calculate credit. See [Credit Option](https://docs.zuora.com?resourceId=billing-prepayment-charge) for more information.
          - `chargeModel` 'FlatFee' | 'PerUnit' | 'Volume' | 'Tiered' | 'TieredWithOverage' | 'DiscountFixedAmount' | 'DiscountPercentage' | 'MultiAttributePricing' | 'PreratedPerUnit' | 'PreratedPricing' | 'HighWatermarkVolumePricing' | 'HighWatermarkTieredPricing' | 'Delivery' | 'Calculated' — The chargeModel of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `chargeNumber` string — Charge number of the charge. For example, C-00000307. * If you do not set this field, Zuora will generate a charge number starting with a default prefix, for example, C-. This default prefix is predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. * If you want to use a custom charge number, do not use the default prefix predefined in **Billing Settings** > **Define Default Subscription and Order Settings**. Use your own prefix, for example, SC-.
          - `chargeType` 'OneTime' | 'Recurring' | 'Usage' | 'Others' — The chargeType of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `contractAssetAccountingCode` string — The contractAssetAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `contractLiabilityAccountingCode` string — The contractLiabilityAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `contractRecognizedRevenueAccountingCode` string — The contractRecognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `customFields` RatePlanChargeObjectCustomFields — Container for custom fields of a Rate Plan Charge object.
          - `deferredRevenueAccountingCode` string — The deferredRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
          - `description` string, nullable — Description of the charge.
          - `drawdownPriority` integer — Drawdown priority for consumption ordering. Lower value means that it will be consumed first. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `drawdownRate` number — **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. The [conversion rate](https://docs.zuora.com?resourceId=billing-create-drawdown-charge) between Usage UOM and Drawdown UOM for a [drawdown charge](https://docs.zuora.com?resourceId=billing-create-drawdown-charge). Must be a positive number (>0).
          - `drawdownScope` 'SUBSCRIPTION' | 'ACCOUNT' — The scope in which the funds are applicable for the usage drawdown charges during drawdown. Valid for the charge with function of `Prepayment`. - `SUBSCRIPTION` - only usage charges of the same subscription can be drawn down. - `ACCOUNT` - only usage charges in the same account (subscription owner) can be drawn down. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `endDate` EndConditions — Specifies when a charge becomes inactive.
            - `endDateCondition` 'Subscription_End' | 'Fixed_Period' | 'Specific_End_Date' | 'One_Time', nullable — Condition for the charge to become inactive. - If the value of this field is `Fixed_Period`, the charge is active for a predefined duration based on the value of the `upToPeriodsType` and `upToPeriods` fields. - If the value of this field is `Specific_End_Date`, use the `specificEndDate` field to specify the date when the charge becomes inactive.
            - `endDatePolicy` 'AlignToApplyToCharge' | 'SpecificEndDate' | 'FixedPeriod' — End date policy of the discount charge to become active when the **Apply to billing period partially** checkbox is selected from the product catalog UI or the `applyToBillingPeriodPartially` field is set as true from the "CRUD: Create a product rate plan charge" operation. - If the value of this field is `FixedPeriod`, the charge is active for a predefined duration based on the value of the `upToPeriodsType` and `upToPeriods` fields. - If the value of this field is `SpecificEndDate`, use the `specificEndDate` field to specify the date when the charge becomes inactive. **Notes**: - You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field. - You can use either `endDateCondition` or `endDatePolicy` to define when a discount charge ends, but not both at the same time.
            - `specificEndDate` string, date, nullable — Date in YYYY-MM-DD format. Only applicable if the value of the `endDateCondition` field is `Specific_End_Date`.
            - `upToPeriods` integer, nullable — Duration of the charge in billing periods, days, weeks, months, or years, depending on the value of the `upToPeriodsType` field. Only applicable if the value of the `endDateCondition` field is `Fixed_Period`.
            - `upToPeriodsType` 'Billing_Periods' | 'Days' | 'Weeks' | 'Months' | 'Years', nullable — Unit of time that the charge duration is measured in. Only applicable if the value of the `endDateCondition` field is `Fixed_Period`.
          - `estimatedStartDate` string, date — The estimated start date of the pending charge in an active subscription. If you specify `SpecificDate` in the `startDate` > `triggerEvent` field and want to create a completed order and an active subscription, you must specify either the `estimatedStartDate` or `startDate` > `specificTriggerDate` field: - `estimatedStartDate`: The charge will be in pending status. - `specificTriggerDate`: The charge will be in active status. The value of this field must be a date within the subscription term. The system will then automatically calculate the estimated end date for the pending charge. The estimated start and end dates are used to manage the estimated charge duration and forecast the revenue for the pending charge. **Note:** This field is available only when the Pending Subscription Processing feature is turned on.
          - `excludeItemBillingFromRevenueAccounting` boolean — The flag to exclude rate plan charge related invoice items, invoice item adjustments, credit memo items, and debit memo items from revenue accounting. If both the following features are enabled in your tenant, you must ensure the `excludeItemBillingFromRevenueAccounting` field is set consistently for a prepayment charge and the corresponding drawdown charge. In addition, if the `excludeItemBookingFromRevenueAccounting` field in an Create Subscription or Add Product order action is set to `false`, you must also set the `excludeItemBillingFromRevenueAccounting` field in this order action to `false`. * Prepaid with Drawdown * Unbilled Usage **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
          - `excludeItemBookingFromRevenueAccounting` boolean — The flag to exclude rate plan charges from revenue accounting. If both the following features are enabled in your tenant, you must ensure the `excludeItemBookingFromRevenueAccounting` field is set consistently for a prepayment charge and the corresponding drawdown charge. * Prepaid with Drawdown * Unbilled Usage **Note**: This field is only available if you have the <a href="https://docs.zuora.com?resourceId=billing-order-to-revenue" target="_blank">Order to Revenue</a> or [Zuora Billing - Revenue Integration](https://docs.zuora.com?resourceId=revenue-billing-integration) feature enabled.
          - `fundSupportAccountHierarchy` boolean — Indicates whether to enable sub-account's usage to drawdown from the parent's funds. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `isAllocationEligible` boolean — This field is used to identify if the charge segment is allocation eligible in revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `isRollover` boolean — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The value is either "True" or "False". It determines whether the rollover fields are needed.
          - `isUnbilled` boolean — This field is used to dictate how to perform the accounting during revenue recognition. **Note**: The field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature enabled. To enable this field, submit a request at <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `name` string — The name of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `negotiatedPriceTable` NegotiatedItems[] — Array of negotiated price table rate card entries in the order request. **Note:** To enable the Negotiated Price Table feature, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
            - `items` object — The rate card entry object. **Note:** For more information, refer to the rate card definition in the product catalog.
          - `pobPolicy` string — The pobPolicy of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `prepaidQuantity` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) feature enabled. The number of units included in a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover). Must be a positive number (>0).
          - `prepaymentUnitType` 'UNIT' | 'CURRENCY' — The unit type of the prepayment charge. For topup (recurring/one-time) charges, this field indicates what type of funds are created. For drawdown (usage) charges, this field indicates what type of funds are drawn down from those created by topup charges. - If the prepaid charge is `UNIT`, it will create a fund with given prepaidUom. - If the prepaid charge is `CURRENCY`, it will create a fund with the currency amount calculated in list price. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `pricing` object — Pricing information about the charge.
            - `chargeModelData` ChargeModelDataOverride — Container for charge model configuration data. **Note**: This field is only available if you have the High Water Mark, Pre-Rated Pricing, or Multi-Attribute Pricing charge models enabled. The High Water Mark and Pre-Rated Pricing charge models are available for customers with Enterprise and Nine editions by default. If you are a Growth customer, see [Zuora Editions](https://docs.zuora.com/en/entitlements/current-entitlements/zuora-editions) for pricing information.
              - …
            - `discount` DiscountPricingOverride — Pricing information about a discount charge.
              - …
            - `oneTimeFlatFee` OneTimeFlatFeePricingOverride — Pricing information about a one-time charge that uses the "flat fee" charge model. In this charge model, the charge has a fixed price.
              - …
            - `oneTimePerUnit` OneTimePerUnitPricingOverride — Pricing information about a one-time charge that uses the "per unit" charge model. In this charge model, the charge has a fixed price per unit purchased.
              - …
            - `oneTimeTiered` OneTimeTieredPricingOverride — Pricing information about a one-time charge that uses the "tiered pricing" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are purchased.
              - …
            - `oneTimeVolume` OneTimeVolumePricingOverride — Pricing information about a one-time charge that uses the "volume pricing" charge model. In this charge model, the charge has a variable price per unit, depending on how many units are purchased.
              - …
            - `recurringCalculated` RecurringCalculatedPricingOverrideGetOrder — Pricing information about a recurring charge that uses the "calculated" charge model.
              - …
            - `recurringDelivery` RecurringDeliveryPricingOverride — Pricing information about a recurring charge that uses the Delivery Pricing charge model. In this charge model, the charge has a fixed price. This field is only available if you have the Delivery Pricing charge model enabled.
              - …
            - `recurringFlatFee` RecurringFlatFeePricingOverride — Pricing information about a recurring charge that uses the "flat fee" charge model. In this charge model, the charge has a fixed price.
              - …
            - `recurringPerUnit` RecurringPerUnitPricingOverride — Pricing information about a recurring charge that uses the "per unit" charge model. In this charge model, the charge has a fixed price per unit purchased.
              - …
            - `recurringTiered` RecurringTieredPricingOverride — Pricing information about a recurring charge that uses the "tiered pricing" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are purchased.
              - …
            - `recurringVolume` RecurringVolumePricingOverride — Pricing information about a recurring charge that uses the "volume pricing" charge model. In this charge model, the charge has a variable price per unit, depending on how many units are purchased.
              - …
            - `usageFlatFee` UsageFlatFeePricingOverride — Pricing information about a usage charge that uses the "flat fee" charge model. In this charge model, the charge has a fixed price.
              - …
            - `usageOverage` UsageOveragePricingOverride — Pricing information about a usage charge that uses the "overage" charge model. In this charge model, the charge has an allowance of free units and a fixed price per additional unit consumed.
              - …
            - `usagePerUnit` UsagePerUnitPricingOverride — Pricing information about a usage charge that uses the "per unit" charge model. In this charge model, the charge has a fixed price per unit consumed.
              - …
            - `usageTiered` UsageTieredPricingOverride — Pricing information about a usage charge that uses the "tiered pricing" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are consumed.
              - …
            - `usageTieredWithOverage` UsageTieredWithOveragePricingOverride — Pricing information about a usage charge that uses the "tiered with overage" charge model. In this charge model, the charge has cumulative pricing tiers that become effective as units are consumed. The charge also has a fixed price per unit consumed beyond the limit of the final tier.
              - …
            - `usageVolume` UsageVolumePricingOverride — Pricing information about a usage charge that uses the "volume pricing" charge model. In this charge model, the charge has a variable price per unit, depending on how many units are consumed.
              - …
          - `pricingAttributes` object — Container for pricing attribute and value in the order request. **Note:** To enable Dynamic Pricing, submit a request to <a href="https://support.zuora.com/" target="_blank">Zuora Global Support</a>.
          - `productCategory` string — The productCategory of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productClass` string — The productClass of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productFamily` string — The productFamily of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productLine` string — The productLine of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature is enabled.
          - `productRatePlanChargeNumber` string — Number of a product rate-plan charge for this subscription.
          - `productRateplanChargeId` string, required — Internal identifier of the product rate plan charge that the charge is based on.
          - `prorationOption` 'NoProration' | 'TimeBasedProration' | 'DefaultFromTenantSetting' | 'ChargeFullPeriod' | 'CustomizeProrationOptionOverrides' — **Note**: This field is only available if you have the **Charge Level Proration** feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-usage-charge-proration" target="_blank">Usage charge proration</a> and <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. You can use this field to specify the charge-level proration option for a usage charge or recurring charge when you create or add a subscription rate plan charge through an order. The tenant-level proration option will be overridden. * `NoProration`: charge-level proration option that you can set for a usage charge. This option means to not use any proration, which is the default current system behavior for a usage charge. * `TimeBasedProration`: charge-level proration option that you can set for a usage charge. This option means to prorate the usage charge amount using the actual number of days if the billing period is a partial period. * `DefaultFromTenantSetting`: charge-level proration option that you can set for a recurring charge. This option means to follow the customer billing rule proration setting. * `ChargeFullPeriod`: charge-level proration option that you can set for a recurring charge. This options means to charge the full period amount for a partial billing period. Note that this setting means that there is no proration for either collecting or refunding. Even if you cancel the recurring charge in the middle of a billing period, there is no refund for this billing period. * `CustomizeProrationOptionOverrides`: charge-level proration option that you can set for a recurring charge. This option means to use the customized charge proration settings that is specified by the `ratingPropertiesOverride` field. When the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature is enabled, the possible options are: - DefaultFromTenantSetting - CustomizeProrationOptionOverrides. When `CustomizeProrationOptionOverrides` is selected, define the customization rules using these options in the `ratingPropertiesOverride` field.
          - `ratingPropertiesOverride` object — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. This field is used only when the value of the `prorationOption` field is set to `CustomizeProrationOptionOverrides`. Use this field to specify more customized proration options for a recurring charge when you creating or adding a subscription rate plan charge through an order. The tenant-level proration option will be overridden.
            - `isProratePartialMonth` boolean — Indicates whether to prorate the charge for the partial month. **Note**: This field is only available if you have the **Charge Level Proration** feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. Use this field to specify whether to prorate the recurring charge for a partial month. The tenant-level proration option will be overridden.
            - `prepaymentChargeProrationRule` 'ProrateAmount' | 'ChargeFullAmount' — Define whether to prorate the charge amount or not. When `ProrateAmount` is selected, define the proration rules via the options under this section. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
            - `prorationUnit` 'ProrateByDay' | 'ProrateByMonthFirst' — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. Use this field to specify the unit of proration for a recurring charge. The tenant-level proration option will be overridden.
            - `daysInMonth` 'UseActualDays' | 'Assume30Days' | 'Assume30DaysStrict' — **Note**: This field is only available if you have the Charge Level Proration feature enabled. For more information, see <a href="https://docs.zuora.com?resourceId=billing-charge-level-proration-option-for-a-recurring-charge" target="_blank">Charge level proration option for a recurring charge</a>. Use this field to specify the number of days counted for a month when prorating a recurring charge. The tenant-level proration option will be overridden. See more details for each of the following enum values in <a href="https://docs.zuora.com?resourceId=billing-proration" target="_blank">Proration</a>.
          - `recognizedRevenueAccountingCode` string — The recognizedRevenueAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> and <a href="https://docs.zuora.com?resourceId=ar-zuora-finance" target="_blank">Zuora Finance</a> features are enabled.
          - `revRecCode` string — Revenue Recognition Code
          - `revRecTriggerCondition` 'Contract Effective Date' | 'Service Activation Date' | 'Customer Acceptance Date' — Specifies the revenue recognition trigger condition. * `Contract Effective Date` * `Service Activation Date` * `Customer Acceptance Date`
          - `revenueRecognitionRuleName` 'Recognize upon invoicing' | 'Recognize daily over time' — Specifies the revenue recognition rule.
          - `revenueRecognitionTiming` 'Upon Billing Document Posting Date' | 'Upon Order Activation Date' — Specifies the type of revenue recognition timing. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have the Order to Revenue feature enabled.
          - `revenueAmortizationMethod` 'Immediate' | 'Ratable Using Start And End Dates' — Specifies the type of revenue amortization method. Predefined options are listed as enum values in this API Reference. Other options might also be avaliable depending on the <a href="https://docs.zuora.com?resourceId=billing-configure-revenue-settings" target="_blank">revenue recognition policy configuration</a> in the Zuora Billing UI. **Note**: This field is only available if you have the Order to Revenue feature enabled.
          - `rolloverApply` 'ApplyFirst' | 'ApplyLast' — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) 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.
          - `rolloverEndDate` string, date — Explicit cutoff date when `rolloverEndDateType` is `SpecificDate`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `rolloverEndDateType` 'ChargeEndDate' | 'SubscriptionTerm' | 'SpecificDate' — Rollover cutoff strategy determining when the rollover eligibility will end. Possible values are: * `ChargeEndDate` - Rollover stops at the charge end date. * `SubscriptionTerm` - Rollover stops at the subscription term end. * `SpecificDate` - Rollover stops at an explicit date specified in `RolloverEndDate`. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `rolloverFundPriority` integer — Priority override for rolled-over funds. Lower value means that it will be consumed first. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can customize a single rollover period length together with `rolloverPeriodType` field.
          - `rolloverPeriodLength` integer — The rollover period length. When the **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can customize a single rollover period length together with `rolloverPeriodType` field. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled. Use this field when you want to set the rollover fund's period length shorter than the prepayment charge's validity period. In this case, you must set the `rolloverPeriods` field to 1. For example, you can define the rollover fund's period length as 5 months, shorter than the prepayment charge's validity period: a year. When the **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can customize a single rollover period length together with `rolloverPeriodType` field.
          - `rolloverPeriods` number — **Note**: This field is only available if you have the [Prepaid with Drawdown](https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview) 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.
          - `rolloverPeriodType` 'Day' | 'Month' | 'Quarter' | 'Annual' — Unit for rollover period length. Possible values are: * `Day` - Day-based rollover periods. * `Month` - Month-based rollover periods. * `Quarter` - Quarter-based rollover periods. * `Annual` - Annual rollover periods. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `startDate` TriggerParams — Specifies when a charge becomes active.
            - `periodsAfterChargeStart` integer — Duration of the discount charge in days, weeks, months, or years, depending on the value of the `startPeriodsType` field. Only applicable if the value of the `startDatePolicy` field is `FixedPeriodAfterApplyToChargeStartDate`. **Note**: You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field.
            - `specificTriggerDate` string, date, nullable — Date in YYYY-MM-DD format. Only applicable if the value of the `triggerEvent` field is `SpecificDate`. While this field is applicable, if this field is not set, your `CreateSubscription` order action creates a `Pending` order and a `Pending Acceptance` subscription. If at the same time the service activation date is required and not set, a `Pending Activation` subscription is created. While this field is applicable, if this field is not set, the following order actions create a `Pending` order but do not impact the subscription status. **Note**: This feature is in **Limited Availability**. If you want to have access to the feature, submit a request at [Zuora Global Support](http://support.zuora.com/). * AddProduct * UpdateProduct * RemoveProduct * RenewSubscription * TermsAndConditions
            - `startDatePolicy` 'AlignToApplyToCharge' | 'SpecificDate' | 'EndOfLastInvoicePeriodOfApplyToCharge' | 'FixedPeriodAfterApplyToChargeStartDate' — Start date policy of the discount charge to become active when the **Apply to billing period partially** checkbox is selected from the product catalog UI or the `applyToBillingPeriodPartially` field is set as true from the "CRUD: Create a product rate plan charge" operation. - If the value of this field is `SpecificDate`, use the `specificTriggerDate` field to specify the date when the charge becomes active. - If the value of this field is `FixedPeriodAfterApplyToChargeStartDate`, the charge is active for a predefined duration based on the value of the `upToPeriodsType` and `upToPeriods` fields. **Notes**: - You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field. - You can use either `triggerEvent` or `startDatePolicy` to define when a discount charge starts, but not both at the same time.
            - `startPeriodsType` 'Days' | 'Weeks' | 'Months' | 'Years' — Unit of time that the discount charge duration is measured in. Only applicable if the value of the `startDatePolicy` field is `FixedPeriodAfterApplyToChargeStartDate`. **Note**: You must enable the [Enhanced Discounts](https://docs.zuora.com?resourceId=billing-manage-enhanced-discount) feature to access this field.
            - `triggerEvent` 'ContractEffective' | 'ServiceActivation' | 'CustomerAcceptance' | 'SpecificDate' — Condition for the charge to become active. If this field is not specified, the value of the field will be defaulted to the trigger event value defined in the product catalog. If the value of this field is `SpecificDate`, use the `specificTriggerDate` field to specify the date when the charge becomes active.
          - `specificValidityPeriodLength` integer — The number of days, weeks, or months for the validity period when `ValidityPeriodType` is `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, or `SPECIFIC_MONTHS`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `taxCode` string — The tax code of a charge. This field is available when the `taxable` field is set to `true`.
          - `taxMode` 'TaxExclusive' | 'TaxInclusive' — The tax mode of a charge. This field is available when the `taxable` field is set to `true`.
          - `taxable` boolean — The flag indicates whether the charge is taxable. If this field is set to `true`, the `taxCode` and `taxMode` fields must be specified.
          - `unBilledReceivablesAccountingCode` string — The unBilledReceivablesAccountingCode of a standalone charge. **Note:** This field is available when the <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> feature and the <a href="https://docs.zuora.com?resourceId=revenue-billing-integration" target="_blank">Billing - Revenue Integration</a> or <a href="https://docs.zuora.com/en/zuora-billing/set-up-zuora-billing/enable-order-to-revenue/overview-of-order-to-revenue" target="_blank">Order to Revenue</a> feature are enabled.
          - `uniqueToken` string, nullable — Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the charge. Then when you update the product, you can use the same unique identifier to specify which charge to modify.
          - `validityPeriodType` 'SUBSCRIPTION_TERM' | 'ANNUAL' | 'SEMI_ANNUAL' | 'QUARTER' | 'MONTH' — **Note**: This field is only available if you have enabled either of the following: * <a href="https://docs.zuora.com?resourceId=billing-prepaid-with-drawdown-overview" target="_blank">Prepaid with Drawdown</a> * <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> * Both <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">Minimum Commitment</a> and <a href="https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/overview-of-standalone-orders" target="_blank">Standalone Orders</a> You can use this field in the following scenarios: * When you create a [prepayment charge](https://docs.zuora.com?resourceId=billing-create-prepayment-charge-with-rollover), use this field to define the period in which the prepayment units are valid to use. * When you override the setting of <a href="https://docs.zuora.com?resourceId=billing-minimum-commitment" target="_blank">commitment true-up charge</a> from the product catalog, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When you use a standalone order to create a commitment true-up charge, set this field consistently with the value of the `billing` > `billingPeriod` field in this charge. * When **Enhanced Unit-Based Prepaid with Drawdown** feature is enabled, you can also choose from the following options: `SPECIFIC_DAYS`, `SPECIFIC_WEEKS`, `SPECIFIC_MONTHS`. Specify the actual number in `specificValidityPeriodLength` field.
          - `validityPeriodAlignment` 'ChargeStart' | 'TermStart' | 'TermEnd' | 'SpecificDate' — Determines the anchor date for validity period (VP) boundaries. The anchor date defines the recurring grid — VP boundaries fall at every VP-length step from the anchor. The charge's start and end dates then determine which portion of this grid is covered. Possible values are: * `ChargeStart` (default) - Anchor date is the charge start date. Simplest option with no partial first VP. * `TermStart` - Anchor date is the subscription term start date. Aligns all charges on the same subscription to a common grid. * `TermEnd` - Anchor date is derived by walking backward from the subscription term end date. Last VP always ends cleanly at term end; partial VP (if any) is at the start. * `SpecificDate` - Anchor date is an explicit `validityPeriodAnchorDate` on the charge. Custom alignment for special billing arrangements. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `validityPeriodAnchorDate` string, date — The anchor date for validity period alignment. Required when `validityPeriodAlignment` is `SpecificDate`. **Note:** This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
          - `validityPeriodProrationOption` 'ProrateUnits' | 'NoProrate' — Controls what happens to units when a validity period (VP) is partial. Possible values are: * `ProrateUnits` - Grant partial units, the number is prorated based on the overlap ratio. * `NoProrate` - Grant full units. **Note**: This field is only available if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/usage-billing/prepaid-with-drawdown/prepaid-with-drawdown-overview" target="_blank">Enhanced Unit-Based Prepaid with Drawdown</a> feature enabled.
        - `chargeRemovals` ChargeRemoval[] — This section is only available for hard bundle rate plans. To remove optional component charges from the subscribed hard bundle, specify its subscription rate plan charge number or unique token. **Note:** This field is only available when the **Hard Bundle** feature is enabled. The **Hard Bundle** feature is in the **Early Availability** phase. We are actively soliciting feedback from a small set of early availability before releasing it as generally available. If you want to join this early adopter program, submit a request at <a href="https://support.zuora.com" target="_blank">Zuora Global Support</a>.
          - `chargeNumber` string — The number of the charge to be removed. This must be an optional charge in a bundle rate plan. **Note:** You must specify either `chargeNumber` or `uniqueToken`. **Note:** This field requires the **Hard Bundle** feature enabled.
          - `uniqueToken` string — A unique string to represent the charge in the order. Use this to reference a charge that was added in a previous order action within the same order using the same uniqueToken. **Note:** You must specify either `chargeNumber` or `uniqueToken`.
          - `description` string — Description of why the charge is being removed. **Note:** This field does not accept JavaScript or HTML script content for security reasons.
        - `clearingExistingFeatures` boolean — Specifies whether all features in the rate plan will be cleared.
        - `customFields` OrdersRatePlanObjectCustomFields — Container for custom fields of the Rate Plan object. The custom fields of the Rate Plan object are used when rate plans are subscribed.
        - `externalCatalogPlanId` string — An external ID of the rate plan to be updated. You can use this field to specify an existing rate plan in your subscription. The value of the `externalCatalogPlanId` field must match one of the values that are predefined in the `externallyManagedPlanIds` field on a product rate plan. However, if there are multiple rate plans with the same `productRatePlanId` value existing in the subscription, you must use the `ratePlanId` field to update the rate plan. The `externalCatalogPlanId` field cannot be used to distinguish multiple rate plans in this case. **Note:** If both `externalCatalogPlanId` and `ratePlanId` are provided. They must point to the same product rate plan. Otherwise, the request would fail.
        - `isAddingSubsetCharges` boolean — Specifies whether to add a subset of charges to the subscription. **Note:** To access this field for adding a subset of charges, submit a request at <a href="http://support.zuora.com/" target="_blank">Zuora Global Support</a>.
        - `productRatePlanNumber` string — Number of a product rate plan for this subscription.
        - `ratePlanId` string — The id of the rate plan to be updated. It can be the latest version or any history version id.
        - `specificUpdateDate` string, date — The specific date when the Update Product order action takes effect. This field allows you to update a charge before a future-dated Update Product order action on the subscription. The format of the date is yyyy-mm-dd. **Note**: After you use this option, the charge's `TriggerEvent` field value will be changed to `SpecificDate`. See [Update a Product on Subscription with Future-dated Updates](https://docs.zuora.com/en/zuora-billing/manage-accounts-subscriptions-and-non-subscriptions/manage-subscription-transactions/orders/order-actions-tutorials/products-updation-on-subscriptions-with-future-dated-updates) for more information about this feature.
        - `subscriptionProductFeatures` CreateOrderRatePlanFeatureOverride[] — List of features associated with the rate plan. The system compares the `subscriptionProductFeatures` and `featureId` fields in the request with the counterpart fields in a rate plan. The comparison results are as follows: * If there is no `subscriptionProductFeatures` field or the field is empty, features in the rate plan remain unchanged. But if the `clearingExistingFeatures` field is additionally set to true, all features in the rate plan are cleared. * If the `subscriptionProductFeatures` field contains the `featureId` nested fields, as well as the optional `description` and `customFields` nested fields, the features indicated by the featureId nested fields in the request overwrite all features in the rate plan.
          - `customFields` RatePlanFeatureOverrideCustomFields — A container for custom fields of the feature.
          - `description` string — A description of the feature.
          - `featureId` string, required — Internal identifier of the feature in the product catalog.
        - `subscriptionRatePlanNumber` string — Number of a rate plan for this subscription.
        - `uniqueToken` string — A unique string to represent the rate plan in the order. The unique token is used to perform multiple actions against a newly added rate plan. For example, if you want to add and update a product in the same order, assign a unique token to the newly added rate plan and use that token in future order actions.
    - `quote` QuoteObjectFields — The fields populated for a quote when a quote is sent to Zuora Billing from Zuora Quote.
      - `OpportunityCloseDate__QT` string — The closing date of the Opportunity. This field is used in Zuora Reporting Data Sources to report on Subscription metrics. If the subscription was originated from Zuora Quotes, the value is populated with the value from Zuora Quotes.
      - `OpportunityName__QT` string — The unique identifier of the Opportunity. This field is used in the Zuora Reporting Data Sources to report on Subscription metrics. If the subscription was originated from Zuora Quotes, the value is populated with the value from Zuora Quotes. **Character limit**: 100
      - `QuoteBusinessType__QT` string — The specific identifier for the type of business transaction the Quote represents such as New, Upsell, Downsell, Renewal or Churn. This field is used in the Zuora Reporting Data Sources to report on Subscription metrics. If the subscription was originated from Zuora Quotes, the value is populated with the value from Zuora Quotes. **Character limit**: 32
      - `QuoteNumber__QT` string — The unique identifier of the Quote. This field is used in the Zuora Reporting Data Sources to report on Subscription metrics. If the subscription was originated from Zuora Quotes, the value is populated with the value from Zuora Quotes. **Character limit**: 32
      - `QuoteType__QT` string — The Quote type that represents the subscription lifecycle stage such as New, Amendment, Renew or Cancel. This field is used in the Zuora Reporting Data Sources to report on Subscription metrics. If the subscription was originated from Zuora Quotes, the value is populated with the value from Zuora Quotes. **Character limit**: 32
    - `ramp` RampRequest — Container of the ramp definitions. It is used to create, update, or remove the ramp definition for the new subscription.
      - `charges` RampChargeRequest[] — Container for the rate plan charges that are considered as part of the ramp deal. * If this field is not specified, all the one-time and recurring regular charges of the new subscription are automatically considered as part of the ramp deal. * If this field is specified, either 'chargeNumber' or 'uniqueToken' must be specified.
        - `chargeNumber` string — The number of the rate plan charge.
        - `uniqueToken` string — Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora.
      - `delete` boolean — Whether to remove the ramp definition from the new subscription. If you want to remove the ramp definition, this field is the only required field for the `ramp` object.
      - `description` string — The short description of the ramp.
      - `intervals` RampIntervalRequest[] — Container for the intervals that the ramp is split into in its timeline. It is required when you want to create or update the ramp definition. The ramp intervals cannot have any overlap or gap between each other.
        - `description` string — The short description of the interval.
        - `endDate` string, date, required — The end date of the interval.
        - `name` string — The name of the interval.
        - `startDate` string, date, required — The start date of the interval.
      - `name` string — The name of the ramp.
    - `subscriptionNumber` string — Leave this empty to represent new subscription creation. Specify a subscription number to update an existing subscription.

## Response `200`

Accepted

- object
  - `jobId` string, UUID — The ID of an asynchronous job that will be returned for tracking the status and result of the job.
  - `success` boolean — Indicates whether the operation call succeeded.

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
