SMS API for Pakistan: bulk SMS to +92 numbers
Pakistan
Calling code +92
- Per SMS segment
- $0.04197
- Messages for $100
- 2,382
- Local language
- Urdu and English
- Encoding
- Unicode (UCS-2)
What a bulk SMS send to Pakistan costs
| Messages | 1 segment | 2 segments |
|---|---|---|
| 1 | $0.04197 | $0.08394 |
| 1,000 | $41.97 | $83.94 |
| 10,000 | $419.70 | $839.40 |
| 100,000 | $4,197.00 | $8,394.00 |
Number format in Pakistan
Mobile numbers in Pakistan have 10 digits after +92. Locally they are written with a leading 0 (0301 2345678); in the API that 0 is dropped, so the same number goes in the to field as +92 301 2345678.
Alphabet and segments
Text in Urdu (Arabic script) is always Unicode, so a message to Pakistan written in Urdu 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
Pakistan keeps UTC+5 all year with no clock change, so 09:00 in Karachi is always 04:00 UTC. send_at takes UTC or any ISO 8601 offset, and the console scheduler converts from your own time zone.
Send to Pakistan with one request
The answer comes back at once with the message id, the country the number was matched to (PK) 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": "+923012345678", "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: "+923012345678", text: "Your Northwind code is 482913. It expires in 10 minutes." }),
});
console.log(await res.json()); // price: "0.04197", country: "PK"import json, os, urllib.request
req = urllib.request.Request(
"https://bulksmsapi.cc/v1/messages",
data=json.dumps({"to": "+923012345678", "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.04197"What developers send to Pakistan
Transaction alerts
Banks in Karachi send SMS alerts for every transaction, ensuring customers know when money moves in or out of their accounts.
Ride updates
Ride-hailing apps in Lahore notify passengers by SMS when their driver is arriving or delayed.
Order notifications
E-commerce platforms in Islamabad notify customers by SMS when their orders are shipped or delivered.
Appointment reminders
Clinics in Peshawar send SMS reminders to patients about their upcoming appointments to reduce no-shows.
More countries in South Asia
SMS to Pakistan: questions
More answers on accounts, payments and the API are in the FAQ.
How much does it cost to send bulk SMS to Pakistan?
How many SMS to Pakistan does a $100 top-up send?
How do I write Pakistan numbers for the API?
What language should SMS messages be in for Pakistan?
Are there seasonal peaks in SMS traffic in Pakistan?
Start sending to Pakistan
Create an account, top up from $40 and send to Pakistan at $0.04197 per segment, from the console or with one API call.