Skip to content
You're viewing guides for Paddle Classic, which is no longer available for new signups. Head to developer.paddle.com for Paddle Billing guides.

Subscription payment succeeded

A subscription_payment_succeeded event is fired when a subscription payment is received successfully.

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

Property Type Description Example
alert_id string The unique identifier for this Paddle webhook alert. Integer value sent as a string.
alert_name string The alert name.
Default: subscription_payment_succeeded
balance_currency string The three-letter ISO currency code of the vendor’s account balance at the time of the transaction. USD GBP EUR
balance_earnings string The amount of revenue added to the vendor’s balance as a result of this payment, in the vendor’s balance_currency at the time of the transaction.
balance_fee string The fee amount taken from the vendor, in the vendor’s balance_currency at the time of the transaction.
balance_gross string The total amount received from the customer as a result of the payment, in the vendor’s balance_currency at the time of the transaction.
balance_tax string The amount of tax received from the customer, in the vendor’s balance_currency at the time of the transaction.
checkout_id string The unique checkout id for the order created. 27835673-chre93c81118fc7-b3092639c1
country string The two-letter ISO country code of the customer. For a full list of supported countries, see our Supported Countries page. US GB
coupon string The coupon code that was used for this order.
Min length:>=5 characters
Max length:>=300 characters
currency string The three-letter ISO currency code. For a full list of supported currencies, see our Supported Currencies page. USD GBP
custom_data string A JSON encoded string of custom data that was passed into the checkout for this subscription {"external_id": 42}
customer_name string The name of the customer. For card payments, the cardholder’s name (entered by the buyer during the checkout) is returned. For PayPal payments, the name from the PayPal account used during the checkout is returned. For all other payment methods where the name is not collected (including Apple Pay and Wire Transfer), this field is empty.
earnings string The total amount (after taxes and fees) you earned from this payment.
email string<email> The email address of the customer.
event_time string<date-time> The date and time the event was triggered in UTC (Coordinated Universal Time).
fee string The total amount in Paddle fees for this payment.
initial_payment string The value of this field 0 or 1 indicates whether it is the customer’s first payment for this subscription.
Allowed values: 0 1
instalments string Number of payments made to date, starting from 1 for the customer’s first payment. Integer sent as string.
marketing_consent string The value of this field 0 or 1 indicates whether the user has agreed to receive marketing messages from the vendor.
Allowed values: 0 1
next_bill_date string<date> The date the next payment is due for this subscription.
next_payment_amount string The total amount that the customer will be charged for on their upcoming payment, in the subscription’s currency.
order_id string The Paddle Order ID for this payment. This can be used to look up the order within your Seller Dashboard.
p_signature string This field contains an encrypted token that you can use to verify the request authenticity. See Verifying Webhooks.
passthrough string This field contains any values that you passed into the checkout using the passthrough parameter. See our Pass Parameters documentation for more information.
Max Length: <=1000 characters
payment_method string Payment method used to make the transaction.
Allowed values: card paypal google-pay apple-pay
payment_tax string Amount of tax paid as a result of this payment.
plan_name string Subscription plan name.
quantity string The number of products or subscription seats sold in the transaction.
receipt_url string<uri> URL containing the customer receipt.
sale_gross string The total amount the customer was charged for this payment. Decimal sent as string.
status string This 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_id string This 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_payment_id string The unique ID of the subscription payment.
subscription_plan_id string The ID of the Subscription Plan the customer is subscribed to. (This is the value that will change upon plan change).
unit_price string The price per unit of the subscription.
user_id string The customer user ID.