M-Pesa STK Push at the counter: what happens between “Pay” and the receipt

2 min read · 5 September 2025 · updated 29 August 2026

A customer confirming an M-Pesa payment on their phone at a counter

STK Push is the M-Pesa payment where the customer never types your number: the cashier enters theirs, a prompt appears on their phone, they enter their PIN, and the sale is paid. It is the fastest way through a queue, and most of the time it feels like one step. It is actually five, and the moments where it stalls are always in the same two places.

The five steps

  1. The cashier sends the request. The sale is on screen, the total is fixed, the customer's number is typed or picked from their customer record.
  2. Safaricom checks it — that your business is set up for prompts and the number is valid — and pushes the prompt to the customer's handset.
  3. The customer enters their PIN. This is the first place things stall: a phone that is off, a locked screen, a mistyped PIN, or a customer who simply did not notice the prompt.
  4. Safaricom moves the money and sends the confirmation back with the M-Pesa receipt number.
  5. The till marks the sale paid, records the receipt number on it, and prints. This is the second place things stall: the confirmation is on its way but the shop's connection is not there to receive it.

What the cashier should do when it stalls

  • No prompt arrived: resend once. If the phone is off or out of airtime, switch the sale to the manual code — the customer pays your Till or Paybill and reads you the code.
  • Customer entered the PIN but the screen is still waiting: ask for the SMS. If M-Pesa confirmed it, enter that code on the sale; the money is already yours. Do not send a second prompt — that is how customers get charged twice.
  • Wrong PIN or cancelled: the prompt simply fails; send it again.

The rule that keeps every shop out of trouble: goods leave when the screen says paid, not when the customer says so.

Why the receipt number matters

The M-Pesa receipt number on the sale is what settles any dispute and what makes the evening count a comparison, not a search. A sale without it is a sale you will be reading SMS to find.

Setting it up

STK Push needs your business to be enabled for it by Safaricom; your M-Pesa business account gives you the details, and they are entered once under payment settings. Until then, the manual code works everywhere, including when the internet is down — see the full guide to M-Pesa at the till.

NodePoint Retail POS handles both on the same sale, shows the receipt number on the printed receipt, and lists M-Pesa separately in the cashier's cash-up. The restaurant and hotel apps settle bills and folios the same way.

Available in Kenya, Uganda, Tanzania and Rwanda. Questions? Contact us.

Related reading

All guides →