SMS API for Zimbabwe: bulk SMS to +263 numbers
Zimbabwe
Calling code +263
- Per SMS segment
- $0.01667
- Messages for $100
- 5,998
- Local language
- English
- Encoding
- GSM-7
What a bulk SMS send to Zimbabwe costs
| Messages | 1 segment | 2 segments |
|---|---|---|
| 1 | $0.01667 | $0.03334 |
| 1,000 | $16.67 | $33.34 |
| 10,000 | $166.70 | $333.40 |
| 100,000 | $1,667.00 | $3,334.00 |
Number format in Zimbabwe
Mobile numbers in Zimbabwe have 9 digits after +263. Locally they are written with a leading 0 (071 234 5678); in the API that 0 is dropped, so the same number goes in the to field as +263 71 234 5678.
Alphabet and segments
English text stays inside the GSM-7 alphabet, so one segment to Zimbabwe holds 160 characters and each part of a longer text 153. Watch for curly quotes and emoji copied from other tools: one of them moves the whole text to Unicode at 70 characters per segment, and POST /v1/estimates shows the encoding before you send.
Time zone and timing
Zimbabwe keeps UTC+2 all year with no clock change, so 09:00 in Harare is always 07:00 UTC. send_at takes UTC or any ISO 8601 offset, and the console scheduler converts from your own time zone.
Send to Zimbabwe with one request
The answer comes back at once with the message id, the country the number was matched to (ZW) 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": "+263712345678", "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: "+263712345678", text: "Your Northwind code is 482913. It expires in 10 minutes." }),
});
console.log(await res.json()); // price: "0.01667", country: "ZW"import json, os, urllib.request
req = urllib.request.Request(
"https://bulksmsapi.cc/v1/messages",
data=json.dumps({"to": "+263712345678", "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.01667"What developers send to Zimbabwe
Payment confirmations
Mobile banking apps in Harare send SMS receipts to users after successful transactions.
Appointment reminders
Clinics in Bulawayo notify patients of upcoming appointments via SMS, reducing missed visits.
Exam schedules
Schools in Mutare send SMS alerts to students with exam dates and room assignments.
Delivery updates
E-commerce platforms in Gweru notify customers via SMS when their orders are dispatched.
More countries in East and Southern Africa
SMS to Zimbabwe: questions
More answers on accounts, payments and the API are in the FAQ.
How much does it cost to send bulk SMS to Zimbabwe?
How many SMS to Zimbabwe does a $100 top-up send?
How do I write Zimbabwe numbers for the API?
What language should SMS messages be in for Zimbabwe?
How does SMS work for rural areas in Zimbabwe?
Start sending to Zimbabwe
Create an account, top up from $40 and send to Zimbabwe at $0.01667 per segment, from the console or with one API call.