Billing a portfolio one tenancy at a time is how months get lost. A billing run prices the whole book in a single pass: rent per the lease, utilities per the readings, service charge per the apportionment, plus anything recurring.
It is worth being precise about what it is not. It does not collect money and it does not decide who has paid. It creates the obligations that later payments are applied against. Treating the run as "sending bills" is what leads to portfolios where the bill went out but nothing was raised on the ledger, so the arrears report shows everybody current and the month looks quiet until it does not.
The input stage, closed before the run
Most bad runs are bad because of what went into them. Close the inputs a day before, not during:
- Meter readings taken and entered, with the date of reading.
- Move-ins and move-outs processed, so nobody is billed for a unit they left.
- Rent reviews effective this period applied, and only those effective this period.
- Utility tariffs current, with the date the new rate takes effect recorded.
- Service charge amounts current, and any annual reconciliation reflected.
- Recurring extras still valid: parking, garbage, borehole, security. These outlive the reason they were added more often than any other line.
The preview, which is the whole discipline
Charges are generated but not issued, and reviewed first.
Sort the preview by largest change against last month, because that is where errors live. A water charge ten times last month's is a misread meter roughly every time, and finding it before issue costs a minute. Finding it after issue costs a tenant's confidence and an afternoon.
Worth checking every time:
- Meter readings that moved implausibly, in either direction.
- Units billed that are vacant, and occupied units not billed.
- Leases that should have escalated this period and did not.
- New tenancies part-way through the period, and their pro-rata calculation.
- Zero-value charges, which usually mean a missing input rather than a genuine nil.
Last, spot-read three complete bills end to end: a simple one, a metered one, and the most complicated tenancy you have. You are not checking arithmetic, you are checking whether a person who did not produce it would understand it.
Corrections
Correct forward, always. A credit note or an adjusting charge that references the original entry. Editing a bill a tenant has already read is how a billing history stops being evidence, including in the months where you were right.
A run should be repeatable and reversible. If a run goes out wrong, the fix is a correcting entry against the affected accounts, not a quiet edit of the original charges, for the same reason a double-entry ledger does not let you erase history.
The goal
The goal is that the billing run stops being an event. Four things get you there:
- The same date every month.
- A checklist that is worked rather than remembered.
- A preview nobody is allowed to skip.
- An input stage closed a day before the run rather than during it.
A portfolio that bills on the 1st, every month, without drama, has removed the single largest recurring source of tenant disputes, because "late" becomes a fact rather than a disagreement about when rent was due.