Paying for an SGR ticket with M-PESA, and the timer nobody warns you about
By Dennis Kiptoo · Madaraka Express hub · paybillke is an independent guide and is not affiliated with Madaraka Express.
The SGR paybill is 809888, and the account number is the booking reference the system generates for you — not your phone number, not your ID. The part that catches people is the clock: if you pay by the PIN prompt that pops up after booking, you have about two minutes before the seat is released. If you pay by paybill transfer instead, you have 30 minutes.
Why the account number is not yours to invent
On most paybills you already know the account: a meter number, a smartcard, an admission number. SGR is different. The account number does not exist until you book. You make the booking first, the system issues a reference, and that reference is what goes in the account field.
Kenya Railways confirms this from the other direction in its own FAQ. If the confirmation SMS never arrives, it tells you to print the ticket using “the account number on your Mpesa transaction message and the phone number used to pay”. That only works because the account number was issued by the booking, tied to you, and recorded on both sides.
So the order matters: book, then pay. Sending money to 809888 before you have a booking gives the payment nothing to attach to.
The two payment routes, and the two different clocks
Kenya Railways' own payments page describes two M-PESA routes with two very different windows.
Route 1, the PIN prompt. After booking online or on *639#, a prompt arrives and you enter your M-PESA PIN. Kenya Railways states passengers get “at most 2mins to pay up, or ticket will be cancelled”. Two minutes is not long enough to go and find your PIN. Have it ready before you finish the booking.
Route 2, the paybill transfer. You make a Pay Bill transfer to the Kenya Railways paybill after booking, using the booking reference as the account. Here Kenya Railways states “at most 30mins to pay up, or ticket will be cancelled”.
That is the practical reason to know the paybill at all: it buys you fifteen times as long.
Pay by paybill, step by step
- Complete the booking first, online at metickets.krc.co.ke or on *639#, and note the reference it gives you.
- On M-PESA choose Lipa na M-PESA, then Pay Bill.
- Business number: 809888.
- Account: the booking reference from step 1, exactly as issued.
- Enter the exact fare, then your PIN.
- Read the confirmation SMS before closing it and keep the M-PESA code. If the Kenya Railways confirmation never arrives, that M-PESA message is what lets you print the ticket at the station.
Kenya Railways does not publish this number, and that matters
Worth being straight about: neither krc.co.ke nor metickets.krc.co.ke names the paybill anywhere we could find. The payments page says only that you can “make a paybill transfer to our Paybill No”, without giving it.
That gap is why the number circulates by word of mouth, and why wrong numbers circulate with it. We publish 809888 because it was confirmed by the site owner on 13 September 2026 and it matches our manifest record. We are telling you where it came from so you can weigh it, rather than presenting it as though Kenya Railways had printed it.
Before sending a large amount, check the recipient name on the M-PESA confirmation screen. If it does not read as Kenya Railways, stop.
The site's own FAQ contradicts its payments page
One more inconsistency you should see rather than trip over. The metickets FAQ answers “Modes of Payment” twice, at question 6 and again at question 15, and both times it says payment is M-PESA through a SIM toolkit only, plus POS over the counter.
The same site's payments page describes the paybill-transfer route with its 30-minute window. One of those pages is out of date. We cannot tell you which, so we have described both.
Credit and debit cards are not accepted. Both sources agree on that, and the payments page says card options are “coming soon”.
What it costs you on top
Buy from Kenya Railways, nobody else
Kenya Railways puts this warning in its own FAQ, in bold: "Do not keep in contact with any individual seeking to sell you tickets using other ways or means." There are exactly three legitimate channels, and they are listed on this page. A ticket is not transferable and the ID on the ticket must match the person travelling, so a ticket bought in somebody else's name is a ticket you cannot board with.
If someone offers you a seat on a sold-out train for a fee, what they are selling you cannot work.
| Route | How you pay | Time you get | Source |
|---|---|---|---|
| PIN prompt (STK) | Prompt arrives after booking; enter M-PESA PIN | About 2 minutes | metickets.krc.co.ke payments page |
| Paybill transfer | Lipa na M-PESA, Pay Bill, 809888, account = booking reference | About 30 minutes | metickets.krc.co.ke payments page |
| POS at the counter | Card or M-PESA at the station till | While you stand there | metickets.krc.co.ke FAQ 6 and 15 |
| Credit or debit card online | Not accepted | n/a | krc.co.ke FAQ 9 |
Frequently asked
What is the SGR paybill number?
809888. The account is the booking reference the system issues when you book, not your phone number or ID.
Why did my SGR booking get cancelled before I could pay?
The PIN-prompt route gives you roughly two minutes before the seat is released. The paybill transfer route gives you 30. If you keep losing seats, book first, then pay by paybill.
Can I pay for SGR before booking?
No. The account number is the booking reference, and it does not exist until the booking does. Book first.
Does Kenya Railways publish the paybill on its website?
Not that we could find. The payments page refers to “our Paybill No” without giving it. We publish 809888 as owner-confirmed on 13 September 2026.
Can I pay for an SGR ticket by card?
No. Kenya Railways says it does not accept credit or debit cards at the moment, and describes card options as coming soon.
I paid but got no confirmation message.
Take the M-PESA message to any Madaraka Express station. Keying in the phone number you paid from and the account number in that message lets staff print the ticket.