Ask a Kenyan solar company where their money leaks and they rarely say pricing. They say reconciliation. A technician finishes a callout in Nakuru, the client pays by M-Pesa on the spot, and the confirmation message lands on a phone that is not the company's. Three weeks later the invoice is still marked unpaid, the technician remembers it differently, and someone spends an afternoon on a statement export.
The money almost always arrives. What goes missing is the link between the payment and the job.
M-Pesa is live, not planned
On EcoService OS, M-Pesa is a live payment method today — for Academy enrolment and for your software subscription. There is no waitlist and no "coming soon" state. You choose what you are paying for, enter a Kenyan number in +254 format, approve the STK prompt, and access unlocks once payment is confirmed. Card and KES company invoicing sit alongside it for finance teams that need a document with a KRA PIN on it.
The details are on the M-Pesa for solar companies page.
The three places payment discipline breaks
1. Field collections with no record
The fix is not a policy telling technicians to write things down. It is making the record the easiest available action: mark the job settled, attach the reference, done, on the same screen where the job was completed — offline if the site has no signal.
2. Invoices that do not descend from a job
An invoice typed separately from the work it bills will eventually disagree with that work. When the invoice is generated from the completed job — with the parts used, the hours and the checklist already attached — disputes shrink to arguments about price rather than about facts.
3. Subscriptions and training paid from personal accounts
Directors paying company costs from personal M-Pesa is normal and it is also how expenses become untraceable. Paying through the company with an invoice attached costs nothing extra and keeps the books defensible.
What good looks like at month end
- Every completed job shows how it was settled and when.
- Every M-Pesa reference points at a job or an invoice, not a phone.
- Company payments carry an invoice with the company name and KRA PIN.
- Crew training seats are paid once, at the discounted seat price, and allocated afterwards.
- Nobody reconstructs anything from memory.
Start where the leak is
If field collections are your problem, fix job-level recording first — it pays for itself in a month. If capability is your problem, the Kenya training track is the other half of the same business case: fewer repeat visits means fewer invoices you never should have needed to raise.
Either way, start on the Kenya hub and pick the path that matches your role.