Fulfillment Webhook
Summary
Order Fulfillment webhooks are used to send order-specific data to a customer after a checkout is completed. These work differently to other Paddle webhooks. For information about usage and setup, see: Order Fulfillment Overview.
Fulfillment webhooks can be sent as either a
GET
orPOST
request
Payload
Information sent in the payload for all Product Purchased
fulfillment webhooks is summarized in the table below.
These fields are always sent. If required, optional custom fields are also available.
Property | Type | Description | Example |
---|---|---|---|
event_time | string<date-time> | The date and time the event was triggered in UTC (Coordinated Universal Time). | |
p_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 DE |
p_coupon | string | The coupon code that was used on this order. Min Length: >=5 characters Max Length: <=300 characters | |
p_coupon_savings | string | The amount of savings given by the applied coupon. | |
p_currency | string | The three-letter ISO currency code. For a full list of supported currencies, see our Supported Currencies page. | |
p_earnings | string | The amount credited to your balance. It is returned as a JSON string in the format: {vendor_id: earnings_amount} . The string will contain multiple entries if there is more than one account involved in the purchase (for example a split checkout). | |
p_order_id | string | The Paddle Order ID for this payment. This can be used to look up the order within your Vendor Dashboard. | |
p_paddle_fee | string | The amount of this order that was paid to Paddle as a fee. | |
p_price | string | The price the user paid for this order. | |
p_product_id | string | The dashboard ID of the product purchased in this order. | |
p_quantity | string | The number of products or subscription seats sold in the transaction. | |
p_sale_gross | string | The total value of the sale (including tax) in the sale currency. | |
p_tax_amount | string | The amount of this order that was paid in tax. | |
p_used_price_override | string | Whether the dashboard price was overridden. Allowed values: 1 0 | |
passthrough | string | This field contains any values that you passed into the checkout using the passthrough parameter. Max Length: <=1000 characters . For more information see our Pass Parameters page. | |
quantity | string | This field is deprecated and will be removed in a future update. Please refer to the p_quantity field instead. | |
p_signature | string | This field contains an encrypted token that you can use to verify the request authenticity. See Verifying Webhooks. | |
p_custom_data | string | A JSON encoded string of custom data that was passed into the checkout for this order. | {"external_id": 42} |
Custom Fields
You may specify additional custom webhook data fields for each product, either attaching order-specific information or static values. Available fields are summarized in the table below.
Property | Type | Description | Example |
---|---|---|---|
string<email> | The email address of the customer. | ||
message | string | The custom message displayed in the checkout. Max length: <=255 characters | |
customer_name | string | The name of the customer. For card payments, this will return the cardholder name entered by the buyer during the checkout. For PayPal payments, this will return the name from the PayPal account used during the checkout. For all other payment methods where the name is not collected (including Apple Pay and Wire Transfer), we will return the email prefix from the customer's email address. | |
transaction_id | string | A unique hash representing the transaction. | |
checkout_id | string | The checkout id of the order created. | 27835673-chre93c81118fc7-b3092639c1 |
static_value | string | Any fixed string value you wish to include in webhooks for this product. | |
marketing_consent | string | This field is only included if the customer email is included. 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 |