Update subscription

Use this method to partially update a subscription. Structure your request to follow the RFC 6902 standard.

To retrieve a subscription, you need its subscriptionId, which you sent in the request of the Create subscription method.

Note: If you don’t have the subscriptionId, use our List subscriptions method to search for the payment.

You can update all of the properties of the subscription except for the following:

Can’t delete

  • recurringOrder
  • description
  • name

Can’t perform any PATCH operation

  • currentState
  • type
  • frequency
  • paymentPlan

Path parameters

processingTerminalIdstringRequired>=4 characters<=50 characters
Unique identifier that we assigned to the terminal.
subscriptionIdstringRequired>=1 character<=48 characters
Unique identifier that the merchant assigned to the subscription.

Headers

AuthorizationstringRequired

Bearer authentication of the form Bearer <token>, where token is your auth token.

Idempotency-KeystringRequired

Unique identifier that you generate for each request. You must use the UUID v4 format for the identifier. For more information about the idempotency key, go to Idempotency.

Request

This endpoint expects a list of objects.
Patch Add OperationobjectRequired
OR
Patch Remove OperationobjectRequired
OR
Patch Replace OperationobjectRequired
OR
Patch Move OperationobjectRequired
OR
Patch Copy OperationobjectRequired
OR
Patch Test OperationobjectRequired

Response

Successful request. We have updated the subscription.
subscriptionIdstring>=1 character<=48 characters
Unique identifier that the merchant assigned to the subscription.
processingTerminalIdstring>=4 characters<=50 characters
Unique identifier of the terminal that the subscription is linked to.
paymentPlanobject
secureTokenobject
Object that contains information about the secure token.
namestring>=5 characters<=128 characters
Name of the subscription.
currencyenum

Currency of the transaction. The value for the currency follows the ISO 4217 standard.

currentStateobject
A snapshot of the subscription's current state.
startDatedate

Format: YYYY-MM-DD
Subscription’s start date.

typeenum

How the merchant takes the payment from the customer’s account.

  • manual – The merchant manually collects payments from the customer.
  • automatic – The terminal automatically collects payments from the customer.
Allowed values:
frequencyenum
Indicates how often the merchant or the terminal collects a payment from the customer.
Allowed values:
descriptionstring or null>=1 character<=128 characters
Description of the subscription.
setupOrderobject or null
Object that contains information about the initial cost that a customer pays to set up the subscription.
recurringOrderobject or null

Object that contains information about the cost of each payment.
Note: Send this object only if the value for type is automatic.

endDatedate or null

Format: YYYY-MM-DD Subscription’s end date.
Note: If you provide values for both length and endDate, our gateway uses the value for endDate to determine when the subscription should end.

lengthinteger or null>=0

Total number of billing cycles. To indicate that the subscription should run indefinitely, send a value of 0. This value replaces the length inherited from the payment plan.
Note: If you provide values for both length and endDate, our gateway uses the value for endDate to determine when the subscription should end.

pauseCollectionForinteger or null>=0
Number of billing cycles that the merchant wants to pause payments for. For example, if the merchant wants to offer a free trial period.
customFieldslist of objects or null
Array of customField objects.

Errors