We replaced a tangle of spreadsheets with a single platform handling student records, fee billing, attendance, and parent communication for a 1,400-student private school.
What it covers
- Student records — every learner has a single profile that follows them from intake to graduation.
- Fees + billing — termly invoices, partial payments, automatic receipts, and a dashboard the bursar can read at 7am with one eye open.
- Attendance — class teachers mark from any device; parents see live status.
- Parent portal — academic progress, fee status, and a direct line to the form teacher.
Why it mattered
The school previously ran on a chain of spreadsheets, WhatsApp groups, and three different finance apps. Errors compounded: a child's fees would show paid in one place and unpaid in another. The single source of truth was nobody.
We collapsed the operations into a single platform with proper roles and audit. The bursar's monthly reconciliation went from two full days to ninety minutes.
Stack notes
Built on Next.js + Supabase. The reporting layer uses server actions + PDF generation rather than a separate reporting service — fewer moving parts for a small IT team to maintain.