Skip to content
Knowledge base · Fees & challans

My fee report for last year keeps changing when students are promoted — how do I see what each class actually collected at the time?

Where in EDUBase: Finance › Fee Audit Report

Last updated

Short answer

Use Finance → Fee Audit Report. Every other fee screen answers where do we stand today, so it reads the student's current class, section and status. The Fee Audit Report reads the class, section, session and campus the challan itself was created with, so promotions, class transfers and status changes can never move a past figure.

Why the old reports "changed"

Nothing was wrong with them — they are answering a different question. When a child is promoted from Class 4 to Class 5 in April, every screen that groups by the child's current class moves last September's money with them, and last year's "Class 4 collection" quietly shrinks. Mark a child Left and their arrears drop out of the class they were billed in.

For chasing money that behaviour is correct. For auditing a closed year it is not, which is why this report exists alongside them and does not replace them.

👉 The two screens are supposed to disagree for anyone who has moved. That is the report working, not a bug. It is the single most common question about this screen.

What you get

  • Date basis — Fee month (the default, and the right one for year-wise reconciliation), Generated on, or Due date.
  • Summary, grouped by month, campus, class, section, class + section, session or gender. Changing the grouping never changes the totals, only how the rows are split.
  • Student ledger — one row per challan with the class it was billed under, and a small moved since mark on any child who is somewhere else today. Open a row for the full receipt trail.
  • Export CSV for the whole period (not just the page on screen) and Print, which puts the criteria — basis, period, campus, class, and when it was printed — at the top so the printout stands on its own as an audit document.

Three things people query

Fine is already inside Payable. The column is headed of which Fine, not Fine. Late fee and attendance fine are part of the challan total, so adding them again would double-count every fined challan.

Money awaiting approval is shown separately. If your school uses two-step payment approval you get three figures instead of one: Collected (cleared) — approved, and the figure to audit on; Awaiting approval — recorded but still reversible; and Collected (total) — the two added, which is the number the Pay/Print screen shows. In the student ledger a row with unapproved money carries an amber pending tag, and each individual receipt is labelled Awaiting approval or Cleared. A school not using approvals sees zero here and cleared = total.

Very old challans still appear. Schools that were on the system before 2021 have challans saved by earlier systems in different date formats. The report understands all of them, so a 2018 window returns real figures instead of coming back empty.

Access

Your existing staff logins already have it — Finance :: Fee Audit Report was switched on for every school on 2026-08-03. It is still a controlled privilege, so a school that wants it restricted unticks it per user in Admin › Users & Privileges. Worth mentioning when a school asks: the report shows every rupee ever billed and collected, child by child, and it exports to a spreadsheet.

What it deliberately does not show

"Challans not generated" is not offered. To say a challan was missing for a child in September 2024 the system would have to know who was enrolled in September 2024, and that history only begins 2 July 2026. Guessing it from today's roll would be a confident wrong answer in an audit report, so the report shows students billed instead.

Watch

📺 FEE AUDIT REPORT — https://youtu.be/DuJ60G2tMeM

See EDUBase running on your own school's data.

A 30-minute online demo, in English or Urdu, using your fee plans and classes. No installation, no commitment.