Skip to content
M-PESA for Business

M-PESA for schools in Kenya 2026: paybill, admission numbers, eCitizen

How Kenyan schools collect fees on M-PESA in 2026. Why paybill (with admission number as account) is the only fit, term-based collection, eCitizen 222222 for public schools, KRA and MOE reporting, and a worked example for a 900-pupil primary at KES 12M termly.

JN
by Reviewed by David Wachira
11 min read Updated 1 September 2026Verified 01 Sept 2026

Schools are the paybill use case, full stop. Fee collection is per-child, splits across termly instalments, must survive class promotions, and needs to feed into an MOE-facing report at year-end. Anything without an account reference (till, Pochi) fails on the first payment. This guide covers private and public schools, primary and secondary, day and boarding. For higher education, see the universities hub and specific institution guides.

What a school actually needs from M-PESA

  • Per-pupil account references. Admission number is the primary key.
  • Term-based, instalment-friendly collection. Parents pay across weeks; the balance rolls forward.
  • Sibling handling. One parent, multiple children. Each pays to its own admission number.
  • Sub-ledger splits. Tuition, uniform, boarding, transport, activities. Different sub-accounts, same paybill.
  • KRA and MOE reporting. Termly returns to the Ministry of Education, monthly returns to KRA if VAT-registered on ancillary services.
  • Bulk reconciliation. A term ends with hundreds of thousands of shillings coming in over a few days. The finance office needs downloadable statements, not phone-app browsing.
  • Private school. Register a dedicated paybill via m-pesaforbusiness.co.ke or a Safaricom Business Rep. Approval usually needs your MOE registration certificate on top of the standard KRA + bank + permit set. See how to get a paybill (2026).
  • Public school. Use eCitizen paybill 222222 with your assigned school code. No separate application needed; the school code is issued via the MOE. This routes fees through the Treasury single-account, in line with the government consolidation directive.
  • University or college. Same as private school (dedicated paybill), often integrated with the student portal. See existing per-institution paybill guides for the exact numbers.
  • Never use a Buy Goods till or Pochi for fee collection. The account-reference gap is fatal.

Charges you will actually pay

On paybill, the parent (sender) pays a tiered fee up to KES 108 for large tickets. The school (merchant) also pays a tiered Lipa na M-PESA fee, capped at KES 108. Full band- by-band table in M-PESA charges 2026.

For a typical KES 25,000 termly instalment: the parent pays KES 108 send fee and the school pays KES 108 merchant fee. On a full termly bill of KES 60,000, most parents split into 3 to 5 instalments, so total fees per pupil per term are roughly KES 300 to KES 500 on each side.

Setup steps

  1. Gather MOE registration, KRA PIN, county permit (or MOE letter), and the school's bank-account details.
  2. Apply for a paybill through m-pesaforbusiness.co.ke or a Safaricom Business Rep. Specify "School fees collection" as the use case.
  3. Sign the Lipa na M-PESA merchant agreement and provide the settlement bank account (must be in the school's registered name).
  4. Configure the account-reference validation rule with Safaricom: accept admission numbers matching your format (e.g. six digits starting with the year).
  5. Publish the paybill number and instructions in the fee statement, on the school website, and in the WhatsApp broadcast to parents.
  6. Test with a KES 100 dummy payment to a real admission number before circulating.

Reconciliation notes specific to schools

  • Admission number, not name. Parents will mistype names. Admission numbers are shorter and easier to enforce with a validation rule. Reject payments with malformed references (Safaricom validation URL returns an error and prevents the debit).
  • Sub-account tagging. Format: ADM1234-TUIT, ADM1234-UNIF. The finance system splits by suffix.
  • Bulk statement download. Pull the paybill statement CSV weekly through the term, daily in the last two weeks. Import into your fee-management software (Zeraki, School Manager, Sage, custom).
  • Balance SMS to parents. Weekly automated SMS with the current outstanding balance. Cuts end-of-term escalations by more than half.
  • Reversals. Parents pay to the wrong admission number surprisingly often (a family with three kids). Reverse via the M-PESA Business app or *234#, then credit the correct pupil.

Common problems and how to fix them

  • Parent paid but bursar cannot find the payment. Ask for the M-PESA confirmation SMS with the transaction ID. Search the statement by transaction ID (not by name). Nine times out of ten it landed but was posted to the wrong admission number.
  • Parent paid to eCitizen 222222 for a private school. This is a public-school-only paybill. The money bounces or goes into an unreconciled Treasury holding account. Educate the parent on the correct private-school paybill and coordinate a refund.
  • Two children, one paid twice. Reverse the duplicate, credit the sibling. Or split the payment across the two admission numbers if the amount matches.
  • Bulk parent-day payments overwhelm the finance desk. Enable STK Push from the parent portal so the reconciliation is done automatically at credit time, not manually at the desk.
  • End-of-term audit. Match total paybill credits to total fee-schedule invoices. Any variance is either an unallocated payment (parent used the wrong reference) or a fee-schedule error.

KRA, MOE, and eTIMS for schools

  • Tuition is generally VAT-exempt for licensed education providers.
  • Ancillary services (uniform sales, transport, boarding, canteen) may be VAT-able. eTIMS invoices required on those lines.
  • PAYE, NSSF, SHIF, and Housing Levy apply to all teaching and non-teaching staff.
  • MOE termly returns require declaration of fees collected and enrolment. The paybill statement is the primary supporting document.
  • Public schools report through NEMIS and the eCitizen collection reconciles at the Treasury level.

Worked example: a 900-pupil private primary, KES 12M term

A well-run private primary in Kiambu with 900 pupils, KES 12,000 average termly tuition, plus uniform and trips lines. The paybill snapshot for one term:

Fee lineTerm amountTicketsCustomer fee / ticketMerchant fee / ticketTotal school-side M-PESA cost
Termly tuition (900 pupils x KES 12,000)KES 10,800,000900KES 108KES 108KES 97,200 (school side)
Uniform (300 pupils x KES 3,500)KES 1,050,000300KES 55KES 55KES 16,500 (school side)
Trips + activities (400 pupils x KES 2,000)KES 800,000400KES 32KES 32KES 12,800 (school side)
TotalKES 12,650,0001,600KES 126,500 / term

School-side M-PESA cost is about 1 percent of collections. If parents split the termly bill into three instalments instead of one, tickets triple and the fee line roughly triples too, so it pays to encourage a single settlement where the family cash flow allows.

More business rail guides

Curated external sources we cite. Open in a new tab.

See also: Universities and colleges hub · M-PESA for online businesses · Business hub.