Webhooks
Payloads
Every delivery has the same envelope; data depends on the event.
{
"id": "0199c1e9-3b4d-7f20-a1c6-5e7f8a9b0c1d",
"event": "payment.status_changed",
"created_at": "2026-11-02T10:24:37+01:00",
"data": {
"code": "Kx7pR2mQ9a",
"url": "https://el-b.com/pay/Kx7pR2mQ9a",
"label": "Order #1042",
"status": "awaiting_confirmation",
"amount_dzd": 45000,
"received_amount_dzd": null,
"credit_cost": 4,
"credit_state": "charged",
"join_mode": "verified",
"payment_information": {
"deliverable": "iPhone 13, 128 GB, used",
"fulfillment_target": "Hand delivery in Bab Ezzouar, Algiers",
"platform": "Facebook Marketplace",
"recipient_handle": "Phone Store DZ"
},
"sender": {
"name": "Yacine Belkacem",
"is_guest": false,
"verified": true
},
"reference_number": "418306259147",
"termination_reason": null,
"auto_confirmed": false,
"receipt_url": null,
"created_at": "2026-11-02T10:12:03+01:00",
"claimed_at": "2026-11-02T10:14:51+01:00",
"transfer_expires_at": "2026-11-02T10:31:22+01:00",
"reference_submitted_at": "2026-11-02T10:24:37+01:00",
"refusable_at": "2026-11-04T10:24:37+01:00",
"auto_confirms_at": "2026-11-05T10:24:37+01:00",
"finalized_at": null,
"terminated_at": null,
"previous_status": "transfer_window"
}
} The envelope
- idstring
The delivery's id, also in
X-ElB-Delivery. The same in every retry. - eventstring
The event's name.
- created_atdatetime
When the event happened. Retries keep it.
- dataobject
The event's payload, below.
The data
| Events | data |
|---|---|
payment.* | The payment object, as it was when the delivery was prepared. |
payment.status_changed | The payment object and previous_status. |
credits.low | free_credits, paid_credits and available_credits. |
webhook.test | A message and the endpoint's webhook_id. |
Never included
Payloads carry what the API returns, nothing more: no RIP, no identity data, nothing about the sender beyond their name, whether they are a guest and whether their account is verified, and never the sender's description of the deal.