Reporting from the source, not a copy
There is no nightly export into a separate reporting database that can silently fall behind. Financial reports are generated from the same ledger the invoices posted to.
Product
Revenue, active members, retention, check-in load and trainer utilisation — per branch and rolled up. Reports read the operational tables directly, so the dashboard and the ledger cannot disagree.
Collected, billed and outstanding, by branch and period.
Renewal rate, lapse rate and cohort survival by joining month.
Peak hours, class fill rates and trainer load.
The same metric side by side across locations.
Trial balance, P&L, balance sheet and ageing from the GL.
CSV and PDF, with the filters that produced them recorded.
There is no nightly export into a separate reporting database that can silently fall behind. Financial reports are generated from the same ledger the invoices posted to.