Online School Management
A month of invoices goes out in one pass, and students pay them through bKash in the app.
Problem
An online school's month is the same short list of jobs, over and over: raise an invoice for every student, mark who turned up to the live class, put a notice out. At Iqra's size, that list is the month. Fees were reconciled by hand at the end of it, by the collectors who had taken them.
Build
One system in two applications: a web panel for the office and a Bengali Android app for students, covering live classes, attendance, invoices and payment. We built it for Iqra Online Madrasa, which teaches Arabic and Islamic studies to adult learners in Bangladesh and has taken 2,500 admissions and has around 1,300 students studying now. Iqra is the only institution running it, but most of the office side is not particular to a madrasa — any online school that runs live classes and has to collect fees for them has the same jobs to do.
- Category
- Online School Management
- Year
- 2025
- Applications
- 2
- Stack
- Laravel · MySQL · Next.js · TypeScript · Android (Kotlin) · bKash API


- Problem
- Build
- The system
- Delivered

Chapter 01
The client and the problem
An online school's month is the same short list of jobs, over and over: raise an invoice for every student, mark who turned up to the live class, put a notice out. At Iqra's size, that list is the month. Fees were reconciled by hand at the end of it, by the collectors who had taken them.

Chapter 02
What we built
We built the panel around those jobs rather than around a feature list. A whole month of invoices is generated in one go and filtered by year, month, batch, section, shift, gender or fee type; the invoice master shows collected against outstanding, waivers and adjustments, progress against the target, and a monthly ledger to export. It is two applications because the office and the student need different things — staff work in the web panel, students carry an Android app in Bengali that shows their own side: the day's live class opened in Google Meet, their attendance percentage and days present, their invoices, and a bKash payment made without leaving the app. Iqra is the only institution running it, and parts of it were fitted to how Iqra teaches, down to the Ibadah tracker — but the pieces that carry the month, live classes, attendance, invoicing and payment, would run another online school as they stand.
- 01Web management panel
- 02Student Android app (Bengali)
Chapter 03
The system
2 applications, each with its own job, sharing one source of truth.
- 01Web management panel
- 02Student Android app (Bengali)
- Web panel — attendance, invoicing, admissions, notices
- Invoice master — collected, outstanding, ledger export
- Bulk monthly invoicing, filtered six ways
- Student Android app in Bengali
- bKash gateway — fees paid inside the app
- Live class opened in Google Meet
Chapter 04
Delivered
Everything that shipped, in the client's hands.
- Web panel — attendance, invoicing, admissions, notices
- Invoice master — collected, outstanding, ledger export
- Bulk monthly invoicing, filtered six ways
- Student Android app in Bengali
- bKash gateway — fees paid inside the app
- Live class opened in Google Meet
The screens
Every screen we shipped.

Madrasa management panel — invoice and payment command centre

Ed Tech Management Android app, screen 1
The screens





















Have something like this in mind?
Tell us what you are trying to build. We reply within one working day.
