Fee Management
Full fee lifecycle — structures, student accounts, payment recording, receipts, and defaulter reports.
This covers the fee ledger. Online payment (DodoPayments) is documented separately in the Payment Gateway page. Fee reminders are a separate notification layer that references this system.
Fee Lifecycle
Create Structure→Assign to Students→Record Payments→Generate Receipts→Track Balance
Fee Structure
- One fee structure per class/section per academic year
- Multiple fee items per structure: Tuition Fee, Lab Fee, Transport Fee, etc.
- Each fee item has its own amount and due date
- Optional fee items (e.g. extracurricular activities)
- Bulk assignment — assign a structure to an entire class or section at once
- Total amount auto-computed from fee items on save
Student Fee Account
- One account per student per fee structure (one per academic year)
- Tracks total due, total paid, and balance (auto-computed)
- Account statuses: clear, partial, overdue, waived
- Fee waivers with reason and approver tracking
- nextDueDate field used by overdue cron job for automated reminders
Payment Methods
CashChequeBank TransferOnline (DodoPayments)Demand Draft
Receipts
- Auto-generated sequential receipt number: RCPT-{SCHOOL_CODE}-{YEAR}-{SEQUENCE}
- PDF receipt with school letterhead, student details, fee items paid, and payment method
- Receipt sent to parent via push notification and WhatsApp on payment recording
API Routes
POST
/api/fees/structuresAdmin creates a fee structure with fee items
POST
/api/fees/structures/:id/assignAssign structure to all students in a class/section
GET
/api/fees/accountsList all student fee accounts (admin/accountant)
GET
/api/fees/accounts/myStudent or parent views own/child fee account
POST
/api/fees/accounts/:id/payRecord a manual payment (cash/cheque/bank)
POST
/api/fees/accounts/:id/waiveApply a fee waiver with reason
GET
/api/fees/reports/defaultersDefaulter list with contact details (admin/accountant)
GET
/api/fees/receipts/:paymentId/pdfDownload a fee receipt as PDF
Frontend Pages
/dashboard/admin/feesFee management dashboard with collection overview/dashboard/admin/fees/structuresList fee structures/dashboard/admin/fees/structures/createCreate fee structure with multiple fee items/dashboard/admin/fees/accountsAll student fee accounts with balance and status/dashboard/admin/fees/accounts/[id]Individual student fee account detail + payment history/dashboard/admin/fees/reports/defaultersDefaulter list for fee collection follow-up/dashboard/student/feesStudent's fee account and payment history/dashboard/student/fees/payOnline payment flow (DodoPayments)/dashboard/parent/feesParent view of child's fee account