Webhooks Overview
Webhooks let your server react to events that happen out-of-band — most importantly, when a payment confirms on-chain. They are the reliable signal for fulfillment.
How it works
Section titled “How it works”- You register an endpoint URL via
POST /v1/webhook_endpoints, specifying which events you want. - ParaSta returns a signing
secret. Save it — it cannot be retrieved later. - When an event occurs, ParaSta
POSTs a JSON payload to your URL with theX-ParaSta-Signatureheader. - You verify the signature, check
event.idfor idempotency, then process.
Payload shape
Section titled “Payload shape”{ "id": "evt_abc123", "type": "checkout.session.completed", "created": "2026-05-06T10:32:01Z", "data": { "object": { /* the relevant object — Checkout Session, Payment, etc. */ } }, "livemode": false}Best practices
Section titled “Best practices”- Respond
2xxwithin 10 seconds. ParaSta retries non-2xxresponses. - Be idempotent. Use
event.idas a dedupe key — the same event may be delivered multiple times. - Handle out-of-order delivery. Especially
payment.pendingandpayment.succeeded— design your state machine to accept events in any order.