Reserve Fund Management
Reserve Fund Management
Reserve fund (sinking fund) management lets you track dedicated savings accounts per block, record every contribution and expenditure, monitor funding gaps with automatic severity alerts, and export audit-ready PDF statements.
Navigate to Reserve Funds in the dashboard sidebar (piggy-bank icon) to get started.
Concepts
| Term | Description |
|---|---|
| Reserve fund account | A savings or deposit account held for a specific block, earmarked for major works |
| Target balance | The amount the fund needs to reach to cover planned future expenditure |
| Funding gap | target balance − current balance; positive means the fund is short |
| Monthly contribution | The expected regular credit to the account from leaseholders |
| Inflation uplift | Annual percentage increase applied to the target balance projection (stored as basis points) |
| Severity | critical (< 50 % funded), warning (50–79 % funded), ok (≥ 80 % funded) |
List View
The list view (/dashboard/reserve-funds) is the main landing page.
Summary cards
Four cards at the top of the page show portfolio-wide totals:
- Total Reserve Balance — sum of current balances across all accounts
- Total Target — sum of all target balances
- Total Funding Gap — difference between total target and total balance
- Shortfall Alerts — count of critical and warning accounts
Alert banner
If any accounts are in critical or warning state, a banner appears above the summary cards listing each affected account with its severity badge, funding gap amount, and estimated months to close the gap at the current monthly contribution rate.
Filtering
- Search — filters by account name, block name, or bank name
- Block filter — dropdown to scope the list to accounts belonging to a single block
Creating a Reserve Fund Account
- Click New Account on the list view toolbar.
- Select the Block — the account name is pre-filled as
{block name} Reserve Fund(editable). - Fill in the optional bank details (bank name and account reference are masked in the UI).
- Set the financial parameters:
| Field | Required | Notes |
|---|---|---|
| Block | Yes | |
| Account Name | Yes | Auto-suggested from block name |
| Bank Name | No | Displayed on the detail view |
| Account Reference | No | Last 4 digits shown; full value masked |
| Current Balance (£) | No | Opening balance; defaults to £0.00 |
| Target Balance (£) | No | Used to calculate funding gap and severity |
| Monthly Contribution (£) | No | Used to estimate months to close gap |
| Inflation Uplift (%) | No | Defaults to 3.00 % (300 basis points) |
| Planning Horizon (years) | No | Defaults to 30 years |
| Notes | No |
- Click Create Account.
All monetary inputs are entered in pounds (£) and converted to pence server-side.
Account Detail View
Click any account in the list to open the detail view.
Stats cards
| Card | Shows |
|---|---|
| Current Balance | Live balance with last-updated date |
| Target Balance | Target with colour-coded progress bar |
| Funding Gap | Gap in £, or "Fully Funded"; months to close if a monthly contribution is set |
| Monthly Contribution | Expected monthly credit and masked bank reference |
Progress bar colour coding:
- 🟢 Green — ≥ 80 % funded (
ok) - 🟡 Amber — 50–79 % funded (
warning) - 🔴 Red — < 50 % funded (
critical)
5-Year Bar Chart
A CSS bar chart shows contributions vs expenditures for each of the five most recent calendar years. No external charting library is used.
Editing account settings
Click Edit to open an inline form to update:
- Target balance
- Monthly contribution
- Bank name and account reference
- Notes
Recording Transactions
From the account detail view, click Record Transaction.
Transaction types
| Type | Direction | Description |
|---|---|---|
contribution | Credit (+) | Regular leaseholder payment into the fund |
interest | Credit (+) | Interest earned on the account |
transfer_in | Credit (+) | Money transferred into the account |
expenditure | Debit (−) | Draw-down for major works or repairs |
transfer_out | Debit (−) | Money transferred out of the account |
adjustment | Either | Manual correction entry |
Amount signs are automatically corrected server-side. Always enter the absolute amount (e.g. 500.00); the sign is applied based on the transaction type.
Linking to a works order
For expenditure and transfer_out transactions, an optional Works Order link is available. The dropdown lists open works orders for the same block, showing the title, cost (actual or estimated), and status.
Fields
| Field | Required |
|---|---|
| Transaction Type | Yes |
| Amount (£) | Yes — must be > 0 |
| Description | Yes |
| Date | Yes — defaults to today |
| Reference | No — bank reference or invoice number |
| Works Order | No — expenditure / transfer-out only |
| Notes | No |
Balance recalculation
Every time a transaction is added or deleted, the account balance is recalculated from the complete transaction history. The displayed balance always reflects all recorded entries.
Deleting Transactions
Each transaction row has a delete button (trash icon). A confirmation prompt is shown before deletion. The balance is automatically recalculated after deletion.
Filtering Transactions
Use the type filter dropdown on the transactions panel to view only one transaction type at a time (e.g. show only expenditures).
PDF Statement Export
Click Export PDF on the account detail view to generate and download a reserve fund statement.
The PDF contains:
- Header — account name, block name and postcode, bank name, generation date
- Account Summary — current balance, target balance, funding gap, total credits, total debits
- Transaction History — full chronological table with date, type, description, amount, and running balance per row
- Footer — source attribution
The file is named reserve-fund-statement-{account-name}.pdf.
PDF generation happens entirely in the browser using
@react-pdf/renderer. No data is sent to an external service.
Funding Gap Alerts
Alerts are computed automatically whenever account balances or targets change.
| Severity | Condition | UI colour |
|---|---|---|
critical | Funded < 50 % of target | Red |
warning | Funded ≥ 50 % and < 80 % of target | Amber |
ok | Funded ≥ 80 % of target | Green |
Accounts with no target set are not included in gap calculations.
Alerts surface in two places:
- List view alert banner — shows all non-
okaccounts at portfolio level - List view summary card — counts of critical and warning accounts
Permissions
- Read (list, detail, transactions, chart, alerts, statement data) — all authenticated users scoped to the organisation
- Write (create, update, delete accounts; record / delete transactions) — admin role required
All write operations are recorded in the audit log.
Navigation
The Reserve Funds section is accessible from the dashboard sidebar:
Reports
Reserve Funds ← piggy-bank icon
Client Money
Direct URL: /dashboard/reserve-funds