EaserixDocs
DevelopersAPI referenceSignPayments

Stripe webhook (payments at signing)

Called by Stripe only — there is no session, and the request is authenticated by the Stripe-Signature header (t=<unix time>,v1=<hex HMAC-SHA256 of "<t>.<raw body>">) checked over the raw body, against every configured signing secret (the platform endpoint and the Connect endpoint have different ones), before the body is parsed. A delivery more than five minutes from now is refused. Each event is claimed by its id in the same transaction that applies it, so a redelivery changes nothing and a failed apply rolls the claim back. A payment's status only moves along the allowed transitions, and a terminal state (canceled, refunded) never moves again, so out-of-order delivery is harmless. An event about something this service does not know is acknowledged with 200 so Stripe stops retrying it. Only a failure a retry could fix (500, including an event that arrived before the row it depends on) asks for redelivery.

View as Markdown
POST
/webhooks/stripe

Header Parameters

Stripe-Signature*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/webhooks/stripe" \  -H "Stripe-Signature: string" \  -H "Content-Type: application/json" \  -d '{}'
{  "ok": true}