Appointments
Appointments is the day-to-day booking board for your salon or spa — book a customer against a service and (optionally) a specific staff member, track the visit through a Booked → Confirmed → In Progress → Done status flow, and hand it off to billing once the service is complete.
Overview
Every appointment has a required Customer Name, Service and Date/Time; Staff/Stylist, Duration, Amount and Notes are optional. Duration and Amount auto-fill from the selected service but can be overridden per booking.
If you pick a Staff/Stylist from the dropdown (populated from your Staff list), the server checks for a double-booking — an overlapping time slot for that same staff member — and rejects the booking with a clear conflict message naming the existing appointment. If no staff list exists yet, you can instead free-type a Stylist name, which skips conflict checking entirely.
Appointments move through five statuses: BOOKED → CONFIRMED → IN_PROGRESS → DONE, plus CANCELLED. The list shows a "→ Next Status" button for the next stage; once DONE, an appointment with no linked sale yet shows a green "Checkout →" button instead.
The date filter defaults to today; use the status pills (All/Booked/Confirmed/In Progress/Done/Cancelled) to narrow the list further. Clicking any appointment opens a detail panel on the right with full details, that customer's visit history (their other past appointments), a WhatsApp confirmation button and Delete.
"Tomorrow's Reminders" is a toggle panel that loads every non-cancelled appointment booked for tomorrow and gives you a one-tap WhatsApp reminder message per customer.
Before You Start
- You must have the Billing feature enabled on your plan.
- For staff-linked appointments and conflict checking, staff members must exist in your Staff list (Settings → Staff, or wherever your plan's staff management screen lives) — otherwise the Stylist field falls back to free text with no conflict protection.
Step-by-Step Guide
1 Book a new appointment
- Open Saloon & Spa → Appointments and click "+ New".
- Enter Customer Name (required) and, ideally, Customer Phone — a phone number is what enables the WhatsApp confirmation/reminder buttons later.
- Select a Service — this auto-fills Duration and Amount from that service's configured values (both remain editable).
- Pick a Stylist/Staff from the dropdown (checks for conflicts) or, if your Staff list is empty, type a stylist name directly (no conflict check).
- Adjust Date, Time, Duration, Amount and Notes as needed, then click "Book Appointment".
- If the customer has a phone number, a WhatsApp confirmation message opens automatically in a new tab after a successful booking.
2 Handle a double-booking conflict
- If the chosen staff member already has an overlapping appointment at that date/time, saving fails with an error naming the conflicting customer and time.
- Either pick a different time/staff member, or — if you are intentionally double-booking (e.g. two chairs, same stylist covering both) — there is no override toggle in this UI; you must choose a different staff member or time slot.
3 Move an appointment through its status stages
- Click the "→ Confirmed" / "→ In Progress" / "→ Done" button on an appointment row to advance it one stage at a time.
- Only appointments not already at DONE or CANCELLED show a next-stage button.
4 Check out a completed appointment
- Once an appointment reaches DONE and has not yet been billed, a green "Checkout →" button appears.
- Click it — this hands the appointment off to the Sales/Billing screen with the service pre-added as a line item (and the customer pre-selected if the appointment had a linked customer) and navigates you there to complete payment.
- Completing that sale automatically marks the appointment DONE (if not already) and links its Sale ID back to the appointment — the row then shows a "Billed" badge instead of the Checkout button.
5 Send WhatsApp reminders for tomorrow
- Click "Tomorrow's Reminders" to expand the panel — it lists every non-cancelled appointment already booked for tomorrow.
- Click WhatsApp next to any entry to open a pre-filled reminder message in WhatsApp Web/App for that customer's phone number.
6 Review a customer's visit history
- Click any appointment to open its detail panel; if the appointment is linked to a customer record, a "Visit History" section lists that customer's other past appointments (up to 8), each with date, service and notes.
7 Filter and delete
- Use the date picker to jump to any day's appointments, and the status pills to narrow further.
- Open an appointment's detail panel and click Delete to permanently remove it after a confirmation — there is no undo.
Every Field & Button, Explained
| Field / Button | What it does |
|---|---|
Customer Name / Phone | Required name; phone is optional but enables WhatsApp confirmation and next-day reminders. |
Service | Required. Picking a service from the dropdown auto-fills Duration and Amount from that service's current settings — both remain editable per booking. |
Stylist / Staff | A dropdown of your Staff list (enables server-side conflict checking) if any staff exist, otherwise a free-text Stylist field (no conflict checking). |
Date / Time | Required. Time uses 24-hour HH:MM. |
Duration (min) / Amount | Pre-filled from the selected service but freely editable for this specific booking. |
Notes | Free-text note attached to the appointment. |
Status | BOOKED → CONFIRMED → IN_PROGRESS → DONE, or CANCELLED. The row's next-stage button always advances exactly one step. |
Billed badge | Shown once the appointment has a linked Sale ID (set automatically when checkout completes the sale). |
Tomorrow's Reminders panel | Lists tomorrow's non-cancelled appointments with a one-tap WhatsApp reminder button per customer. |
Tips & Best Practices
- Always capture Customer Phone at booking time — without it, both the confirmation message on booking and the next-day reminder button have nothing to send to.
- Prefer linking a real Staff member over free-typing a Stylist name whenever possible — only staff-linked appointments get the automatic double-booking protection.
- Use the status pills to filter down to "Done" appointments that still need checking out — they are the ones missing the green Checkout button rather than showing "Billed".