Skip to main content
Browse the guide

Facilities & programs

Programs & enrolment

Run term programs and clinics — sessions, enrolment, a session waitlist, rosters, attendance and door check-in, plus priced bands inside one session, a cap on how many sessions one participant may take a week, levels and skills, make-up credits for a missed class, member self-withdrawal from a paid session, trial classes and re-enrolment invitations.


The Programs page runs your term-based coaching and activity programs — junior clinics, skills academies, social nights — as recurring weekly sessions with enrolment, a roster, a waitlist and a per-session attendance register. A session can offer two or more priced bands (a cheaper "lesson only" spot alongside the main class), and you can sell passes families pay for up front and spend session by session. You'll find it under Facilities & programs → Programs, with passes on their own Passes page beside it; families browse and enrol at /programs on your club site, with each program getting its own /programs/{slug} page.

Who can use this

Programs are a Pro plan feature. Club administrators always have access; moderators need the Manage programs permission (programs.manage), granted on Roles & positions. Members enrol themselves or their dependants on the public pages — guardians can enrol the kids on their account, and each roster entry shows the participant's name, not just the account holder's.

What's on the page

  • Programs: every program with its term dates, price, capacity, enrolment count and status (draft or published).
  • Sessions: the generated weekly sessions for a program — each one individually movable or cancellable.
  • Bands: on a program's own page, the priced sub-tiers inside one session (for example "Full session" and the cheaper "Lesson only"), each with its own optional price and sub-cap.
  • Roster: who's enrolled (term or casual), with the participant's name, the band they booked and the enrolling account.
  • Attendance: a per-session register — mark each participant present, late or absent, or let the door tablet or a participant's own QR code do it.
  • Waitlist: the queue when a program's term is full, or when one session is full, with the standard offer engine.
  • Passes (its own page — Facilities & programs → Passes): the pass types you sell and every pass a family currently holds, with the balance left on each.

Step by step

Create and publish a program

Set up a program asks two questions, and the program starts as a draft either way.

  1. What's the program? — the name, the Web address (which fills itself in from the title), a description, the term start and end, the session day and time, and the venue.
  2. Who can enrol, and what does it cost? — the term price and an optional casual per-session price for drop-ins (either can be 0 for free), the capacity, whether to run a waitlist once it's full, who's eligible (everyone or financial members only), and the enrolment window. Prices lock as soon as the first person enrols. Capacity is the total for the whole session — if you add bands below, each band's own capacity is a smaller cap inside that total, never on top of it.
  3. Save — sessions are generated weekly across the term. They're real, individual sessions: drag one to a new date around a public holiday, or cancel a single week, without touching the rest.
  4. Publish. The program appears at /programs and enrolment opens when the window does.

Take enrolments

  1. Families enrol on the program page — for the full term, or per session where you've set a casual price. If the session has bands, they choose one and pay its price (or the program's casual price, when a band names none of its own). Paid enrolments go through card checkout, a pass they already hold, or confirm instantly if free.
  2. When the whole session is full, the enrol button becomes Join the waitlist for that session — the offer goes out for that day only, never the whole term. When only a term place is full but bands still have room, or a family's chosen band alone is full, they're told which is full and can try another band. Offers go out strictly first-come-first-served, and each offer holds the spot for 48 hours before passing to the next in line — the same waitlist engine as tickets and memberships.
  3. Watch the roster fill. Each entry names the actual participant and the band they booked, so a parent enrolling two children appears twice, once per child.

Run the term

  1. Before each session, open its attendance register and mark everyone present, late or absent — the register is per session, so patterns across the term are easy to see. If you've turned on the door (see below), most of the roster marks itself.
  2. Need to move a week? Edit that session alone; enrolled families are notified of the change.

Roll over to next term

Use Duplicate to new term: pick the new term dates and you get a fresh draft with the same settings and newly generated sessions — roster and attendance start empty. Tweak prices if needed and publish.

Progression, make-up credits and trial classes

A program's own page carries a Program tools tab strip — Progression, Make-up credits and Re-enrolment. All three are switched on per program from the Program policy card on the Progression tab.

Levels, skills and the marking sheet

  1. On Progression, tick Award levels and skills.
  2. Under Levels, add the rungs of your own scheme in order — Level 1 — Bubbles, Level 2 — Goldfish — with an optional note on what each one takes.
  3. Under Skills, add the things a coach ticks off, each optionally grouped under a level.
  4. The Sheet lists everyone enrolled. Award the next level with one button, tick skills off as the coach sees them, and Undo an award made in error.

A participant's level belongs to that enrolment, so the same child can be at Level 3 in one program and Level 1 in another in the same week. Nobody starts at level one: until you award something the sheet says Not assessed yet, which is also how you place a newcomer — an assessment is just an award. Skills grouped under a level only appear once the child holds that level.

Families see the level name on the program's public page. They do not see individual skills.

Make-up credits

  1. Tick Offer make-up classes, set Absence notice (hours) — how far ahead a family has to tell you — and Credit expiry (days).
  2. A family reports an absence from the program page on your public site. If they gave enough notice, a credit is issued in the same moment.
  3. They book the credit into one of your other class times from the same page. A credit cannot be spent back into the class it came from, because their term enrolment already holds every session of it.
  4. The Make-up credits tab shows the balance, every credit and every reported absence. Give a credit issues one by hand when the coach was away or someone rang the wrong number, and Withdraw takes back one that has not been spent.

The expiry date is stamped on each credit when it is issued, so changing the policy later never re-dates credits families already hold. Refunding or cancelling a term automatically withdraws any unspent credit that term earned. An admin can record an absence after the notice window has passed — the 8am phone call — up to 30 days after the class.

Trial classes

Tick Offer a trial class and set a Trial price, or leave it blank for a free one. The program's public page then offers the trial to visitors who are not enrolled — including people who are not signed in, since somebody trying a class is by definition not a member yet. One trial per child per program, ever, counted on the name and email given.

Re-enrolment

On the Re-enrolment tab, pick the Previous term and click Build list. Everyone with a confirmed term enrolment in that program is added, one invitation per child, with anyone who cancelled or was refunded left out. Send the next batch sends up to 100 at a time, so a large program goes out over several clicks. Families who unsubscribed are skipped, and shown separately as unsubscribed rather than counted as failures — re-enrolment invitations are marketing, so they carry the same unsubscribe link as your newsletters and honour the same opt-out. Building the list also copies your levels and skills into the new program when it has none of its own.

Price bands, session waitlists, passes, self-withdrawal and door check-in

Five more things a program's own page can do, all switched on per program rather than for the whole club.

Price bands inside one session

A venue often runs one hour of court, pool or floor time with two different offers on it — a full-session spot and a cheaper "lesson only" spot for participants who can't use the whole session. Bands are how you sell both from one program.

  1. On a program's page, add a band with a name, an optional price (leave it blank to charge the program's own casual price) and an optional capacity.
  2. A band's capacity is a cap inside the program's own capacity, never on top of it — so if you want "5 lesson-only spots out of 20 total", set the program's capacity to 20 and the band's to 5; if you want "5 lesson-only spots as well as 20 full-session spots", set the program's capacity to 25 and cap the full-session band at 20.
  3. A program with no bands works exactly as it always has — bands are entirely optional.
  4. When a program has bands, a family must choose one to enrol; a session refuses a place when either that band is full or the session's total is full, and says which.

Session waitlist

The program-level waitlist (above) queues for a term place. A club selling by the single session needs a queue for one sold-out session instead — "the Tuesday 6am session is full, tell me when a place opens", without meaning the whole term. Turn this on with the program's own Offer a waitlist switch: once it's on, a sold-out session offers Join the waitlist for this session as well as the term waitlist, and an offer for a freed session-only place is exactly that — one session, not a term enrolment.

Passes

A club can also sell passes families pay for up front and spend session by session — a punch-card pack, or an unlimited period pass. Passes have their own page (Facilities & programs → Passes), separate from any one program because a pass can be spendable across every program in your organisation. At checkout for a casual or trial session, a family holding a spendable pass can pay with it instead of a card. See the Passes help page for the full walkthrough.

Let members withdraw themselves

Today, a free enrolment is always self-cancellable and a paid one needs you — that stays true unless you switch on self-withdrawal for a program. With it on, a family can release their own paid place from their account, subject to a notice period you set (how many hours before the session they must act) and an outcome you choose:

  • Credit (the default) — they get a program credit for the value, spendable on another session in the same program.
  • Forfeit — the place is released and the club keeps the money.

A pass-funded place always gets its punch back, whichever outcome you choose — a punch is an entitlement already paid for, not money the club has banked for that session. This never offers a card refund from the member's side; a refund to the original card is still something you do from your payment provider's dashboard.

Door check-in

Give a session its own door with a kiosk token on the program's policy card, then open /programs/{id}/door/{token} on a tablet at your venue's entrance. The door shows whoever is booked on the session running right now (from 30 minutes before it starts) and lets a monitor tap each name in — or a participant can scan their own booking's QR code, emailed with their confirmation, to check themself in. Either way it writes to the same attendance register you'd mark by hand. The door refuses a participant who isn't booked for this session, which is the point: a printed roster can't stop somebody from a different day walking into a full session, and the door can.

How many sessions one participant may take

A program can cap how many sessions one participant books in a period — "three open sessions a week". Set it on the program's own page: the number, the period (day, week or month), and whether the cap counts that program's sessions or every program in the club.

The cap is enforced by the database at the moment of booking, so it holds however a place is taken. A participant sees the rule before they book, and their own tally once they pick a session and a name. Cancelling a place gives the allowance straight back — there is no bookkeeping to do.

Two things worth knowing. A full-term enrolment is exempt both ways: it is not counted and never refused, because one purchase covers every session and has no week to fall in. And a participant is identified by the booking email plus their name, so one family can book two children without either one eating the other's allowance.

Field reference

  • Status — draft (invisible to the public) → published. Unpublishing hides a program from /programs but keeps its roster.
  • Term price / casual price — term price covers every session; the casual price (optional) allows per-session drop-ins, unless a band sets its own price. 0 = free.
  • Capacity — the TOTAL for one session, term or casual together. A band's own capacity is a smaller cap inside that total, never on top of it.
  • Waitlist — the program waitlist queues for a full term; turning on the program's waitlist switch also offers a session waitlist on any single sold-out session. Both run FIFO offers on 48-hour windows.
  • Eligibility — everyone, or financial members only. Lapsed members count as ineligible until their membership is paid up.
  • Enrolment window — when self-service enrolment opens and closes. Admins can add to the roster outside it.
  • Self-withdrawal — off by default. When on, a family can release their own paid place inside the notice period you set, for a credit (default) or a forfeit.
  • Door check-in — off until you set a kiosk token on the program. A participant not booked on the session showing is refused, by design.
  • Session quota — off by default. When set, one participant may take that many sessions per day, week or month, counted either across this program or across every program in the club. Term enrolments are exempt. A cancellation returns the allowance immediately.

Tips & FAQ

  • Can someone cancel their own enrolment? Free enrolments, yes — always self-cancellable from their account. A paid enrolment needs you, unless you've switched on self-withdrawal for that program — with it on, a family can release their own paid place inside the notice period, for a credit or a forfeit depending on your policy. A card refund is never offered from the member's side either way; issue one from your payment provider's dashboard.
  • Do casual attendees appear on the roster? Yes — per-session enrolments show on that session's register alongside the term participants, along with the band they booked if the program has bands.
  • What happens to sessions if I shorten the term? Sessions outside the new dates are removed if nothing has been marked against them; sessions with attendance are kept as a record.
  • One participant is booking every open session and leaving nothing for anyone else. Set a session quota on the program — say three a week. It is enforced when the place is taken, so an unlimited pass does not get round it, and cancelling gives the allowance straight back. A full-term enrolment is exempt.
  • Waitlist offers going unanswered? Each offer expires after 48 hours and moves on automatically — nobody has to babysit the queue, on either the term waitlist or a session waitlist.

Does a child's level carry into next term automatically? Not yet. A level belongs to the enrolment it was awarded on, so when you build next term's program the sheet starts everyone at Not assessed yet and the coach places them. Building a re-enrolment campaign copies your levels and skills across, so the ladder itself is not retyped.

If we cancel a class, does everyone get a credit? No — cancelling a session credits nobody. Use Give a credit on the Make-up credits tab for the families affected, which also lets you say why.

Can a family use a credit in the same class it came from? No. Their term enrolment already holds every session of that class, so a make-up goes into one of your other class times.

What happens to a credit nobody uses? It stops being spendable on its expiry date and shows as expired. Nothing is refunded — a credit is a place held in a class, not money.

Does "5 Lesson Only" mean 5 of our 20 spots, or 5 on top? Whichever you set up. Give the program 20 total and cap the Lesson Only band at 5, and it's 5 of the 20; give the program 25 total and cap Full session at 20 and Lesson Only at 5, and it's 5 on top. The two numbers are entirely yours to set.

Can a pass pay for a whole term? No — a pass pays for single sessions only (casual or trial), never a term enrolment. A term enrolment already holds every session of its program, so there's nothing a punch would add.

What happens to a punch when a family withdraws? It always comes back onto the pass, whatever your program's withdrawal outcome is set to — a punch is an entitlement already paid for, so keeping it on a released place would be charging twice.

Does the door tablet need internet at our venue? Yes — it's a normal web page (/programs/{id}/door/{token}), so it needs the same connection any browser does. Rotate the kiosk token from the program's policy card if a tablet is lost or walks off; the old link stops working immediately.

A participant says the door refused them — why? They're not on the roster for the session the door is currently showing. That's the door working as intended: it only ever admits someone booked for that session, not any session in the program.