Payment intent created
Sent when a payment intent is created (API, dashboard, invoice or payment link).
Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”t=<unix seconds>,v1=<hex> — HMAC-SHA256 keyed with the endpoint’s full whsec_… secret over <t>.<raw request body>. While a rotated secret is still valid, one v1= value is sent per valid secret: accept the delivery if any value matches (constant-time comparison) and reject timestamps outside your tolerance (the official SDKs default to 300 seconds).
Example
t=1760961600,v1=186aa47526353adc39a808f8e0bd84f501a5a6a1f483572b1f8a3eab3ed44cc8Same as event_id in the body. Delivery is at-least-once — deduplicate on this value.
One delivery per event and endpoint; the id stays the same across retries.
1 for the first attempt, incremented on every retry.
Request Bodyrequired
Section titled “Request Bodyrequired”Body of the payment_intent.created webhook.
object
object
object
object
Decimal amount in currency.
Hosted checkout URL for the customer.
Responses
Section titled “Responses”Any 2xx response within 10 seconds marks the delivery as succeeded. The response body is only kept as a short excerpt for troubleshooting.
default
Section titled “default”Any other outcome — a non-2xx status, a redirect (never followed), a timeout or a network error — is retried with exponential backoff (base × 2^(attempt − 1), capped at 6 hours, with 50–100% jitter; 10 attempts in the default configuration) and then moved to the dead-letter queue. 410 Gone stops retries immediately.