Where the money leaks at a school counter
Fee leakage at a school rarely looks like theft. It looks like a receipt book with a page torn out, an amount corrected in pen with no initial next to the correction, an entry deleted because a parent asked for cash back, or the cash in the drawer not quite matching the day's receipts by closing time. It also looks like a concession that nobody with the authority to grant it actually approved, a sibling discount applied because someone was asked nicely rather than because a rule or a signature says so.
None of this needs anyone to be dishonest. A busy counter run on a manual receipt book, reconciled by a fee accountant at month end, has enough gaps in it that an honest mistake and a deliberate one look identical from the outside, which is exactly the problem the same paper habits create in moving a school off paper registers.
The fix is not a stricter warning to staff to be more careful with the receipt book. It is removing the places where a gap, an edit or an unapproved concession can happen at all, so that carefulness is not the only thing standing between the counter and a clean day-book.
Why gapless numbering is harder than it sounds
The obvious fix is: number every receipt, and never let a number go missing. In practice this is a concurrency problem, not a paperwork problem. Two accountants can take money at two counters in the same second, and both need the next number in sequence, in order, with neither one waiting on the other's queue.
An ordinary database sequence looks like it solves this: ask for the next number, get it, move on. But a sequence hands out a number the instant it is asked for, before anyone knows whether the payment behind it will actually go through. If that payment fails, for any reason, the number is already gone. It was issued, and it does not roll back with the failed transaction around it. Over a year, at two or three counters, that is enough failed and retried payments to leave a receipt book with gaps nobody can explain.
How Ecole hands out the next receipt number
Ecole keeps one counter row per school, per academic year, not a database sequence. Getting the next receipt number means locking that row, reading the number, and advancing it in the same transaction as the payment itself, the mechanics behind what an accountant actually does at the counter. If the payment does not commit, the number is never spent: it is handed back to the counter it came from instead of being burned.
Two accountants at two counters still both get served, in order, one after the other for the instant it takes to read and advance one row. What changes is that a number only ever leaves the counter attached to a payment that actually went through, so a receipt book with a gap in it means something happened, not that a rollback was rounded off in silence.
An append-only ledger, and reversals dated the day they are made
A payment in Ecole is never edited and never deleted, by anyone, including us. If an amount was entered wrong, the fix is a reversal: a new entry that points back at the original, dated the day the reversal is actually made, never backdated to make the mistake disappear. Both entries stay visible forever. The ledger records what happened, including the correction, rather than being rewritten to look like the mistake never occurred.
| Step | Entry | What the ledger shows |
|---|---|---|
| 1 | Payment recorded as Rs 5,500 (wrong; the parent actually paid Rs 5,000) | One receipt, Rs 5,500, dated today |
| 2 | Reversal of the Rs 5,500 entry, dated the same day it is caught | The original receipt plus its reversal, both visible, net effect nil |
| 3 | Corrected payment entered for the Rs 5,000 actually received | A fresh receipt, Rs 5,000, dated today, with its own receipt number |
Same-day correction, and nothing beyond it
An accountant can correct their own entry, but only on the day they recorded it. Past that, correcting anything needs the principal, and the correction is logged either way. This is not about distrust of any one person: it closes the window in which an entry could be adjusted quietly, weeks later, once nobody remembers what actually happened at the counter.
The same-day window is also the practical one. An accountant who typed a wrong amount an hour ago remembers what actually happened at the counter; the same accountant asked about it a month later is reconstructing the day from memory. Handing the correction to the principal past that point is not a punishment, it is simply who is left who can vouch for it.
Concession approval, split by who can grant what
Not every concession carries the same risk, so Ecole splits who can grant one. An accountant can apply the concessions that follow a fixed rule: staff ward, sibling, RTE. A discretionary or merit concession needs the principal or correspondent to approve it. Every concession, whichever kind, carries a reason and the name of whoever approved it, so a concession is never just an amount that appeared.
This split matters most on a busy admission day, when a parent asks an accountant for a reduction on the spot and the honest answer has to be no, not because the school never grants one, but because that particular kind of concession is not the accountant's to give. The request still reaches the principal, with a reason attached, rather than being settled quietly at the counter.
Closing the day, counter by counter
The day-book, split by payment mode
At close of day, each accountant's collections show as a day-book split by cash, UPI, cheque and bank transfer, so what should be in the drawer is a number, not a guess, before anyone counts it.
Counting the cash against the day-book
The cash counted at the counter is checked against the cash line of that day-book, for that accountant, for that day. A mismatch is a conversation to have the same evening, while the counter, the receipts and the memory of the day are all still available, not a mystery to reconstruct at month end.
Exporting to Tally
The day's transactions export in a form Tally can take in, so the accounts team is not re-typing a day's receipts into a second system by hand, its own version of the double-entry trap that pushes staff back to paper.
The defaulter list
An accountant can find a child by name and see exactly what is owed, computed at the moment it is asked for rather than read off a stored balance that can drift out of date. The defaulter list carries the phone number to ring, so a follow-up call does not need a second search through the admission file first.
Computing what is owed on demand, rather than storing a running balance, is also what keeps the list honest after a reversal. A stored balance would need updating by hand every time a correction happens; a figure worked out fresh each time cannot go stale, because there is nothing sitting in a column waiting to be forgotten.
A practical end-of-day routine
The steps below hold for a single counter or several. If a step here does not match how your school actually runs its counter, ask us directly and we will tell you plainly whether Ecole covers it.
- Close each counter's day-book before anyone leaves, not the next morning.
- Count the cash at each counter separately, against that counter's own cash line.
- Flag any mismatch the same evening, while the receipts and the memory of the day are both still fresh.
- Check the reversal log for the day: every reversal should have a corrected payment sitting next to it.
- Review any discretionary or merit concession granted that day against the approval it needed.
- Confirm the receipt sequence has no unexplained gap for the day, for each counter.
- Export the day's transactions to Tally before the accounts team's own day closes.
- Check the defaulter list for any account marked paid today that has not actually moved.
- Hand the cash counted, with the day-book total it should match, to whoever banks it.