An independent school group. Three campuses, 1,412 learners from Grade R to Grade 12, 118 teaching staff and an administration team of nine spread across the campuses.
Admissions were paper forms in lever-arch files. Attendance was a class register, keyed into a spreadsheet at the end of each week by whoever had time. Fees lived in the accounting package, with a separate debtors spreadsheet the bursar maintained because the accounting package could not handle sibling discounts and bursaries. Parent communication was an SMS blast plus 62 WhatsApp groups nobody officially owned.
Schools are the most constrained environment in this series, and almost all of the constraint comes from the calendar.
Why a school is not an ordinary organisation
- The academic year is the release window. There are perhaps three moments a year when a module can go live without disrupting teaching, and if you miss one you wait a term.
- The customer and the user are different people. Parents pay and receive; learners are the subject of almost every record; teachers do the capture. All three need different interfaces and different training.
- Children's data carries heavier duties. Under POPIA, personal information about children is special personal information, which means processing it needs a stronger basis, tighter access control and genuine care about what is shared, including in class groups and photographs.
- Fees are a relationship, not a debt process. The arrears conversation happens between people who will see each other at assembly on Friday, which shapes how the system should surface it.
- Teachers have no administrative time. Whatever you build gets four minutes at roll call, and those four minutes are contested.
- Data travels for years. A learner record moves through thirteen grades and sometimes across campuses, and has to remain coherent the whole way.
In most organisations you can go live on a Tuesday. In a school you go live at the start of a term, or you do not go live at all, and every decision in the project bends around that.
Rolled out by term, not by phase
| Term | Module | Why then |
|---|---|---|
| Term 1 | Learner records and attendance | Fastest visible win, smallest behaviour change, and it establishes the learner data everything else depends on. |
| Term 2 | Admissions and enrolment | Runs ahead of the main enquiry season, so the following year's intake is captured properly from first enquiry. |
| Term 3 | Fees, billing and the parent portal | Deliberately last and deliberately aligned to a billing cycle, with the old debtors spreadsheet run in parallel for a full quarter. |
| Term 4 | Reporting, communication, retirement of the WhatsApp groups | Once parents were already using the portal for something they valued. |
Start with attendance, not with fees
Every school project is pitched on fee collection, because that is where the money is. Start there and you begin with the hardest data, the most anxious stakeholders and a parent's first experience of the system being an invoice. Attendance is captured daily, gives an immediate operational win, gets teachers comfortable with the interface, and produces the clean learner data the fees module needs anyway.
What went in
- One learner record carrying enrolment history, medical and allergy information, guardians and their access rights, and documents, moving with the child across grades and campuses.
- Attendance at roll call on a class tablet, four taps, offline-capable, with absentee notifications to guardians by 09:00 rather than by the following week.
- An admissions pipeline from enquiry through tour, application, assessment and acceptance, so the group could finally see how many enquiries turn into enrolments and where they are lost.
- Fee billing with the real rules: sibling discounts, staff rates, bursaries, term versus annual payment, and part-payment arrangements that had previously existed only as notes in the bursar's book.
- A parent portal and app for statements, absence notes, reports, permission slips and consents, with separated access for guardians in different households, which matters more often than school systems usually allow for.
- A communication log, so a conversation with a parent about arrears or behaviour is recorded rather than remembered.
Three terms, in order
| Period | Phase | What actually happened |
|---|---|---|
| Dec–Jan holiday | Data and build | Learner records migrated for current learners plus three years of leavers. Everything older stayed archived rather than imported. |
| Term 1, week 1 | Attendance live | All three campuses at once, because roll call is the same everywhere. Two staff on each campus for the first three mornings. |
| Term 1 | Settle | Deliberately nothing new for ten weeks. Teachers got used to one thing before being asked to learn another. |
| Term 2 | Admissions | Configured with the registrar, who had run the process in her head for eleven years and had to be persuaded it was worth writing down. She became the strongest advocate. |
| Term 3 | Fees | Parallel billing for a full term. Three discount rules were found to have been applied inconsistently for years, which required a governance decision rather than a technical one. |
| Term 4 | Communication | Portal messaging replaced SMS blasts. Class WhatsApp groups were formally retired, with a stated reason parents accepted. |
Training teachers in the time available
Teachers received fifteen minutes at a staff meeting, a printed card, and a phone number. That is not a compromise, it is the actual budget, and a system that needs more than that in a school will not be used.
What made fifteen minutes enough was ruthless narrowing: teachers only ever see roll call, their own class list, and a way to flag a concern. Everything else, reporting, fees, admissions, sits with administrators who did receive proper training, two days plus a sandbox.
Two teachers were paid a small stipend to sit in on configuration. It was the best money in the project. They vetoed a two-screen attendance flow, insisted the class list default to their own class rather than a search, and caught that the tablet would be used standing up with a lanyard, not at a desk.
Parents were onboarded at the start of a term with a one-page printed guide in the school bag and a QR code, plus a table at the first parents' evening. Fifteen percent never activated the portal, which was expected and planned for: those families continued to receive printed statements, and nobody was penalised for it.
What it cost
| Line | Once-off | Notes |
|---|---|---|
| Implementation and configuration | R418,500 | Three modules across three terms, three campuses |
| Data migration | R133,900 | Current learners plus three years of leavers, guardians, fee history |
| Accounting integration | R71,600 | Billing, receipts and the general ledger |
| Tablets and mounts for registers | R137,700 | One per classroom across three campuses |
| Training and parent onboarding | R84,200 | Staff, administrators, printed parent material |
| Total once-off | R845,900 | Across an academic year |
| Licensing and support | R20,850 / month | Per-learner licensing at 1,412 learners, plus support |
For scale: per-learner licensing commonly runs R12 to R25 a learner a month. A single-campus school of 300 learners can implement well inside R200,000, particularly if teachers use existing devices.
What changed, measured
- Attendance is captured by 08:20 instead of the following week, and guardians of absent learners are notified before 09:00. The safeguarding value of that alone ended the debate about the project.
- Fee arrears over 60 days fell by 31% in the first year, mostly because arrears became visible weekly rather than at term-end, and conversations happened earlier and more kindly.
- Admissions conversion was measured for the first time. The group discovered it was losing a third of applicants between the tour and the application, which turned out to be a follow-up problem rather than a pricing one.
- Administrative time on registers, reports and statements fell by 41 hours a week across the group, which is most of a post.
- Consents and medical information became reliable, replacing a paper trail nobody was confident in on the morning of an excursion.
- The 62 WhatsApp groups became four official channels, which reduced both noise and the group's exposure to conversations it could neither see nor govern.
What we would do differently
We would migrate even less history. Three years of leavers was already more than anybody has looked at since; one would have done, with the rest archived.
We would settle the fee discount rules at governance level before configuration. Discovering inconsistent historical application mid-project put the bursar in an uncomfortable position that was not hers to resolve.
And we would involve teachers a term earlier. Two teachers in the configuration room changed the attendance design for the better; four teachers from the start would have improved the reporting module the same way, and that module took two rounds of rework.
If your school runs on spreadsheets
Pick the term you will go live in, work backwards from it, and choose attendance as the first module. It is daily, it is visible, it is quick to learn, and it produces the clean learner data every other module needs. Then handle children's data with the care it legally and morally requires: tight access, honest consent, and a retention position you can explain to a parent. The general principles are in our POPIA starter, and the reason so many of these systems stall after go-live is in adoption is the project.