A fee statement tells a parent what their child is charged for the term. It is not an invoice: it carries no payments, no arrears and no balance. Schools hand it out before the term, often before any invoice has been raised.
Dashboard → Finance → Fee Structures → Fee Statements opens the generator.
Batch or single
The dialog opens on Batch. Switch to One student for a single PDF — a replacement copy for one parent, say.
| Tab | You get |
|---|---|
| Batch | A ZIP of one PDF per student, named by student ID and name |
| One student | That student's statement as a single PDF |
Choosing who is covered
Pick the term, then the scope:
- All students — everyone enrolled for the term, across every department. One run covers Nursery, Primary, O-Level and A-Level together; each student's statement is built from their own department's fee structure.
- One class — every student in that class level.
- One stream — every student in that stream. Pick the class first.
Progress shows as the run goes, student by student. The download starts by itself when it finishes.
What the statement shows
The student, their class and stream, the term, and the fees charged to them with a total. Where the fee structure has optional components that apply to the student, they are listed separately under Offered, not charged, outside the total. An opt-in fee moves into the billed total once the student opts in. Each statement uses that student's choices for the selected term; choices do not carry forward.
The statement does not print which student type or class a fee targets. Every line on it already applies to the student it is addressed to.
Students whose department has no published fee structure for the term cannot have a statement. The run names each one under Not included and carries on, so the ZIP is still produced for everyone else. Publish the missing structure and run it again for those students.