Skip to content

feat(web): finance dashboard + statements + aging UI (#98/#99/#100)#105

Merged
ankitsejwal merged 1 commit into
mainfrom
feat/m3.5-finance-ui
Jul 16, 2026
Merged

feat(web): finance dashboard + statements + aging UI (#98/#99/#100)#105
ankitsejwal merged 1 commit into
mainfrom
feat/m3.5-finance-ui

Conversation

@ankitsejwal

Copy link
Copy Markdown
Member

M3.5 · admin-UI pass (part 1) — finance dashboard, statements, aging

Surfaces the merged M3.5 accounting backend in the admin web app. Extends existing pages (admin/index.tsx, admin/reports.tsx) — no new routes, no route-tree churn.

Dashboard (admin/index.tsx) — #100

Finance tiles: outstanding dues, collection rate, cash + bank (reuses /reports/finance + /bills/dues).

Reports (admin/reports.tsx) — #98 / #99 / #100

  • Statutory statements: Balance Sheet (balanced badge), Income & Expenditure (with mutual/taxable split), Receipts & Payments, Trial Balance (balanced badge).
  • Each statement has PDF / Excel / CSV export buttons; a Tally XML export for the whole ledger.
  • Aging section: 0-30 / 31-60 / 61-90 / 90+ buckets + per-flat breakdown, with Excel/CSV export of the dues.

Client + i18n

  • api.ts: getTrialBalance / getIncomeExpenditure / getBalanceSheet / getReceiptsPayments / getAging + reportExportObjectUrl (auth-fetch → object URL → open; browser downloads attachments).
  • ~33 new i18n keys (en + hi); parity test green.

Validation

web check-types ✅ · vite build ✅ (route tree regenerated) · lint 0 errors ✅ · web tests 27 green ✅.

Visual/functional QA needs the app running against a migrated + CoA-seeded DB (POST /ledger/init). Statement cards show a "initialize accounting" hint until then.

Remaining UI (follow-up)

Expenses/vendor page (#94, new route), bill-config interest controls + apply-interest (#95), per-flat statement view + mobile bills.tsx (#96).

Surfaces the M3.5 accounting backend in the admin app (extends existing pages —
no new routes).

- admin/index.tsx: finance tiles — outstanding dues, collection rate, cash+bank.
- admin/reports.tsx: statutory statements (Balance Sheet, I&E with mutual/
  taxable split, Receipts & Payments, Trial Balance with balanced badges) each
  with PDF/Excel/CSV export buttons + a Tally XML export; and an aging section
  (0-30/31-60/61-90/90+ buckets + per-flat breakdown).
- api.ts: getTrialBalance/getIncomeExpenditure/getBalanceSheet/
  getReceiptsPayments/getAging + reportExportObjectUrl (auth-fetch downloads).
- i18n: ~33 new keys (en + hi, parity test green).
- Validated: web check-types, vite build, lint (0 errors), web tests 27 green.
@ankitsejwal
ankitsejwal merged commit 81d471d into main Jul 16, 2026
1 check passed
@ankitsejwal
ankitsejwal deleted the feat/m3.5-finance-ui branch July 16, 2026 14:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant