How amira352/tuition-fees-collection works
This is a tuition-fee management and payment platform with bank back-office, administrator, and institution portals. Bank staff look up parents by national ID, inspect children and fees, select a customer account, collect payment, and issue or review receipts; institutions manage students, fees, uploads, plans, and reports, while administrators manage users and institutions. The graph preserves these product areas and the sampled search and upload flow. Many controller, service, and frontend API links are not shown because their wiring was not available in the sampled source.
Main entry points: App.jsx Frontend router · supabase.js Supabase data store · app.js HTTP API · searchById.service.js National ID lookup
Components 34
User portals
- Frontend router
front-end/src/App.jsx - Back-office portal
front-end/src/pages/Dashboard.jsx - Parent lookup
front-end/src/pages/SearchPage.jsx - Fee payment
front-end/src/pages/Feepaymentpage.jsx - Receipts and history
front-end/src/pages/Receiptpage.jsx - Administration
front-end/src/pages/Admin.jsx - Institution portal
front-end/src/pages/institution/InstitutionDashboard.jsx - Fee management
front-end/src/pages/institution/FeesManagement.jsx - Dues upload
front-end/src/pages/UploadDues.jsx - Institution reports
front-end/src/pages/institution/ReportsPage.jsx
Bank operations
- HTTP API
backend/src/app.js - Bank routes
backend/src/routes/searchById.routes.js - Parent search
backend/src/controllers/searchById.controller.js - National ID lookup
backend/src/services/searchById.service.js - Parent records
backend/src/repositories/parent.repository.js - Lookup audit
backend/src/repositories/nationalIdAudit.repository.js - Payment routes
backend/src/routes/payment.routes.js - Payment processing
backend/src/services/payment.service.js - Receipt routes
backend/src/routes/receipt.routes.js - Receipt service
backend/src/services/receipt.service.js - Payment history
backend/src/services/paymentHistory.service.js - Admin routes
backend/src/routes/admin.routes.js - Admin management
backend/src/services/admin.service.js
Institution services
- Institution routes
backend/src/routes/institution.routes.js - Upload controller
backend/src/controllers/institutionFeeUpload.controller.js - Fee upload processing
backend/src/services/institutionFeeUpload.service.js - Fee management
backend/src/services/institutionFees.service.js - Payment plans
backend/src/services/epp.service.js - Reporting
backend/src/services/report.service.js
Platform services
- Authentication
backend/src/services/auth.service.js - Supabase data store
backend/src/config/supabase.js - MOI verification
Other components
- Bank staff
- Institution user
Connections 29
- Bank staff → Frontend router: uses
- Institution user → Frontend router: uses
- Frontend router → Parent lookup: routes to
- Frontend router → Fee payment: routes to
- Frontend router → Receipts and history: routes to
- Frontend router → Administration: routes to
- Frontend router → Institution portal: routes to
- Frontend router → Fee management: routes to
- Frontend router → Dues upload: routes to
- Frontend router → Institution reports: routes to
- HTTP API → Bank routes: mounts
- HTTP API → Payment routes: mounts
- HTTP API → Receipt routes: mounts
- HTTP API → Admin routes: mounts
- HTTP API → Institution routes: mounts
- Bank routes → Parent search: dispatches
- Parent search → National ID lookup: calls
- National ID lookup → MOI verification: validates ID
- National ID lookup → Parent records: looks up records
- National ID lookup → Lookup audit: writes audit
- Institution routes → Upload controller: dispatches upload
- Upload controller → Fee upload processing: processes file
- Authentication → Supabase data store: reads and updates
- Payment processing → Supabase data store: uses data store
- Fee management → Supabase data store: uses data store
- Admin management → Supabase data store: uses data store
- Receipt service → Supabase data store: uses data store
- Payment history → Supabase data store: uses data store
- Reporting → Supabase data store: uses data store