Transport is the sector M-PESA was arguably built for: micro-tickets (KES 40 to KES 300), high frequency, riders working alone, spotty network at some endpoints, and a cashout every evening. The rails that work are different from a shop or restaurant: speed of tap-to-pay and cash-recovery matter more than reconciliation reports.
What a transport operator actually needs from M-PESA
- Micro-tickets, zero customer friction. A passenger paying KES 60 for a matatu ride will not tolerate a KES 15 fee. The rail must be free to the sender at that band.
- Offline moments. Bus stages and rural drop-offs have variable network. The rider needs a workflow for "did it land" that does not require the M-PESA app to load.
- Cashout speed. Fuel, meals, and repairs are cash-first in the informal transport world. Same-day withdrawal from till to agent is a real requirement.
- Multi-crew handling. Matatu = driver + conductor. Tuk-tuk = one operator. Boda = one rider. Each shape has a different reconciliation surface.
- SACCO oversight. Matatu and boda SACCOs increasingly collect daily/weekly dues from members. The paybill or till doubles as an accountability layer.
Recommended setup: Pochi, till, or SACCO paybill
- Single-rider boda or taxi driver: Pochi la Biashara. Free, on your personal Safaricom line, activated on
*334#. Customers see your business label (e.g. "Steve Boda Riruta") not your phone number. See Pochi complete guide. - Two-plus rider fleet, or a matatu: Buy Goods till per vehicle. Owner is the till operator, drivers/conductors have read-only access via the operator PIN. Settles daily. See how to register a till.
- SACCO with 20+ vehicles: paybill with vehicle registration as account. Every fare or member subscription references the number plate. Central SACCO office reconciles nightly, distributes to members weekly.
- Ride-hailing (Uber, Bolt, Little). The app handles M-PESA integration; you receive weekly payouts from the platform, minus their commission. No till required.
Charges you will actually pay
For boda-scale tickets (mostly under KES 500):
- Pochi. Free for the customer under KES 500 (under the current promo). Merchant fee: zero at receipt. You pay to withdraw or send elsewhere.
- Buy Goods till. Free for the customer at any band. Merchant fee: KES 0 under 100, KES 5 for 101 to 500, KES 11 for 501 to 1,000, etc. See M-PESA charges 2026.
- Paybill. Customer pays a fee (KES 10 to KES 108 by band). Do not use as primary rail for boda or matatu.
Setup steps
Pochi (single rider):
- From your personal Safaricom line, dial
*334#. - Choose M-PESA, then Pochi la Biashara, then Register.
- Enter your business label (e.g. "Steve Boda"), accept terms, enter your PIN.
- Wait for the confirmation SMS. Ask a friend to send KES 10 to test.
Till (matatu / small fleet):
- Register the vehicle under your business name (limited company or sole proprietorship) with KRA PIN + county SBP.
- Apply for a Buy Goods till via m-pesaforbusiness.co.ke or a Safaricom Shop.
- Link the settlement bank account (business account).
- Print the till number on a laminated card, attach inside the matatu, above the door.
Reconciliation notes specific to transport
- Boda daily close. End of shift, check the Pochi statement on
*334#, note the day's M-PESA takings, add cash fares, subtract fuel + food, save the balance. Withdraw only what you need, keep the rest as a rolling float. - Matatu daily close. Owner pulls the till statement in the Business app at end-of-day. Compares against the driver's shift log (trips completed, cash + M-PESA split). Any variance over 5 percent flags for the next-day conversation.
- SACCO weekly settlement. Paybill statement CSV exports on a weekly cadence, distributed per number plate. Members can see their own line.
- Offline moments. If the passenger shows you a Safaricom prompt with the correct till label and the correct amount, treat as paid even before the SMS. If in doubt, dial
*234#to check the till balance change.
Common problems and how to fix them
- Passenger claims payment sent, no SMS. Ask for the M-PESA transaction ID. Check *234# option 5. If the sender network dropped, the SMS may follow. If the sender screen showed pending, it did not go through.
- Wrong till entered by a passenger. Passenger has to initiate the reversal through their own M-PESA (Safaricom 234). You may need to let them off with an IOU and follow up.
- Rider pockets M-PESA into personal number. This is why owner-operators register the till in the owner's name, not the driver's. Personal-phone diversion is the biggest source of loss in a matatu.
- Fuel-payment mismatch at the station. Station tills are per-pump. Confirm the correct pump-till before paying. Attendants can look up the transaction on their side if there is a dispute.
- SACCO dues not credited. Ask for the paybill account reference (usually number plate). Common cause: the passenger paid a fare to the SACCO paybill by mistake, dropping into an unallocated bucket.
KRA and county compliance for transport
- PSV licence (matatu, boda taxi). Issued by NTSA, renewed annually.
- County boda stage fee. Payable to the county, and every county uses a different number. Get it from the county revenue office or a stage official, and read the name on the M-PESA confirmation before sending. We are not publishing a Nairobi number here: the one this page carried belonged to an unrelated company.
- SBP / trade licence. Payable to the county annually if operating as a business.
- KRA turnover-tax. 3 percent of gross monthly turnover, above KES 1 million annual. iTax monthly by the 20th.
- SACCO membership. Compulsory in most counties for matatu operators; monthly dues are separate.
Worked examples
Boda rider on Pochi, Nairobi:
| Line | Monthly amount | Tickets | Avg ticket | M-PESA cost / ticket |
|---|---|---|---|---|
| Weekday takings (KES 1,800 x 26 days) | KES 46,800 | 260 | KES 180 | 0 |
| Weekend takings (KES 2,600 x 8 days) | KES 20,800 | 80 | KES 260 | 0 to KES 5 mixed |
| Total gross | KES 67,600 | 340 | KES 199 avg | ~0 on receipt |
Withdrawal to cash: rider might cash out KES 1,500 per day (KES 30 fee per withdrawal), so monthly withdrawal cost is roughly KES 900. Total M-PESA cost as share of takings: ~1.3 percent, entirely from withdrawal fees. Below KRA turnover-tax threshold, so no monthly filing.
Matatu on Buy Goods till, city-suburb route:
| Line | Amount | Avg ticket | Merchant fee / ticket |
|---|---|---|---|
| Rush-hour trips (KES 60 x 60 per day) | KES 3,600 / day | KES 60 | 0 |
| Off-peak (KES 40 x 40 per day) | KES 1,600 / day | KES 40 | 0 |
| Monthly gross | KES 156,000 | KES 50 avg | ~0 |
At KES 40 to 60 average ticket, most trips fall under the free 0-to-100 band, so the till merchant fee is close to zero. Bank settlement is T+1. Above KES 1M annual turnover, KRA turnover-tax at 3 percent kicks in, roughly KES 4,680/month on this matatu.
More business rail guides
Curated external sources we cite. Open in a new tab.
See also: Pochi complete guide · Parking payments hub · Business hub.