Skip to content

Update a payment schedule

Request

Updates the specified payment schedule by setting the values of the parameters passed. Any parameters not provided will remain unchanged.

Security
bearerAuth
Path
payment_schedule_idstringrequired

Identifier for the payment schedule. Can be either payment_schedule_number or payment_schedule_id

Query
fields[]Array of strings

Allows you to specify which fields are returned in the response.

Accepted values `custom_fields`, `created_by_id`, `updated_by_id`, `created_time`, `id`, `updated_time`, `account_id`, `description`, `next_payment_date`, `payment_schedule_number`, `number_of_payments`, `prepayment`, `start_date`, `run_hour`, `state`, `recent_payment_date`, `total_payments_errored`, `total_payments_processed`, `total_amount`, `debit_memo_id`, `invoice_id`
Example:fields[]=id,created_time
payment_schedule.fields[]Array of stringsdeprecated

Allows you to specify which fields are returned in the response.

Accepted values `custom_fields`, `created_by_id`, `updated_by_id`, `created_time`, `id`, `updated_time`, `account_id`, `description`, `next_payment_date`, `payment_schedule_number`, `number_of_payments`, `prepayment`, `start_date`, `run_hour`, `state`, `recent_payment_date`, `total_payments_errored`, `total_payments_processed`, `total_amount`, `debit_memo_id`, `invoice_id`
Example:payment_schedule.fields[]=id,created_time
payment_schedule_item.fields[]Array of strings

Allows you to specify which fields are returned in the response.

Accepted values `custom_fields`, `created_by_id`, `updated_by_id`, `created_time`, `id`, `updated_time`, `account_id`, `amount`, `balance`, `currency`, `debit_memo_id`, `invoice_id`, `payment_id`, `payment_method_id`, `description`, `prepayment`, `payment_gateway_id`, `run_hour`, `state`, `scheduled_date`, `payment_schedule_item_number`, `payment_schedule_id`, `cancellation_reason`, `error_message`, `payment_option_id`
Example:payment_schedule_item.fields[]=id,created_time
expand[]Array of strings

Allows you to expand responses by including related object information in a single call. See the Expand responses section of the Quickstart API Tutorials for detailed instructions.

filter[]Array of strings

A case-sensitive filter on the list. See the Filter lists section of the Quickstart API Tutorial for detailed instructions.
Note that the filters on this operation are only applicable to the related objects. For example, when you are calling the "Retrieve a billing document" operation, you can use the filter[] parameter on the related objects such as filter[]=items[account_id].EQ:8ad09e208858b5cf0188595208151c63

page_sizeinteger, [ 1 .. 99 ]

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

Headers
zuora-track-idstring

A custom identifier for tracking API requests. If you set a value for this header, Zuora returns the same value in the response header. This header enables you to track your API calls to assist with troubleshooting in the event of an issue. The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), or quote (').

asyncboolean

Making asynchronous requests allows you to scale your applications more efficiently by leveraging Zuora's infrastructure to enqueue and execute requests for you without blocking. These requests also use built-in retry semantics, which makes them much less likely to fail for non-deterministic reasons, even in extreme high-throughput scenarios. Meanwhile, when you send a request to one of these endpoints, you can expect to receive a response in less than 150 milliseconds and these calls are unlikely to trigger rate limit errors. If set to true, Zuora returns a 202 Accepted response, and the response body contains only a request ID.

Default:false
zuora-entity-idsstring

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

idempotency-keystring

Specify a unique idempotency key if you want to perform an idempotent POST or PATCH request. Do not use this header in other request types. This idempotency key should be a unique value, and the Zuora server identifies subsequent retries of the same request using this value. For more information, see Idempotent Requests.

accept-encodingstring

Include a accept-encoding: gzip header to compress responses, which can reduce the bandwidth required for a response. If specified, Zuora automatically compresses responses that contain over 1000 bytes. For more information about this header, see Request and Response Compression.

content-encodingstring

Include a content-encoding: gzip header to compress a request. Upload a gzipped file for the payload if you specify this header. For more information, see Request and Response Compression.

Bodyapplication/jsonrequired
currencystring

Currency of the payment schedule. Note: This field is optional. The default value is the account's default currency. This field will be ignored when items is specified.

Example:"USD"
number_of_paymentsinteger

The number of payment schedule items to be created for this payment schedule.

payment_gateway_idstring

ID of the payment gateway used to collect payments. Note: This field is optional. The default value is the account's default payment gateway ID. If no payment gateway ID is found on the customer account level, the default value will be the tenant's default payment gateway ID. This field will be ignored when items is specified.

Example:"8ad093f27d6eee80017d6effd7a66759"
payment_method_idstring

ID of the payment method. Note: This field is optional. The default value is the account's default payment method ID. This field will be ignored when items is specified.

Example:"8a95b1946b6aeac8718c32aab8c395f"
payment_method_numberstring

The payment method number of the payment method to be used to collect payments.

run_hourinteger, [ 0 .. 23 ]

At which hour in the day in the tenant's timezone this payment will be collected. Available values:[0,1,2,~,22,23]. If the time difference between your tenant’s timezone and the timezone where Zuora servers are located is not in full hours, for example, 2.5 hours, the payment schedule items will be triggered half an hour later than your scheduled time. The default value is 0. If the payment run_hour and scheduled_date are backdated, the system will collect the payment when the next run_hour occurs.

custom_fieldsobject(CustomFields)

Set of user-defined fields associated with this object. Useful for storing additional information about the object in a structured format.

payment_optionsArray of objects(PaymentSchedulePaymentOptionRequest)

Container for the payment options, which describe the transactional level rules for processing payments. Currently, only the gateway_options type is supported. Payment schedule payment_options take precedence over payment schedule item payment_options.

start_datestring, (date)

The date of the first scheduled payment collection. Note: This parameter is required when items is not specified. This parameter will be ignored when items is specified.

Example:"2023-01-01"
amountnumber

The amount of each payment schedule item in the payment schedule.

periodany

Unit in which term duration is defined. One of week or month.

Enum:"week""month""biweekly"
{ "currency": "USD", "number_of_payments": 0, "payment_gateway_id": "8ad093f27d6eee80017d6effd7a66759", "payment_method_id": "8a95b1946b6aeac8718c32aab8c395f", "payment_method_number": "string", "run_hour": 0, "custom_fields": { "property1": "string", "property2": "string" }, "payment_options": [ { … } ], "start_date": "2023-01-01", "amount": 0, "period": "week" }

Responses

Default Response

Headers
ratelimit-limitstring

The request limit quota for the time window closest to exhaustion. See rate limits for more information.

ratelimit-remainingnumber

The number of requests remaining in the time window closest to quota exhaustion. See rate limits for more information.

ratelimit-resetnumber

The number of seconds until the quota resets for the time window closest to quota exhaustion. See rate limits for more information.

zuora-request-idstring

Zuora’s internal identifier for this request.

zuora-track-idstring

A user-supplied identifier for this request. If you supply a zuora-track-id as a request header, Zuora returns the zuora-track-id as a response header.

Bodyapplication/json
idstringread-only

Unique identifier for the object.

updated_by_idstringread-only

Unique identifier of the Zuora user who last updated the object

updated_timestring, (date-time)read-only

The date and time when the object was last updated in ISO 8601 UTC format.

created_by_idstringread-only

Unique identifier of the Zuora user who created the object

created_timestring, (date-time)read-only

The date and time when the object was created in ISO 8601 UTC format.

custom_fieldsobject(CustomFields)

Set of user-defined fields associated with this object. Useful for storing additional information about the object in a structured format.

custom_objectsobjectread-only

The custom objects associated with a Zuora standard object.

account_idstring

Unique identifier of the customer account the payment schedule belongs to.

account_numberstring

Account number of the customer account the payment schedule belongs to.

amountnumber

The amount of each payment schedule item in the payment schedule.

periodany

Unit in which term duration is defined. One of week or month.

Enum:"week""month""biweekly"
billing_documentobject(PaymentScheduleBillingDocumentResponse)

The billing document with which the payment schedule is associated. Note: This field is optional. If you have the Standalone Payment feature enabled, you can leave this field blank and set standalone to true to create standalone payments. You can also choose to create unapplied payments by leaving this object blank and setting standalone to false. If Standalone Payment is not enabled, leaving this object unspecified will create unapplied payments.

currencystring

Currency of the payment schedule. Note: This field is optional. The default value is the account's default currency. This field will be ignored when items is specified.

Example:"USD"
descriptionstring

An arbitrary string attached to the object. Often useful for displaying to users.

Example:"description of test account"
itemsArray of objects(PaymentScheduleItem)
number_of_paymentsinteger

The number of payment schedule items to be created for this payment schedule.

payment_gateway_idstring

ID of the payment gateway used to collect payments. Note: This field is optional. The default value is the account's default payment gateway ID. If no payment gateway ID is found on the customer account level, the default value will be the tenant's default payment gateway ID. This field will be ignored when items is specified.

Example:"8ad093f27d6eee80017d6effd7a66759"
payment_method_idstring

ID of the payment method. Note: This field is optional. The default value is the account's default payment method ID. This field will be ignored when items is specified.

Example:"8a95b1946b6aeac8718c32aab8c395f"
payment_schedule_numberstring

Number of the payment schedule.

run_hourinteger, [ 0 .. 23 ]

At which hour in the day in the tenant's timezone this payment will be collected. Available values:[0,1,2,~,22,23]. If the time difference between your tenant’s timezone and the timezone where Zuora servers are located is not in full hours, for example, 2.5 hours, the payment schedule items will be triggered half an hour later than your scheduled time. The default value is 0. If the payment run_hour and scheduled_date are backdated, the system will collect the payment when the next run_hour occurs.

standaloneboolean

Indicates whether the payments created by the payment schedule are standalone payments or not.
When setting to true, standalone payments will be created. When setting to false, you can either specify a billing document, or not specifying any billing documents. In the latter case, unapplied payments will be created. If set to null, standalone payments will be created.
Note: This parameter is only available if standalone payments are enabled in your tenant. The default value is true if standalone payments are enabled in your tenant.

start_datestring, (date)

The date of the first scheduled payment collection. Note: This parameter is required when items is not specified. This parameter will be ignored when items is specified.

Example:"2023-01-01"
total_amountnumber

The total amount to be collected by the payment schedule.

customboolean

If it is set to true, the payment schedule is a custom payment schedule.

next_payment_datestring, (date)

The date of the next scheduled payment.

Example:"2022-01-01"
recent_payment_datestring, (date)

The date of the most recent scheduled payment.

Example:"2022-01-01"
statestring

The status of the payment schedule. active: there are unprocessed payment schedule items. canceled: the payment schedule has been canceled. complete: the payment schedule is complete and all items have been processed.

Enum:"active""canceled""complete"
total_payments_erroredinteger

The total number of failed payments.

total_payments_processedinteger

The total number of payments processed.

payment_optionsArray of objects(PaymentSchedulePaymentOptionRequest)

Container for the payment options, which describe the transactional level rules for processing payments. Currently, only the gateway_options type is supported. Payment schedule payment_options take precedence over payment schedule item payment_options.

prepaymentboolean

Indicates whether the payments created by the payment schedule will be used as reserved payments. This field will only be available if the prepaid cash drawdown permission is enabled. See Prepaid Cash with Drawdown for more information.

Response
{ "id": "8ad09e208992481b018993b265472bcb", "updated_by_id": "2c92c0946a6dffc0016a7faab604299b", "updated_time": "2023-07-27T09:14:46-07:00", "created_by_id": "2c92c0946a6dffc0016a7faab604299b", "created_time": "2023-07-26T12:34:49-07:00", "custom_fields": { "field__c": "custom field value" }, "account_id": "8ad09e20896d5f7f018970bbca5d3508", "description": "", "payment_schedule_number": "PS-00000008", "run_hour": 0, "total_amount": 0, "next_payment_date": "", "recent_payment_date": "", "state": "canceled", "total_payments_errored": 0, "total_payments_processed": 0, "prepayment": false }