Skip to Content
GuidesSender IDs

Sender IDs

The Sender ID is the name on the recipient’s screen where a phone number would normally be. It decides how much people trust the message — and, importantly, which networks it can reach.

The shared Sender ID

Every account can send immediately, without registering anything, using the shared WakaliLabs Sender ID. Your company name is automatically put at the front of the message so recipients know who it’s from:

WakaliLabs Acme Traders: Your booking for Friday is confirmed.

The shared Sender ID is registered on Safaricom only. Messages to Airtel and Telkom numbers may not be delivered. If you send to all three networks, register your own Sender ID for the ones you need.

That prefix counts toward the message length, which can push a message over a part boundary — see the billing note below.

Your own Sender ID

A registered Sender ID replaces the shared one: up to 11 characters, no prefix added, and your brand on every message.

ACMETRADERS Your booking for Friday is confirmed.

Each registration is per network. Registering ACMETRADERS on Safaricom doesn’t make it work on Airtel; that’s a separate registration with its own one-time fee.

Request it

From Sender IDs in the dashboard, choose a name (2–11 characters, letters and numbers) and the network.

Upload your documents

You’ll need a Business Registration Certificate, a KRA PIN certificate, and two signed letters. We provide pre-filled templates for the letters — print, sign, scan, upload.

Pay the network fee

A one-time fee per network, charged by the carrier, not by us. There’s no renewal.

Wait for activation

Usually 24 to 72 hours. We email you when it’s live, and it then appears in the dashboard and can be passed as sender_id.

Choosing which one is used

Leave sender_id out and we use your default — your registered Sender ID if you have one, otherwise the shared name:

curl -X POST https://api.wakalisms.com/sms/send -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" -d '{"recipients":["+254712345678"],"message":"Your booking is confirmed."}'

Or name one explicitly:

curl -X POST https://api.wakalisms.com/sms/send -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" -d '{"recipients":["+254712345678"],"message":"Your booking is confirmed.","sender_id":"ACMETRADERS"}'

Checking coverage before you send

POST /sms/coverage tells you which networks a list of recipients falls on and which of them your Sender ID probably can’t reach. It costs nothing and sends nothing:

curl -X POST https://api.wakalisms.com/sms/coverage -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" -d '{"recipients":["0712345678","0733123456","0770123456"],"sender_id":"ACMETRADERS"}'
{ "sender_id": "ACMETRADERS", "sender_networks": ["safaricom"], "total": 3, "by_network": [ { "network": "safaricom", "label": "Safaricom", "count": 1, "covered": true }, { "network": "airtel", "label": "Airtel", "count": 1, "covered": false }, { "network": "telkom", "label": "Telkom", "count": 1, "covered": false } ], "unreachable_count": 2, "unreachable_sample": ["+254733123456", "+254770123456"], "warning": "2 of 3 numbers don't look like Safaricom numbers. ..." }

covered is true, false, or null when we can’t tell — a smaller operator, or a range too new to identify. We never refuse a send because of this. A ported number can arrive even when it looks like it won’t, and a booking confirmation that doesn’t go out is worse than one the carrier bounces.

Every message also records the network it went to, visible in your dashboard and on GET /sms/messages as carrier.

How this affects cost

With the shared Sender ID, your company name is prefixed to the body, and billing is calculated on the final message. A long company name can push a message from one part to two, doubling its cost. A registered Sender ID adds nothing to the body.

Choosing a good name

  • Make it recognisably yours — ACMETRADERS, not INFO or ALERTS
  • Letters and numbers only, 2 to 11 characters, no spaces
  • Avoid anything implying you’re a bank, the government, or another company; carriers reject those
  • It can’t be changed once approved, so pick the one you’ll want in two years
Last updated on