Bookings
A “booking” in EduBook is one student enrolling in one group. Most of your daily admin time touches the bookings UI — this chapter covers every path a booking can take from creation to cancellation.
The four booking paths
| Path | Who triggers it | Approval |
|---|---|---|
| Manual | Admin / staff in-app | Auto-approved |
| Booking code | Parent on public form, with a code | Auto-approved |
| Public form | Parent on public form, no code | Goes to request queue |
| Request queue | Admin reviews → approve / reject | Manual decision |
Manual bookings are the fastest (4 clicks: New → student → group → save) and best for centers where the admin handles all enrollments in person. Booking codes are best for pre-paid spots and campaigns. The public form + request queue handles inbound demand from people who found you online.
Booking statuses
Every booking is in one of these states:
- Pending — request submitted, waiting for admin review.
- Approved — admin (or auto-approve) accepted, student is enrolled.
- Rejected — admin declined (with optional note).
- Cancelled — was approved, then cancelled. Counts in cancellation reports.
Filter the bookings list by status to find what you need.
Manual booking
Bookings → New booking:
- Pick the student — search by name or ID. If they’re new, click “Create new student” inline (faster than going to the Students page first).
- Pick the group — filtered to active groups in the active semester.
- Optional: payment status, notes.
- Save.
The booking lands as approved and the student is enrolled immediately.
Booking codes
A code parents can paste on the public form to skip the request queue and auto-approve.
Creating a single code
Booking Codes → New code:
- Group — which group the code unlocks.
- Max uses — usually 1 for a single-spot pre-pay; higher for campaign codes.
- Expiry date (optional) — auto-disable after this date.
The code is shown once (e.g. EBK-AB12CD). Copy and share with
the parent.
Creating codes in bulk
Booking Codes → Bulk create — pick group, quantity, expiry. Get a CSV of all codes you can mail-merge or print.
When parents redeem
On the public form’s last step, parents paste the code. EduBook validates it (right group, not expired, uses left), auto-approves the booking, and decrements the code’s remaining uses.
The public form path
When a parent submits the public booking form WITHOUT a code,
the booking lands in your Booking Requests queue with status
pending. From there:
- Approve — student is enrolled. Confirmation email sent.
- Reject — request declined. Optional note explains why (e.g. “Group full”); shown in the rejection email.
The queue is the operational page admins check first thing every morning. Pending requests also surface on the dashboard.
Cancellations
Admin-side cancel
Open the booking → Cancel. Optional refund flag, optional note. The cancellation:
- Sets status to
cancelled. - Removes the student from the group’s roster going forward.
- Sends a cancellation email to the parent.
Parent-side cancel (24-hour window)
Every booking confirmation email includes a tokenised cancel link valid for 24 hours after the booking was approved. Parents clicking it see the booking summary and a confirm button.
After 24 hours, the link still loads but tells the parent to contact the center directly — last-minute cancellations are a center decision, not an automated tool.
See Public Pages for more on the public cancel flow.
Common questions
A parent says they paid but the booking is still pending. Payment and approval are separate. Public-form bookings always land as pending (unless a booking code was used) — even if payment was captured. Approve manually from the queue.
Can I undo a cancel? There’s no undo button. If you cancelled by mistake, create a fresh booking for the same student + group — the cancelled row stays as audit history.
A student is already enrolled and I’m trying to add them again. EduBook prevents duplicate enrollments per group. To move them to a different group, use Transfer on the student profile (see Students) instead of canceling and re-creating.