Guide
How to pay construction workers via M-Pesa in Kenya
Friday afternoon on a Kenyan site: a queue at the gate, an envelope of cash, a foreman with a notebook, and every risk you can imagine — theft on the way to site, disputes over who worked which days, and names on the list that nobody has ever met. Here is how contractors move that payday onto M-Pesa without creating new problems.
Why cash paydays fail
- Physical risk. Someone carries hundreds of thousands of shillings to a site, every week, on a known schedule.
- Ghost workers. When the record is a notebook, names that never worked get paid — and nobody can prove it later.
- Disputes. A fundi who worked four days and got paid for three has no statement to point to, and neither do you.
- No audit trail. When the director asks where last month's KES 2M of labour went, the answer is a stack of paper.
Your options for paying via M-Pesa
Option 1: Send manually from a phone. Works for five workers. At thirty, someone spends the afternoon typing numbers, transaction costs pile up per send, typos send money to strangers, and there is still no link between what was paid and who actually worked.
Option 2: M-Pesa bulk payments on a company PayBill.Safaricom's bulk disbursement service can pay many numbers at once. This solves the queue but not the payroll: you still need to compute what each worker earned, verify they worked, prevent the same file being uploaded twice, and keep records that reconcile. Most contractors end up maintaining fragile spreadsheets around it.
Option 3: A payroll platform that settles on M-Pesa. The computation (attendance × rate), the verification (who was actually on site), and the disbursement (bulk M-Pesa) live in one system, so the amount that leaves your account is provably the amount that was earned. This is what mjengoPay does, built specifically for construction.
What a clean payout run looks like
- Workers are registered once, with verified identity and the number their wages should reach.
- Every day, the foreman clocks workers in and out — with verified attendance if you want gate-level certainty about who was really there.
- Wages accrue automatically: daily rate, piecework, or per-visit, as agreed per worker.
- On payday, finance reviews the run — every line traceable to attendance — and approves it. The site proposes, the office confirms: not one person with a phone.
- mjengoPay pays every worker in one bulk run, with duplicate-payment protection — nobody can be paid twice for the same payday.
- Every payment lands in a permanent audit log, reconciled per worker, per site, per run.
What to insist on, whatever you use
- Duplicate-payment protection — the system, not a human, must guarantee nobody is paid twice for the same run.
- Attendance-linked amounts — if pay isn't computed from verified attendance, ghost workers survive the move to M-Pesa.
- Approval separation — the person who marks attendance must not be the person who releases money.
- Statements — per-worker and per-site history you can hand to a director, an auditor, or the worker themselves.
- No worker-side app — your workers have M-Pesa, not app stores. Money must arrive on any phone.
Run your next payday on mjengoPay.
Pay-per-use pricing, no subscriptions. Workers only need the phone they already have.