---
title: Drop-in Booking
slug: drop-in-booking
docTags: 
createdAt: 2026-09-06T15:40:49.180Z
---

:::hint{type="info"}
This is a different feature from [Instructor Availability & Bookable Sessions](docId\:dSOA74QWE7dVnGQQSE79x). Bookable Sessions is for 1-to-1 or slot-based sessions booked against an instructor's declared free time. **Drop-in Booking** is a self-join class mode — no enrollment required, no instructor availability involved.
:::

**Drop-in Booking** lets members join a specific dated session of a class without enrolling in it — a one-off, pay-as-you-go join. It's suited to casual/trial attendees, open gym-style sessions, or any class you'd rather sell per-visit than per-month.

## 🔧 Setting up a drop-in class

First turn on the master switch: **Attendance → Settings → Allow Drop-in Booking**. This unlocks an **Allow Drop-in Booking** toggle on Fixed weekly classes in the Add, Edit, and Clone Class forms.

Because it's a toggle on a regular weekly class, one class can have **both** an ongoing enrolled roster **and** one-off walk-in bookings for individual dates. (Drop-in used to be a separate scheduling mode you had to choose instead of enrolment; existing drop-in classes were converted automatically and keep working as before.)

On a drop-in class, you can set:

- **Capacity** — the same seat cap used for regular classes
- **Allow Waitlist** — lets members queue when a session is full
- **Drop-in Rates** *(optional)* — an open list of named price options (e.g. "Member rate", "Guest rate"); members pick one when joining. If you don't set any, the class's plain session fee is used.

:::hint{type="info"}
Drop-in classes only support **Per Session** or **Package** billing — there's no ongoing commitment to bill monthly or by installment. Choose whichever fits how you want members to pay.
:::

**When invoices are created** is controlled in **Payment Types → Settings**: either automatically at check-in (same as a regular per-session class), or immediately **at booking** — the latter is what triggers a Pay Now step right after joining.

Enrolled students always occupy a seat; drop-in joiners fill whatever's left. One-off **Extra Sessions** you add to a class can also be booked by members from the Booking page.

## 👨‍👩‍👧 Member experience

Members find open sessions on the **Booking** page (web and mobile — mobile lives under the More menu).

1. Browse upcoming dates for each drop-in class
2. Tap a date, pick which child is joining (repeat per child if joining more than one), pick a rate if the class has more than one
3. Choose to pay now or use a package credit if the class allows package billing
4. Confirm

If the session is full and waitlist is enabled, the member joins the waitlist instead at no charge. If a real invoice was created for the join, a **Pay Now** button appears immediately and deep-links straight to that invoice.

**My Bookings** on the same page lists Confirmed, Waitlisted, and past bookings, with status badges like **Spot open!** or **#N in line**.

### Cancelling

Cancellation is governed by an academy-wide policy (**Attendance → Settings**):

| Policy          | Behaviour                                                                              |
| --------------- | -------------------------------------------------------------------------------------- |
| **Always free** | Members can cancel anytime with no charge                                              |
| **Cutoff**      | Free before a configured number of hours ahead of the session; charged (or kept) after |
| **Locked**      | Confirmed bookings can't be cancelled by the member at all                             |

Waitlisted (unconfirmed) spots can always be dropped for free, regardless of policy.

## ⏳ Waitlist

When a session is full and waitlist is on, members queue in join order. How spots free up depends on your **Waitlist promotion** setting:

- **Automatic** — the next person in line is promoted the moment a spot opens
- **Admin approval** — admins/team manually promote from the waitlist overview panel; only the person at position #1 can be promoted

Either way, a promoted member gets a **Spot open!** badge and must actively **Confirm Spot** — choosing how to pay at that point, not automatically. A spot also opens up (and triggers promotion) when an admin removes someone from the roster. Unpaid bookings under "pay at booking" billing are auto-cancelled after a configurable grace period, freeing the spot for the next person in line.

## 🔒 Access

Class setup is admin-only. Joining, leaving, and confirming a promoted spot is available to any member for their own linked children. The waitlist overview and manual promotion are limited to admins and team members (team scoped to their assigned locations).
