term fee collection

Collecting term fees by PayNow, without the screenshot chase

Every term, the same ritual. Staff send each family a static PayNow QR and the amount due. The parent types the amount and a reference, screenshots the transfer and sends it back. Someone checks every screenshot against the roster and replies to say it arrived. Per family, per term.

Where the time actually goes

The money arrives fine. The work is proving which money is whose. A reference typed with a digit missing. An amount that does not match the fee table because a sibling discount was applied from memory. Two children, one transfer. Several venues, each its own entity, each with its own account and its own WhatsApp line for the screenshots.

Then the second job: working out who has not paid, chasing them before the deadline, and releasing slots by hand when the reminders go unanswered. None of it is hard. All of it is done by a person, one family at a time, every term.

The payment is not the problem. The matching, the acknowledging and the chasing are, and they are all done by hand.

Watch one term handled end to end in 60 seconds

Your admin sends one email. Every student gets a payment link, sent to their parent on WhatsApp. The sheet shows who has paid, and nobody types a reference.

Demo video: term fees collection

solved series · term fees collection

What happens in the video

  1. Your admin exports who has not paidFrom whatever you run. A spreadsheet in the shape of your system’s export: student, guardian, contact, amount.
  2. Email it to usThat is the whole integration. Nobody logs in to your system, and nothing is installed. The shared sheet fills with one row per student.
  3. Each student gets one unique payment link, as a WhatsApp messageThe message carries the student’s name, the amount and the due date. The link belongs to that student alone, so whatever is paid through it is matched to them, not worked out from a screenshot. A family with two children enrolled gets two links, one per child, each matched on its own. Sent from your academy’s WhatsApp Business number.
  4. One tap opens a PayNow QRAmount and reference already filled. Nothing to type, so nothing to mistype.
  5. Paid, matched, acknowledgedThe parent gets a receipt on WhatsApp. The row flips to completed with the payment reference and time.
  6. Your sheet shows who has paid and who has notFilter the completed rows and copy them into your system. Your system stays yours.

The sheet is the control panel throughout. Your staff open it from their own Google account, see every student’s row move from sent to paid as the term fills in, and work from that list, not from a stack of screenshots.

outcome

One link per student, one tap per parent, and a list of who has paid that nobody had to type. The chase is a filter on a sheet, not an evening’s work.

Your rules decide what goes out

There is no AI in this one at all. It never guesses. A row it cannot verify is flagged for your staff, and no message goes out for it. The rules are yours, set once, and applied to every row the same way:

Outside those rules it does nothing. Every message, tap and payment is recorded against the student it belongs to, so when a parent says they paid, the answer is on file with the reference and the time. Nothing runs unsupervised, and the judgment calls stay with your staff.

Who this is for

Academies and tuition centres where fee collection still runs on a static QR and a stack of screenshots:

Multi-venue academies with several hundred families, and tuition centres billing monthly, are the usual shape.

next step

Leave your work email

We’ll reply with a 20-minute slot to walk through how you collect fees today and whether this fits. No deck, no commitment.

Thanks — that’s with us.

We’ll reply from a real inbox with a couple of times that work.

Used only to reply to you. See our privacy policy. We onboard a small number of clients at a time to ensure reliable execution.