The short answer

The safest way to take M-Pesa at the till is an STK push: the POS sends the exact amount to the customer's phone, the customer enters their PIN, and the till shows the payment confirmed by Safaricom. Payments sent to your Buy Goods till or Paybill are matched to the bill on the till instead of read from an SMS. At shift close, the POS lists M-Pesa as Safaricom recorded it next to what each cashier took.

Three ways customers pay by M-Pesa

  • STK push: the cashier enters the phone number, the prompt appears on the customer's phone with the amount, and the till is told the moment it is paid.
  • Buy Goods (till number): the customer sends money to your till; the POS shows the payment to be claimed against the bill.
  • Paybill: the customer pays your paybill with an account reference, such as an invoice or table number, and the POS matches it.

Why reading SMS codes costs money

When cashiers confirm payments by looking at a customer's phone or an SMS, fake messages, reversed payments and typing mistakes slip through, and nobody finds out until the statement doesn't match. A POS connected to M-Pesa through Safaricom's Daraja API sees the payment itself, so there is nothing to read out.

Reconciling M-Pesa at shift close

  1. Each payment is recorded against the sale and the cashier who took it.
  2. At close, the POS shows the M-Pesa total per cashier next to what M-Pesa confirmed.
  3. Unclaimed payments to the till are listed, so a payment never hides in the statement.
  4. Each outlet can use its own till number, so money is reconciled where it was earned.

What about Pochi la Biashara?

Pochi la Biashara is a business wallet on a personal M-Pesa line. NanoPOS connects to Buy Goods tills and Paybills through Safaricom's Daraja API; it does not match Pochi la Biashara payments automatically. If you take payments on Pochi, record them on the till as M-Pesa, and consider a Buy Goods till number for automatic matching.

Questions people ask

Which POS works with M-Pesa in Kenya?

Look for one connected through Safaricom's Daraja API, with STK push and till or paybill matching. NanoPOS does both, with an M-Pesa reconciliation at every shift close.

Does NanoPOS reconcile Pochi la Biashara?

No. NanoPOS matches Buy Goods till and Paybill payments automatically. Pochi la Biashara payments can be recorded on the till as M-Pesa.

Can each branch have its own M-Pesa till number?

Yes. In NanoPOS each outlet can have its own till number.