AWRA OpsHub Search

Payroll for Kenya

Payroll that keeps up with KRA so you don't have to

Current statutory rules shipped as updates, filings ready on time, payslips online, and every run posted to your books — payroll as a by-product of good records.

Sound familiar?

If any of these ring true, you are exactly who this was built for.

The spreadsheet with last year's bands

NSSF tiers and SHIF rules changed; your formulas found out at penalty time.

Filing-week reconstruction

Every 9th of the month is a scramble to make payroll, filings, and the ledger agree.

Payslip requests all day

HR as the answer desk for payslips, balances, and leave days.

Casuals paid off the books

Enumerators and casual workers on M-Pesa with no consistent records.

What the payroll engine computes, and what it does not move

Running in the product today

  • Kenya is the only country in our statutory rule engine. Not first and not best-supported — the only one. PAYE, NSSF, SHIF and the Affordable Housing Levy are maintained here rather than in a connector to somebody else's engine.
  • Cross-checked to the cent against a real employer payslip on 13 July 2026, including the order the levies apply in — gross less housing levy, SHIF and NSSF — which is the part that is wrong most often and visible least often.
  • Versioned rule sets with effective dates. A rate change is a new version rather than an edit, so last year's payslips keep computing the way they computed last year.
  • The P9A rebuilt from frozen payslip snapshots and the exact rule versions each payslip referenced, so a certificate reproduced in three years is identical to the one issued today whatever happened to the rates in between.
  • An employee is not a user. Staff exist as records without consuming a login, so a 200-person workforce does not need 200 seats.
  • An approved run posts into the payments register as money-out per employee, plus a double-entry journal posting for the run's total net pay — so payroll lands in the same ledger as everything else rather than beside it.

Absences — on the roadmap, and commissionable now

  • There is no payout rail. The run records payroll as already paid. Approving a run writes the payments and the journal; it does not move money, and no bank file or mobile-money disbursement is produced. You pay staff however you pay them today and the record matches it. This is the single most important sentence on this page and it is the one most likely to be assumed past.
  • Nothing is filed. We compute the deductions and produce the P9A; the PAYE return and every iTax submission stay with you and your accountant.
  • One country. Every other market page on this site says local payroll is not ours and points you at a local provider, because it is not and we do not want you discovering that in month two.
  • NSSF Tier II's upper ceiling of 72,000 is unconfirmed. The verifying payslip's gross fell below it, so that one figure rests on the published schedule rather than on evidence we have personally seen.

What we would decline, and would rather say now

  • We will not file on your behalf. A filing obligation cannot actually be transferred to a software vendor — you carry the assessment either way — so a vendor who accepts it has sold you comfort rather than protection. What we do instead is make the position reconstructable to the cent when your accountant asks.
  • We will not advise on how somebody should be classified or paid. Whether a worker is an employee or a contractor, and how a benefit should be treated, are questions with liability attached and they belong with your adviser. We compute what the rules say and show the working.

The payout rail is the obvious build and it is commissionable now: a real disbursement integration would hold the run as pending and flip it on a webhook, exactly as the existing M-Pesa and Paystack vendor payment flows already do — so the pattern exists and the work is wiring rather than research. Written specification, timeline and price, agreed before any money moves. No date on this page.

Take the first item in the middle column into any demo you run. Ask to approve a payroll run and then ask where the money went. The answer here is that it went nowhere and the record says paid, which is correct behaviour for a system that computes rather than disburses — but only if you knew that before you bought it.

How teams get started

1

Import staff & contracts

Employees, salaries, benefits, and deductions loaded and verified.

2

Run one month in parallel

Side-by-side with your current process; every difference explained.

3

Go live before the 9th

Filings ready, payslips out, journals posted — deadline week becomes routine.

Guides from our blog

Kenya Business Guides 8 min

eTIMS, PAYE, NSSF & SHIF: Compliance Features Your ERP Must Have

What each Kenyan compliance regime actually requires from your system — eTIMS invoicing, statutory payroll, withholding, records — plus vendor test questions.

Read
NGOs & Nonprofits 8 min

NGO Payroll in Kenya: PAYE, NSSF, SHIF for Program Staff

The statutory stack done right, plus the NGO layer: allocating staff costs to grants, paying casuals and enumerators properly, and the monthly reconciliation triangle.

Read
Kenya Business Guides 8 min

ERP Pricing in Kenya: What to Expect (KES Breakdown)

License models, the implementation costs nobody quotes upfront, honest three-year totals in KES, and the questions that expose hidden pricing.

Read
HR & Payroll 12 min

The Customer Reads Your Timesheets

Labour records are built for two readers: the employer and the regulator. Export manufacturing adds a third with commercial leverage — the buyer — and they are not asking whether your numbers are correct. They are asking whether anyone but you could have produced them.

Read
HR & Payroll 11 min

Forty Hours in Which Seven Days?

American overtime is owed above forty hours in a workweek — a fixed seven-day period the employer designates, which need not start on Monday and need not match the pay period. Our records have no workweek in them at all, and the boundary they do enforce, by locking it, is the calendar month.

Read
HR & Payroll 11 min

A Night Shift Is Eight Hours of Nothing

A court has told member states to require a system that measures each worker's daily hours. Ours stored a 22:00 to 06:00 shift perfectly and reported its duration as empty — because clock-out is a time with no date, and six separate copies of the same arithmetic each decided an end before a start has no answer. Fixed the day this was published.

Read

Questions we are asked here

Frequently asked questions

What happens when statutory rates change?

The product updates; you review the first affected run against official rates and carry on. No formula edits, no forum threads about new bands.

Does it handle benefits and taxable perks?

Yes — housing, car, and other taxable benefits enter gross correctly, and per-diem policies can align with KRA thresholds so reimbursements stay non-taxable where they should.

Can employees see their own payslips?

Yes — self-service gives staff payslips, leave balances, and requests online, with role-based access keeping everything else out of view.

We are an NGO — can costs split across donors?

Yes, grant cost allocation is built in — see the dedicated page on NGO payroll for the donor-defensible setup.

Make the 9th boring

Run one month in parallel and see the statutory math, filings, and postings handled.