Back to Insights
Payroll & Compliance3 min read

Paying Salaries by M-Pesa and Bank: Keeping the Records Straight

Many Kenyan employers pay some staff by bank and others by M-Pesa. The payments are easy; keeping them reconciled with payroll is where things slip.

By StepUp Team

Group of surprised people looking at a mobile phone

Two Payment Channels, One Payroll

For many Kenyan businesses, paying everyone by bank transfer does not reflect reality. Casual workers, new joiners without accounts and staff in rural areas often prefer M-Pesa. Office staff are paid by bank. Some people are paid partly by each.

That flexibility is useful. It also means payroll now has two outputs to manage, and each is a place where a mistake can happen.

Where It Goes Wrong

Payment details kept outside payroll. The bank file is generated from payroll, but the M-Pesa numbers live in a separate spreadsheet maintained by someone in finance. When an employee changes their number, one list is updated and the other is not.

Manual entry. M-Pesa payments typed in one by one invite errors: a digit wrong, an amount entered twice, a person missed.

No reconciliation. Payroll says 120 people were paid. The bank shows 95 transfers and M-Pesa shows 24. Who is the missing person, and did anyone get paid twice?

Changes made at the last minute. A number changed the day before payday, by message, is the classic setup for a payment going to the wrong person — or to someone who should not be receiving it.

Principles That Help

One record of how each person is paid. The payment method and details belong on the employee's record in payroll, not in a separate list. Payroll should produce both the bank file and the M-Pesa batch from the same source.

Verify changes. This is one of the key payroll approval controls. Treat a change of bank account or M-Pesa number as a sensitive change. Confirm with the employee through a known channel, record who approved it, and highlight it in the payroll review.

Reconcile every run. After payment, match what was paid against what payroll said should be paid, person by person. Any difference is investigated before the next run, not discovered months later.

Keep the confirmation. Bank and M-Pesa confirmations are the proof that an employee was paid. Keep them linked to the payroll run, so a query months later can be answered in minutes.

Remember the Costs

M-Pesa payments carry transaction charges, and they add up for large payrolls. Decide whether the business or the employee bears them, apply it consistently, and make sure the amount the employee receives matches their payslip.

The Employee's View

For the employee, the question is simple: did I receive what my payslip says, and when? A clear payslip showing the payment method, together with the ability to check their own details in a self-service app, removes most queries before they reach HR.

Joining It Up

The safest arrangement is one where payroll, payment details and payment confirmations all live together.

StepUp HRM's payroll automation keeps each employee's payment method on their record, supports bank and M-Pesa payment details, flags changes for review and keeps the payroll run and its payments together, so reconciliation is a check rather than a project.

Keep reading

WhatsApp icon