Income statement
Income and expenses grouped by account for any period, with each expense showing the Schedule E line it rolls up to. Net operating income at the bottom, and every figure traceable to the entries behind it.
Cash flow
Opening balance, what came in, what went out, and closing balance — with inflows and outflows classified by the account on the other side of each movement. It answers where the money came from and where it went, rather than merely restating the net change.
- Total inflows minus total outflows always equals the net change
- One period's closing balance is the next period's opening balance
- Measured across the accounts you mark as bank or cash equivalents
Per property, always
Every report scopes to one property, one portfolio, or everything. Per-property figures sum exactly to the portfolio total — a property that looks profitable at the portfolio level has nowhere to hide.
Correctness is a test suite, not a promise
The reporting logic is checked against a fixture portfolio whose expected figures were worked out by hand, on paper, before the code was written. Assertions compare against those literal numbers — so a refactor that changes a total fails loudly instead of producing a different but plausible report.
- Cross-checked so per-property results sum to the portfolio total
- Verified that one organization's activity can never appear in another's reports
- An empty portfolio reports zero — never a silent fallback to everything
Budget against actual
Set a plan per account per month, then compare it against what the books actually say. The comparison covers the months that have elapsed and prorates the plan to exactly those months — a full year of budget measured against a quarter of activity reports a 75% underspend on everything, which is the single most common way a budget report misleads.
- Variance is labelled favourable or not, because underspending and under-earning are opposite news
- Accounts budgeted but never touched still appear — that is the most interesting row on the report
- Accounts spent but never budgeted appear too, rather than quietly vanishing
Everything the ledger can already answer
Balance sheet, net worth over time, schedule of real estate owned, MACRS depreciation schedules, and the year-end Schedule E worksheet all build on the same entries. Nothing is recomputed from a second source, so no two reports can disagree.
Income statement — sample
| Income | |
|---|---|
| Rent income | 3,150.00 |
| Late fees | 75.00 |
| Expenses | |
| Insurance | 600.00 |
| Repairs | 340.50 |
| Utilities | 128.75 |
| Net operating income | 2,155.75 |
Illustrative figures. Net operating income is total income less total expenses for the selected period and scope.