In the sandbox, eSMS Africa simulates the full delivery lifecycle and calls your webhook exactly as production would — so you can build and verify your delivery-report handling with test keys.
What you receive
After a simulated send, we POST a signed JSON payload to your configured webhook URL. Test events carry "livemode":false and "environment":"test":
{
"event": "message.delivered",
"message_id": "test_ff13a...",
"status": "delivered",
"segments": 1,
"encoding": "GSM7",
"environment": "test",
"livemode": false
}
Verify the signature
Every webhook is signed with HMAC-SHA256 over the raw body. Validate the signature header before trusting a payload — the same check works for test and live events.
Simulate failures
Combine webhooks with magic numbers: send to a number ending …0000 to receive an undelivered webhook, or …0003 for a failed event.
Safe by default
Webhook URLs that resolve to private or internal addresses are blocked for your protection, in both test and live mode.