Attendance, prepaid lesson bundles, invoices and online booking for tennis, padel, squash and badminton academies. In your country, your currency, with your records sealed off from every other academy. Every feature exists because a coach was annoyed about something on court.
Free to start. No card, no sales call.
This is the screen a coach actually uses. Tap who turned up, say whether the session happened, save. Everything else — balances, invoices, the waitlist — follows from that one action.
You send your student list. We hand back a working system on your own domain, in your currency. The handover call is an hour.
Publish your weekly slots and share the link. Requests land in the panel for you to confirm — no marketplace, no commission.
Who came, who didn't, and whether rain or you cancelled it. It saves with no signal and syncs when you get some.
Prepaid lessons count down, empty bundles get flagged, invoices come off real attendance. A cancelled session costs nobody a lesson.
Most booking software is a calendar with a payment button bolted on. These are the details that decide whether the numbers still add up at the end of the month.
Attendance records why a session didn't happen. Rained off and coach cancelled are separate outcomes, and neither one spends a prepaid lesson.
Prepaid lessons count down when you take attendance. Delete a session by mistake and the exact students it charged get their lesson back — not a guess at who was probably there.
A balance with no end date is a debt with no end date. Every bundle carries an expiry, and the panel warns you before it lapses.
Group sessions have a cap, four by default. Nobody past the cap is silently dropped — they're held in the order you picked them.
Publish your weekly slots and share one link. Players pick a time and a date, you confirm in the panel. It's a page on your own domain, not a listing on someone else's marketplace.
Courts have bad reception. Failed writes queue on the device and drain when the connection returns. A server rejection is reported instead of retried, so a lost change never hides.
Anyone already marked for a date disappears from the roster. Marking twice would spend a second lesson for a session that happened once.
Raise an invoice, send it, mark it paid by hand. No card processing and no recurring billing — which in most of the world is what a coach actually wants.
Isolation is enforced by the database itself, not by our application code — every row carries your academy and the database refuses to return one that is not yours, even if the software above it asks wrongly. These records hold children's names, dates of birth and parents' phone numbers, so we test that boundary rather than trust it: sixteen isolation tests run against every schema change, each one trying to read, change or delete another academy's data and required to fail.
There is no sales call and no card. Create your academy, add a few players, take a register. If it does not fit, you have lost five minutes — and you can export everything you entered on the way out.
Free for your first 5 players and 5 invoices. Your booking and check-in links work from the first minute.
Most academy software charges by member count, which fines you for growing. Sign up thirty juniors in September and your software bill shouldn't move.
Any of them. The panel is built per academy with your currency, date format and language settings, and your database is created in the region closest to you. The six demos above are the US, Spain, Singapore, South Africa, Egypt and Nigeria, and none of them required a code change — only a config file. We price in fourteen currencies and will quote in yours if it isn't listed.
You publish your weekly slots in the panel, and you get a booking page on your own domain. Send that one link to anyone. Players pick a slot and a date and send a request; you confirm it in the panel. It's a request, not a payment, so nothing is charged and no balance moves until you say so.
Yes, whenever you want, without asking. The panel exports everything — students, attendance, invoices, sessions, sponsors — as a single file. It's your database; we just set it up.
You keep the domain, because you own it, and you take an export of your data with you. We'd rather you leave cleanly than feel trapped.
No, deliberately. You raise an invoice and mark it paid when the money arrives — bank transfer, cash, mobile money, whatever your players already use. Card processing would mean fees and compliance work that most academies outside the US and Europe don't want, and it would make us pick one payment provider for the whole world.
Honestly, no. Anything we build goes into the product so every academy gets it, or we don't build it. That rule is the only reason the price can stay where it is — the moment we maintain a special version for one club, everyone pays for it.
About a day, and we do it. You send your student list, we hand you a working system on your own domain. The handover call is an hour, because it's built not to need a manual.
No. It was built in a tennis academy, and it fits padel, squash and badminton with nothing changed — same lessons, same bundles, same court capacity problems. Beyond racquet sports, the words and defaults move: a swim school gets Lane instead of Court and groups of eight, a football academy gets Pitch. That is a setting, not a different version of the software. Pick your sport at signup and the panel adjusts itself. If you coach something that runs on scheduled sessions, registers and prepaid blocks, it fits.
Send us your student list and we'll set up a working system for you to look at, in your currency. If it isn't better than what you're doing now, you've lost an email.