Requesting and Approving Refunds
Refunds are self-serve, but gated behind a liability acknowledgment — the owner has to explicitly accept a versioned liability note before anyone at the school can request one, since a refund moves real money back out.
How old a payment can be
Before you use this
Where you can, ask parents to pay by transfer into their child's account number, or on your card terminal. Those payments are confirmed by your provider and record themselves, with no typing. Keep manual payments for money that truly came in another way, keep the approval step in place, and check your cash against your entries.
The liability gate
Requesting a refund
Go to Money → Refunds.
Select the auto-collected payment to refund.
Choose a category: overpayment, withdrawal, duplicate payment, fee correction, parent request, or other.
Enter a reason — minimum 20 characters.
Choose a method: it must match the original payment's provider, or bank_transfer (which requires a reference at least 3 characters long as proof).
Submit.
Approval
If the owner submits the request, it auto-applies immediately. If anyone else submits it, it waits for a different staff member who holds Approve Refunds to approve it — the requester and approver can't be the same person.
Confirming an externally-initiated refund
If a refund or chargeback was initiated on the provider's side and your webhook only detected it after the fact, this same page lets you confirm and reconcile that record rather than only handling refunds you initiated yourself.
