Barker uses webhooks for asynchronous, two-way communication.Documentation Index
Fetch the complete documentation index at: https://docs.barker.money/llms.txt
Use this file to discover all available pages before exploring further.
- Outbound — we POST events to your endpoint (engine deployed, fee accrued, etc.)
- Inbound — your system POSTs events to us (user KYC update, off-chain reconciliation, etc.)
Outbound (Barker → you)
Configure
In Portal → Webhooks:- Add a destination URL (HTTPS only)
- Choose event types to subscribe
- Copy the outbound secret — shown once, used by you to verify signatures
Delivery guarantee
- 3 attempts with exponential backoff: 30s → 120s → 600s
- We consider 2xx as success; anything else triggers retry
- After 3 failed attempts, status flips to
failed. You can replay from the portal - Each delivery has a unique
event_id— use it for idempotency on your side
Headers
Verify (Node.js)
Verify (Python)
Inbound (you → Barker)
Send events to us when something on your side affects a Barker user (KYC pass, off-chain settlement confirmed, etc.).Endpoint
Headers
Body
Supported event types
event_type | When to send |
|---|---|
partner.user.created | A user signed up on your side and is about to interact with a Barker engine |
partner.user.kyc_updated | User’s KYC tier changed |
partner.reconciliation.confirmed | Off-chain transfer reconciled (used for hybrid fiat → on-chain flows) |
Response
| Status | Meaning | Should you retry? |
|---|---|---|
200 received | New event recorded | No |
200 duplicate | Same idempotency_key already processed | No |
400 unsupported_event | event_type not in catalog | No (fix and resend) |
401 invalid_signature | HMAC mismatch | Check secret; do not retry blindly |
5xx | Our problem | Yes, with backoff |
Sign (Node.js)
Replay protection
We dedupe byX-Idempotency-Key per partner. Sending the same key twice returns 200 duplicate without re-processing the payload — safe to retry on network errors.