Estates, gated communities, and serviced apartments often buy water and power in bulk and recover it from tenants through submeters. It’s the same job a water utility does - the only thing that changes is the unit on the meter. Zana’s billing engine doesn’t assume water anywhere; it prices whatever the register counts, so the same flow covers water and electricity side by side. Most managers stitch this together in spreadsheets today, and keep utility recovery separate from the monthly service charge.
The recovery headache
- Submeter readings for water and power are tracked by hand, per unit, every month
- Splitting a bulk bill fairly across units is fiddly and argued over
- Utility recovery and service charge are billed separately, so tenants get two asks
- Tenants want one clear bill and an easy way to pay
Model each connection once
Every tenant is a customer, and each service connection they hold is an account with its submeter: a water account and an electricity account under the same tenant. Each account carries its own recovery rate, so water prices at the water rate and power at the power rate, and the tenant still has one customer record, one history, and one statement.
Accounts group into zones and routes that map to your blocks, floors, or phases. A single account can carry more than one meter where they measure the same thing - a second water meter on a large unit, or the closing and opening registers of a meter change, which Zana records cleanly.
Read water and electricity the same way
Capture the current reading per submeter with the phone field app (camera-assisted, with the reader confirming the number), bulk-import a block from CSV, or key a whole route into a grid. Zana computes consumption from the previous reading and flags the outliers - a reading lower than last month, consumption more than 3× the unit’s average, or a meter rollover - as pending verification before they ever reach a bill. Because the engine is unit-agnostic, the exact same checks protect a kWh reading and a cubic-metre reading.
Apply your recovery rate, line by line
Set tiered bands, a standing charge, and levies to match how you recover bulk cost, and Zana bills each unit’s consumption as itemised lines - each block at its own rate. For a fixed service charge, use a flat (unmetered) tariff or a recurring invoice - no meter needed. Either way the tenant deals with one workspace and one set of pay links.
Worked example. An apartment block recovers electricity at KES 30/kWh with a KES 150 standing charge, and water at KES 120/unit. Unit 4B’s tenant holds two accounts. The power account reads 85 kWh - 85×30 + 150 = KES 2,700 - and the water account reads 6 units - 6×120 = KES 720. Zana posts a bill to each, both land on the tenant’s one statement, and a payment covering more than the invoice it targets clears the rest oldest first.
Run it like a utility, collect like one
A billing run prices every unit, surfaces exceptions (missing reading, no meter, no tariff) for review, and only then posts - with two guards that make double-billing a month impossible. Tenants pay by M-Pesa STK push, oldest balance first - and service charge paid by bank transfer is reconciled from an uploaded statement, and you get arrears ageing by block, a collection rate, and a list of units overdue past your threshold. A deposit taken at move-in is held and offset against any arrears when the tenant leaves and the account closes. Run the utility consumption cycle and the fixed service charge from the same place, and the owner gets a summary of every cycle by email.
What you’ll need
Set up your blocks, add the submeters, and run consumption billing and service charge from one workspace.

