Jaza-Signature header. Verify and parse with @jazadev/node.
Dashboard setup
- Open your app → App Settings → Webhooks
- Add an endpoint URL (
https://…) - Choose events (Top-up and/or Consumption)
- Copy the signing secret once (
whsec_…) — shown on create or rotate - Enable or disable endpoints without deleting them
apps.webhookUrl field is deprecated; use multi-endpoint webhooks instead.
Event catalog
Top-up
Consumption
Payload shape (conceptual):
Signature
Header:`${t}.${rawBody}` with your endpoint secret.
Verify with Node
constructEvent checks the timestamp tolerance (default 5 minutes) and returns a typed { id, type, created, data } object, or throws JazaError.
You can also import constructEvent / WEBHOOK_EVENT_TYPES from @jazadev/node directly.
Operational tips
- Return 2xx quickly; do heavy work async
- Idempotent handlers: key off
event.id - Rotate secrets in the dashboard when leaked; update your env var
- Sandbox (
jz_test_*) and live (jz_live_*) apps are isolated — register endpoints per environment as needed