A secure Azure-based fee management system for student fee lookup, payment-status calculation, controlled administrator updates, and automated overdue reminders.
- Student fee viewing
- Paid, Partially Paid, and Overdue status calculation
- Admin fee updates
- Microsoft Entra ID authentication with MFA
- Student/Admin role-based access
- Automated overdue reminders
- Azure API Management gateway
- Application Insights monitoring
| Area | Technology |
|---|---|
| Frontend | React.js, JavaScript, Tailwind CSS |
| Backend | Node.js, Azure Functions |
| Database | Azure SQL Database |
| API gateway | Azure API Management |
| Authentication | Microsoft Entra ID |
| Automation | Azure Logic Apps, SendGrid |
| Monitoring | Application Insights |
See the complete deployment guide for the component boundaries and configuration process.
Students use an authenticated read-only portal. Administrators use the secured dashboard for fee updates. APIM routes requests to Azure Functions and Azure SQL, while the Logic App finds overdue records and sends SendGrid reminders.
Database: FeeManagementDB
| Script | Purpose |
|---|---|
| 01_schema.sql | Creates Students and Administrators tables, constraints, and indexes. |
| 02_seed_data.sql | Contains the complete seed data for all 25 demonstration students and 3 administrator records. |
| 03_identity_permissions.sql | Configures Microsoft Entra managed identities and database roles. |
| 04_verification_queries.sql | Contains structure, count, role, partial-payment, and overdue verification queries. |
Execute scripts in this order:
01_schema.sql
02_seed_data.sql
03_identity_permissions.sql
04_verification_queries.sql
The repository does not contain the canonical 25-student INSERT statements, so they are not fabricated in this submission.
For the complete step-by-step Azure deployment process, see:
Key resources include rg-fee-management, fee-management-sql-eastasia-2026, FeeManagementDB, fee-management-api-2026, fee-management-apim-2026, and fee-reminder-logicapp.
The Function App is connected to Application Insights. Request activity and errors are verified through Application Insights Logs and request-count trends.
Microsoft Entra ID and MFA provide authentication. Student and Admin application roles provide authorization. APIM validates JWTs and requires the Admin role for fee updates. Managed identities provide Azure SQL access. Client secrets, API keys, tokens, passwords, and connection credentials must never be committed.
Student GET, Admin GET, Admin PUT, Student Portal access, MFA, Logic App reminders, and Application Insights request telemetry are covered by the project validation workflow. Use the deployment guide for the reproducible test sequence.
I sincerely thank Fusion Practices Pvt. Ltd. for providing this assignment opportunity. The project offered valuable practical experience in designing and implementing a secure, cloud-native fee management solution using Microsoft Azure services.
