Billing and invoicing for a tutoring business
Where the money quietly leaks between a booking and a payment, what a cancelled package legally owes back in Quebec, and what your invoices have to show.
Money leaks quietly. One month you’re running a full schedule with every seat booked and good tutors and families who seem happy, and the next you’re staring at a bank statement wondering where four hundred dollars of sessions went. Small gaps don’t announce themselves. They sit in the space between a booking and a payment, and they stay there until somebody goes looking.
If there’s one thing thirteen years of process engineering taught me, it’s that a leak you can’t see is still a leak.

Where the money actually goes
Almost none of it is theft or bad debt. It’s arithmetic that nobody did.
| The gap | What it looks like | What it costs |
|---|---|---|
| Session happened, invoice didn’t | A make-up class squeezed in and never billed | The full session |
| Package balance drifts | Spreadsheet says four left, the family used six | Two free sessions, and an awkward call |
| Card declined, nobody noticed | Expired card on a monthly plan | A whole month, often several |
| Rate changed, invoice didn’t | Tutor moved to a senior rate in September | The margin, every session |
| Cash and e-transfer unlogged | Paid at the front desk, written on a sticky note | Impossible to know |
Each row is a place where two systems that should agree don’t. A booking app knows the session happened. A payment tool knows what was paid. Neither knows about the other, so a person has to hold both in their head, and people are bad at that in week three of a busy term.
The package balance is where it usually starts
Prepaid packages are the right offer for a tutoring business, and they’re also the single most common place the numbers come apart. A family buys twelve sessions. Twelve becomes eleven becomes nine, and somewhere around session seven the count in the spreadsheet and the count in reality stop matching.
The fix is unglamorous. Credits draw down when a session is marked complete, not when someone remembers to update a file, and the family can see the same balance you can. That one change moves packages from something you’re nervous about to something you can sell without hedging.
What a cancelled package actually owes back
This is the part most tutoring businesses get wrong, and it’s worth knowing before you write your cancellation policy rather than after.
In Quebec, selling courses makes you a merchant under the Consumer Protection Act. The Office de la protection du consommateur is direct about what follows: merchants that offer courses such as driving, dance or music lessons must give the client a contract, and the client can cancel at any time.
What you can keep when they do is capped by law:
- Before the sessions start, nothing. You cannot claim a fee or any compensation.
- After they start, two amounts only. The cost of the sessions already taken, plus a penalty that is the lesser of $50 or 10% of the price of the sessions not yet given.
- Then a clock. You have 10 days from the date the cancellation notice was sent to refund what’s owed.
The Office works an example that makes the size of it obvious. Ten karate classes bought for $250, cancelled after two: you can claim $50 for the two taken, and a $20 penalty, being 10% of the $200 not yet delivered.

So a “no refunds on packages” policy is not a strict policy in Quebec. It’s an unenforceable one, and a family who looks it up will find that out. Worth reading the Office’s own pages and checking your own situation rather than taking my summary as the last word, since some educational bodies are exempt and a tutoring centre generally isn’t one of them.
The operational point is that your system needs to answer one question quickly: how much of this package has actually been delivered? If credits draw down automatically, that number is already there. If they live in a spreadsheet, you’re negotiating from a guess against a legal deadline.
What your invoices have to show
Less than most people assume, and more than a text message.
Revenu Québec is clear that no special invoice format is imposed under the GST and QST systems, outside restaurants and taxis. There’s no mandated template for a tutoring business.
The catch is on request. A client who is a registrant can ask you, in writing, for the information they need to claim an input tax credit, and you have to be able to produce it: your business name, the invoice date, the tax amount, your GST and QST registration numbers, the client’s name, and a description of the service. If you tutor for companies or bill through a parent’s business, that request will come eventually.
A receipt that carries those fields by default costs nothing extra and saves a scramble later.
Failed payments are not a billing problem, they’re a retention problem
An expired card looks like an accounting nuisance. What it actually produces is a family who quietly stops attending because a payment failed and nobody said anything, which reads to them as your business losing interest.
Retry a failed charge on a schedule rather than once. Tell the family it failed, in a message that assumes a card problem rather than a money problem. Keep a card on file so the fix is one tap. None of that is clever, and all of it recovers revenue you had already earned.
The bottom line
Add up the sessions you delivered last month, then add up what you invoiced. Two numbers that should be identical, from two systems that don’t talk. The difference is what your billing setup is costing you, and almost nobody measures it.
Make the credits draw down by themselves. Write a cancellation policy that matches what the law actually allows. Put the tax fields on every receipt. Chase a declined card like a retention event, because it is one.
In Pillar OS this lives in billing and invoicing, which draws packages down as sessions are completed, and the parent portal shows families the same balance you see, which removes most of the arguments before they start. If you’re still deciding how to shape the offer itself, session packs versus subscriptions covers that, and the current pricing is public.
Steven Kallini · Founder
Mechanical engineer by trade, hooked on computers since he was a kid, and a principal process engineer for 13 years before Pillar OS. That job was finding where a process quietly leaked time and money, then designing the fix. Pillar OS is the same work, aimed at the admin that eats a tutoring owner’s week.