BchainPayBchainPay

Webhooks


title: "Webhooks" description: "Signed event notifications you can rely on. Retried for 30 days with exponential backoff." section: "Concepts" order: 4 updated: "2026-04-18" sourcePath: "content/docs/concepts/webhooks.mdx"

BchainPay POSTs signed JSON events to a URL you configure. Use them to fulfill orders, reconcile ledgers, and trigger downstream automation. Webhooks are an optimization — the API is always the source of truth.

Delivery guarantees

  • At-least-once. A successful 2xx response acknowledges delivery.
  • 30-day retry queue with exponential backoff and jitter. Failed deliveries are surfaced in the dashboard.
  • Per-merchant signing secret on every event. See Verify a webhook.
  • Replay protection via the t= timestamp. Reject anything older than 5 minutes.

Idempotency on your side

We may deliver the same event more than once. Use the id field on the event envelope as a deduplication key.

Configuring an endpoint

Add an HTTPS endpoint in the dashboard, choose the events you want, and copy the per-endpoint signing secret. You can subscribe to specific event types or to all events.

Last updated Edit on GitHub