A waste collector’s economics are simple and brutal: the truck runs whether or not the household paid. Most operators know roughly how many customers they serve and almost never know exactly who is behind. The bill is a WhatsApp message someone types out, the record is a notebook, and by the third month of non-payment the customer has become a habit rather than a debtor.
Where the money leaks
- The customer list lives in a phone, a notebook, and one person’s head at the same time
- Bills are typed out one by one, so a busy month means whole streets go unbilled
- Cash collected at the gate is recorded later, if at all
- Nobody can say which customers are two or three months behind
- A household that quietly stops paying keeps getting collected from
One list, and it stays the list
Every household or business is a customer with a phone number, an address, and its own running balance. Group them however you actually work - estate, street, or round - using segments, and the list stops being three half-copies. Import what you already have from a spreadsheet; the ones with a phone number can be billed the same day.
Charge the fee once, forever
Put each customer on a recurring schedule at whatever cadence you collect on - monthly, quarterly, or annual - with the service fee as a line item and VAT applied correctly. On each date Zana raises the bill and, with auto-send on, delivers it by SMS, WhatsApp, or email with a pay link. Generation is transaction-safe, so a retried run cannot double-bill a household.
Different rates for a household, a shop, and a restaurant? That’s three service items and three schedules, not three systems.
Worked example. An operator serving 800 households at KES 500 a month raises and sends 800 bills on the 1st without anyone typing a message. Most pay by M-Pesa within the week. The 60 who don’t are reminded automatically at 3, 7, 14, and 30 days, and the supervisor works a list of 60 instead of guessing.
Collect however they pay, and see who’s behind
Customers pay by M-Pesa STK push or card from the bill itself. Money paid into your paybill or bank instead is reconciled from an uploaded statement, matched by the reference the customer quoted, and a payment covering more than one bill clears the oldest first. Arrears ageing tells you exactly who is 30, 60, or 90 days behind - the list you need before deciding whose bin to skip.
What you’ll need
Your customer list with phone numbers, your fee per customer type, and a cadence. That is enough to bill your first cycle. A base past a few hundred customers wants a tier with unlimited invoices, and CRM if you want to message a whole round at once.

