Bulk SMS gateway for Kenya

Bulk SMS for Kenya, built for developers.

Send campaigns, OTPs and transactional alerts across Safaricom, Airtel and Telkom. A real API and SDK, prepaid M-Pesa top-ups, and your own sender ID live in 48 hours.

Pay as you go from KES 0.30 per SMS. No monthly fees, no contracts.

send-otp.ts
import { Pesarails } from "@pesarails/sms";

const sms = new Pesarails(process.env.PESARAILS_KEY);

await sms.send({
  to: "254712345678",
  sender: "PESARAILS",
  message: "Your code is 4821",
});
// => { status: "sent", id: "a1b2c3" }
Delivered to 254712345678 DeliveredToTerminal in 0.4s
3Networks: Safaricom, Airtel, Telkom
99%Delivery on valid numbers
48hTypical sender ID turnaround
0.30KES per SMS at volume

Before your first broadcast

Four things to send a broadcast

No jargon. This is everything you need to send your first bulk SMS campaign in Kenya.

1

A sender ID

Your brand name shown as the sender, for example PESARAILS. We register it with the networks.

2

SMS credit

Top up your prepaid balance with M-Pesa or Paystack. Credit is debited per message.

3

Your recipients

A list of Kenyan numbers. We clean the format and route to the right network automatically.

4

Your message

Up to 160 characters per SMS, or use a template with variables. Send now or schedule it.

Why PESA RAILS

Everything a Kenyan sender needs, in one gateway

A real API and SDK

Clean REST endpoints and a typed SDK, not a bolted-on afterthought. Ship your integration in an afternoon.

M-Pesa top-ups

Fund your balance instantly with M-Pesa or Paystack. Pay only for what you send, prepaid.

Sender IDs in 48 hours

Your branded sender name registered across all networks, usually live within two days.

Delivery reports

Real-time delivery status by webhook or API, so you always know what landed and what did not.

Scheduling and templates

Queue messages for later and reuse templates with variables for OTPs, receipts and reminders.

OTP and transactional

A dedicated path for one-time passwords and payment alerts, kept separate from campaigns.

For developers

Send your first SMS in five minutes

Most Kenyan resellers give you a form and a thin API. We give you a documented REST API, a typed SDK, webhooks and idempotent sends, the things you actually need in production.

curl
# Send to many recipients in one call
curl https://api.sms.pesarails.com/v1/messages/bulk \
  -H "Authorization: Bearer $PESARAILS_KEY" \
  -d '{
    "sender": "PESARAILS",
    "messages": [
      { "to": "254712345678", "text": "Hi Alice" },
      { "to": "254722000111", "text": "Hi Bob" }
    ]
  }'
Coming soon

WhatsApp Business messaging

Reach customers on WhatsApp from the same API, the same balance and the same dashboard. Rolling out to PESA RAILS soon.

Transparent pricing

Prices that drop as you grow

No hidden fees. The more you send, the less each SMS costs. Published, not quote-only.

Startups & small campaigns

KES0.50/SMS

1 - 5,000 messages

Growing businesses

KES0.35/SMS

5,001 - 50,000 messages

Enterprise & resellers

KES0.30/SMS

50,001 and above messages

Custom sender ID: one-off KES 7,000. See the full pricing breakdown

Reseller program

Run your own bulk SMS business

Buy SMS at wholesale, set your own prices, and bill your clients. We give you the API, the sender IDs and the delivery infrastructure. You own the brand and the margin.

  • Wholesale rates with clear margins
  • Per-client accounts, credit and usage
  • Your own sender IDs across all networks
  • M-Pesa and Paystack collection built in
Talk to us about reselling

PESA RAILS vs a typical reseller

Documented API and SDKIncludedRare
Self-service M-Pesa top-upInstantManual
Sender ID turnaround48 hours3-14 days
Published pricingYesQuote only
Delivery-report webhooksYesOften not

Questions

Bulk SMS in Kenya, answered

How much does bulk SMS cost in Kenya?

Pay as you go from KES 0.50 per SMS, dropping to KES 0.35 above 5,000 messages and KES 0.30 above 50,000. There are no monthly fees. A custom sender ID is a one-off KES 7,000.

How do I get an SMS sender ID in Kenya?

Three things: pay the one-off KES 7,000 fee, send your certificate of incorporation, and tell us the sender name you want (up to 11 characters). Most sender IDs are live within 48 hours, and at most 4 days.

Which networks can I reach?

Safaricom, Airtel and Telkom, so you reach every mobile phone in Kenya from one API and one balance.

Do you have an API and an SDK?

Yes. A clean REST API, a typed SDK, delivery-report webhooks, scheduling and templates, with real documentation. You can send your first SMS in about five minutes.

Can I pay with M-Pesa?

Yes. Top up your prepaid balance instantly with M-Pesa or Paystack, straight from the dashboard. Credit is debited per message as you send.

Can I send OTPs and transactional alerts?

Yes. There is a dedicated OTP and transactional path for payment alerts, receipts and login codes, separate from promotional campaigns.

Start sending in minutes

Create an account, top up with M-Pesa, and send your first SMS today.