Subscription Updated

A subscription_updated event is fired when there is a change to the plan, price, quantity or status for a customer's existing subscription - or if the payment date is rescheduled manually.

Information sent in the payload for a subscription_updated webhook is summarised in the table below.

PropertyTypeDescriptionExample
alert_idstringThe unique identifier for this Paddle webhook alert. Integer value sent as a string.
alert_namestringThe alert name.
subscription_updated
cancel_urlstring<uri>A URL for the 'Cancel Subscription' page. See this documentation on cancelation URLs. Store this URL together with the subscribed customer in your database.
Max Length: <=200 characters
checkout_idstringThe unique checkout id for the order created.27835673-chre93c81118fc7-b3092639c1
currencystringThe three-letter ISO currency code. For a full list of supported currencies, see our Supported Currencies page.USD GBP
custom_datastringA JSON encoded string of custom data that was passed into the checkout for this subscription{"external_id": 42}
emailstring<email>The email address of the customer.
event_timestring<date-time>The date and time the event was triggered in UTC (Coordinated Universal Time).
marketing_consentstringThe value of this field 0 or 1 indicates whether the user has agreed to receive marketing messages from the vendor.
Allowed values: 0 1
new_pricestringThe new total recurring price of the subscription. Decimal sent as a string.
new_quantitystringThe new quantity applied to a quantity enabled subscription.
new_unit_pricestringThe new price per unit of the subscription. Decimal sent as a string.
next_bill_datestring<date>The date the next payment is due on this subscription.
Note: this will be empty if the subscription is in past due and all payment retry attempts have failed.
old_next_bill_datestring<date>The next bill date before the subscription was updated.
Note: this will be empty if the subscription was in past due and all payment retry attempts previously failed.
old_pricestringThe previous total recurring price of the subscription. Decimal sent as a string.
old_quantitystringThe previous quantity applied to the subscription.
old_statusstringThe subscription status before the subscription was updated. A list of possible values and their meanings can be found under Event Statuses.
Allowed values: active trialing past_due paused deleted
old_subscription_plan_idstringThe ID of the subscription plan before the subscription was updated.
old_unit_pricestringThe previous price per unit of the subscription. Decimal sent as a string.
p_signaturestringThis field contains an encrypted token that you can use to verify the request authenticity. See Verifying Webhooks.
passthroughstringThis field contains any values that you passed into the checkout using the passthrough parameter. See the Pass Parameters documentation for more information.
Max Length: <=1000 characters
statusstringThis is the current status of the subscription. A list of possible values and their meanings can be found under Event Statuses.
Allowed values: active trialing past_due paused deleted
subscription_idstringThis is the unique Subscription ID for this customer’s subscription. Store this with the customer in your database, as it is needed for making API calls.
subscription_plan_idstringThe ID of the Subscription Plan the customer is subscribed to. (This is the value that will change upon plan change).
update_urlstring<url>A URL of the ‘Update Payment Details’ page. See this documentation on update URLs. Store this URL along with the subscribed customer in your database.
Max Length: <=200 characters
user_idstringThe customer user ID.
paused_atstring<date-time>The date and time when the subscription was requested to be paused. The subscription will be paused on the paused_from date.
paused_fromstring<date-time>The date when the subscription payment is paused. The customer should be able to use the service they’ve subscribed to up until this date.
paused_reasonstringThe reason why the subscription was paused. For example, delinquent if the payment failed and the rule specified in the recover settings was to pause the subscription.
Allowed values: delinquent voluntary