SMS API for Ethiopia: bulk SMS to +251 numbers
Ethiopia
Calling code +251
- Per SMS segment
- $0.06157
- Messages for $100
- 1,624
- Local language
- Amharic and other Ethiopian languages
- Encoding
- Unicode (UCS-2)
What a bulk SMS send to Ethiopia costs
| Messages | 1 segment | 2 segments |
|---|---|---|
| 1 | $0.06157 | $0.12314 |
| 1,000 | $61.57 | $123.14 |
| 10,000 | $615.70 | $1,231.40 |
| 100,000 | $6,157.00 | $12,314.00 |
Number format in Ethiopia
Mobile numbers in Ethiopia have 9 digits after +251. Locally they are written with a leading 0 (091 123 4567); in the API that 0 is dropped, so the same number goes in the to field as +251 91 123 4567.
Alphabet and segments
Text in Ge'ez is always Unicode, so a message to Ethiopia written in Amharic carries 70 characters in one segment and 67 in each part of a longer one. Codes and alerts written in English or plain Latin letters fit 160 characters, which halves the cost of a long notice.
Time zone and timing
Ethiopia keeps UTC+3 all year with no clock change, so 09:00 in Addis Ababa is always 06:00 UTC. send_at takes UTC or any ISO 8601 offset, and the console scheduler converts from your own time zone.
Send to Ethiopia with one request
The answer comes back at once with the message id, the country the number was matched to (ET) and the price. A delivered or failed event follows on your webhook, and a failed message is refunded.
For a list, send the same text to up to 10,000 numbers with POST /v1/batches, or a personal text per number in messages.
curl https://bulksmsapi.cc/v1/messages \
-H "Authorization: Bearer $BULKSMSAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"to": "+251911234567", "text": "Your Northwind code is 482913. It expires in 10 minutes."}'const res = await fetch("https://bulksmsapi.cc/v1/messages", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.BULKSMSAPI_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({ to: "+251911234567", text: "Your Northwind code is 482913. It expires in 10 minutes." }),
});
console.log(await res.json()); // price: "0.06157", country: "ET"import json, os, urllib.request
req = urllib.request.Request(
"https://bulksmsapi.cc/v1/messages",
data=json.dumps({"to": "+251911234567", "text": "Your Northwind code is 482913. It expires in 10 minutes."}).encode(),
headers={"Authorization": "Bearer " + os.environ["BULKSMSAPI_KEY"], "Content-Type": "application/json", "User-Agent": "northwind-app/1.0"},
method="POST",
)
with urllib.request.urlopen(req) as res:
print(json.load(res)["price"]) # "0.06157"What developers send to Ethiopia
Login codes
When users in Addis Ababa log into their mobile banking app, they receive a one-time code via SMS for secure access.
Payment alerts
After completing a transaction in a ride-hailing app, users in Dire Dawa receive a confirmation SMS with payment details.
Exam reminders
Students at universities in Bahir Dar receive SMS notifications about upcoming exam dates and room assignments.
Order updates
Customers in Hawassa receive SMS alerts when their online orders are dispatched from the local warehouse.
More countries in East and Southern Africa
SMS to Ethiopia: questions
More answers on accounts, payments and the API are in the FAQ.
How much does it cost to send bulk SMS to Ethiopia?
How many SMS to Ethiopia does a $100 top-up send?
How do I write Ethiopia numbers for the API?
Which language should SMS messages be in?
How can SMS reach rural areas?
Start sending to Ethiopia
Create an account, top up from $40 and send to Ethiopia at $0.06157 per segment, from the console or with one API call.