Skip to content
Tornad Business Solutions Ltd
Technology

M-Pesa Daraja API for E-Commerce: STK Push vs Paybill vs C2B Explained

Tornad Editorial Team 2 min read

Over 80% of Kenyan e-commerce traffic checks out on a phone, and for most of those shoppers, "pay" means M-Pesa. The Safaricom Daraja API exposes several ways to accept that payment, and choosing the right one materially affects your conversion rate.

STK Push (Lipa Na M-Pesa Online)

The customer enters their phone number at checkout, your platform triggers an STK Push request via Daraja, and an M-Pesa PIN prompt appears directly on their phone. This is the closest experience to a card checkout — no app switching, no memorising a till number — and it typically converts best for one-off online purchases.

Paybill / C2B (Customer to Business)

The customer initiates payment themselves from their M-Pesa menu using your Paybill number and an account reference. Daraja delivers a callback confirming payment. This suits customers who are more comfortable paying manually, or businesses collecting recurring payments like rent or school fees.

B2C (Business to Customer)

Less relevant at checkout, but essential on the other side of the transaction — refunds, supplier payments, and payroll disbursement all move through B2C.

What actually breaks in practice

The failure points are rarely the API itself — they're callback handling. If your platform doesn't reliably process the asynchronous confirmation callback, orders get marked unpaid when they were actually successful, or stock gets reserved for a payment that never completed.

Every Tornad E-Commerce platform ships with STK Push, Paybill C2B, and card payments built in, with reconciled callback handling so an order's payment status is always accurate.

#Kenya #M-Pesa #E-Commerce
T

Tornad Editorial Team

Product & Compliance Desk

Keep Reading

Related articles

Ready to put this into practice?

Talk to our team about payroll, HR, ERP, or custom software built for your business.