📚 Case 1 · Multi-branch School ERP
Client: private school group · 3 branches · ~2,400 students · Haryana, India.
Problem: fees across 3 branches reconciled from 4 bank accounts into Excel; attendance on paper registers; parent communication over scattered WhatsApp groups; payroll run manually on the 1st of every month.
What we built: unified multi-tenant ERP — admissions, fee heads & concessions, attendance (biometric + mobile), timetable, exam & report cards, payroll, parent app (Android + iOS), bulk SMS/email, Razorpay gateway, role-based access per branch, offline attendance sync for low-network classrooms.
Stack: React 18, Node.js (NestJS), PostgreSQL + Prisma, Flutter (parent app), AWS (EC2, RDS, S3, CloudFront), Razorpay, MSG91 (SMS).
Outcome: fee-reconciliation time cut from 3 working days/month to under 2 hours. Parent-query volume reduced ~60% in 3 months. Rolled out to 2 additional branches without new engineering effort.
Timeline: 10 weeks to MVP, 16 weeks to full rollout. Model: fixed-milestone, 5 sprints.