SMS API for Ukraine: bulk SMS to +380 numbers
Ukraine
Calling code +380
- Per SMS segment
- $0.01467
- Messages for $100
- 6,816
- Local language
- Ukrainian
- Encoding
- Unicode (UCS-2)
What a bulk SMS send to Ukraine costs
| Messages | 1 segment | 2 segments |
|---|---|---|
| 1 | $0.01467 | $0.02934 |
| 1,000 | $14.67 | $29.34 |
| 10,000 | $146.70 | $293.40 |
| 100,000 | $1,467.00 | $2,934.00 |
Number format in Ukraine
Mobile numbers in Ukraine have 9 digits after +380. Locally they are written with a leading 0 (050 123 4567); in the API that 0 is dropped, so the same number goes in the to field as +380 50 123 4567.
Alphabet and segments
Text in Cyrillic is always Unicode, so a message to Ukraine written in Ukrainian 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
Ukraine spans several time zones, from UTC+2 in Kyiv to UTC+3 in Simferopol (January offsets). A send_at of 07:00 UTC lands at 09:00 in Kyiv in January; for a nationwide reminder, split the list by region and give each batch its own send_at.
Send to Ukraine with one request
The answer comes back at once with the message id, the country the number was matched to (UA) 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": "+380501234567", "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: "+380501234567", text: "Your Northwind code is 482913. It expires in 10 minutes." }),
});
console.log(await res.json()); // price: "0.01467", country: "UA"import json, os, urllib.request
req = urllib.request.Request(
"https://bulksmsapi.cc/v1/messages",
data=json.dumps({"to": "+380501234567", "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.01467"What developers send to Ukraine
Delivery updates
Courier services in Kyiv send SMS notifications to customers about the status of their package deliveries.
Payment confirmations
Banks in Lviv send SMS alerts to customers confirming successful transactions or account activity.
Appointment reminders
Clinics in Odesa send SMS reminders to patients about upcoming doctor appointments or test schedules.
Event tickets
Concert organizers in Kharkiv send SMS confirmations to ticket buyers with event details and QR codes.
More countries in Central and Eastern Europe
SMS to Ukraine: questions
More answers on accounts, payments and the API are in the FAQ.
How much does it cost to send bulk SMS to Ukraine?
How many SMS to Ukraine does a $100 top-up send?
How do I write Ukraine numbers for the API?
Should SMS messages in Ukraine be in Ukrainian or Russian?
Are there seasonal peaks in SMS traffic in Ukraine?
Start sending to Ukraine
Create an account, top up from $40 and send to Ukraine at $0.01467 per segment, from the console or with one API call.