Skip to main content
Version: 1.27 (Current)

Update Subscription

Audience: Citizen Developer

Skill Prerequisites: Payment Integrations, Tokens

The Update Subscription action updates a recurring subscription in Authorize.Net using new or changed profile and payment information. It can modify subscription details such as the subscription amount, card details, billing address, and more. This action is commonly used to enable users to update their payment method, change billing details, or otherwise make adjustments to their recurring payments without interrupting the subscription.

Typical Use Cases

  • Update the credit card or billing address on an active recurring subscription.
  • Change the recurring payment amount for a customer’s subscription.
  • Modify customer's personal or company information attached to a recurring plan.
  • Switch between sandbox (test) and live environment when updating subscriptions.
Action NameDescription
Create SubscriptionCreates a new recurring subscription in Authorize.Net.
Cancel SubscriptionCancels an existing recurring subscription.
Apply TokensDynamically insert or update parameter values using tokens.

Input Parameter Reference

ParameterDescriptionSupports TokensRequired
API Login IDAPI Login ID for Authorize.Net.YesYes
Transaction KeyTransaction key for Authorize.Net.YesYes
Go LiveEnable to use live (production) mode; disable for sandbox/test.YesNo
Subscription IdThe subscription id to update.YesYes
Card NumberCredit card number.YesYes
Card CCVCredit card security code.YesYes
Expiration MonthCredit card expiration month.YesYes
Expiration YearCredit card expiration year.YesYes
Subscription NameHuman-readable name for this subscription.YesNo
Subscription AmountAmount to be billed per cycle (total, including tax/shipping, no $ symbol).YesYes
Subscription Trial AmountTrial subscription amount (if any).YesNo
Total OccurrencesTotal number of payments/occurrences. Use 9999 for unlimited/indefinite.YesYes
Trial OccurrencesNumber of trial occurrences (if using a trial period).YesNo
First NameFirst name of the subscriber.YesYes
Last NameLast name of the subscriber.YesYes
CountryOptional. Subscriber's country.YesNo
StateOptional. Subscriber's state.YesNo
CityOptional. Subscriber's city.YesNo
AddressOptional. Subscriber's street address.YesNo
Postal CodeOptional. Subscriber's postal code.YesNo
CompanyOptional. Subscriber's company name.YesNo
Response Result Code TokenNameName of token to store result code (e.g., "Ok", "Error").No
Response Message TokenNameName of token to store the API response message.No
Response Customer ProfileId TokenNameName of token to store customer profile ID.No
Response Customer PaymentProfileId TokenNameName of token to store payment profile ID.No
Response Customer Address Id TokenNameName of token to store address ID.No
Response Ref Id TokenNameName of token to store reference ID from response.No
Response SessionToken TokenNameName of token to store session token from response.No
On SuccessAction list to execute if update is successful.No
On ErrorAction list to execute if update fails.No

Output Parameters Reference

ParameterDescription
Response Result Code TokenNameThe result code ("Ok", "Error", etc.), if provided.
Response Message TokenNameThe full response message, if provided.
Response Customer ProfileId TokenNameThe returned customer profile ID from Authorize.Net.
Response Customer PaymentProfileId TokenNameThe returned payment profile ID from Authorize.Net.
Response Customer Address Id TokenNameThe returned address ID from Authorize.Net.
Response Ref Id TokenNameThe returned ref ID from Authorize.Net.
Response SessionToken TokenNameThe session token for the transaction.

Security

Important: Sensitive information such as credit card numbers and keys should always be handled securely and should never be exposed to untrusted end users. All data should be passed over secured (HTTPS) connections, and access to configuration values should be restricted according to the principle of least privilege.

Examples

1. Basic Subscription Update (Test Mode)

This example will update a test subscription with new card and address details. Only required fields are provided for brevity.

{
"Title": "Update Subscription",
"ActionType": "UpdateSubscription",
"Parameters": {
"AuthorizeNetAPILoginID": "[Settings:ApiLoginId]",
"AuthorizeNetTransactionKey": "[Settings:TransactionKey]",
"AuthorizeNetLiveMode": false,
"AuthorizeNetSubscriptionId": "[Form:SubscriptionId]",
"AuthorizeNetCardNumber": "[Form:CardNumber]",
"AuthorizeNetCCV": "[Form:CCV]",
"AuthorizeNetExpirationMonth": "[Form:ExpMonth]",
"AuthorizeNetExpirationYear": "[Form:ExpYear]",
"AuthorizeNetFirstName": "[Form:FirstName]",
"AuthorizeNetLastName": "[Form:LastName]",
"AuthorizeNetAmount": "[Form:Amount]",
"TotalOccurrences": "12",
"AuthorizeNetResponseResultCodeTokenName": "SubscriptionUpdateResult",
"AuthorizeNetResponseMessageTokenName": "SubscriptionUpdateResponse",
"OnSuccess": [
{
"Title": "Display Message",
"ActionType": "DisplayMessage",
"Parameters": {
"Message": "Subscription updated successfully!"
}
}
],
"OnError": [
{
"Title": "Display Message",
"ActionType": "DisplayMessage",
"Parameters": {
"Message": "Failed to update subscription."
}
}
]
}
}