Skip to main content

Customer Booking Process

Before you begin

How it works

Customers pick date, time, and staff (if enabled) on the product page, add the appointment to cart, and checkout. The slot is held while the cart is active.

What you need

  • Appointable product with availability rulesAppointable product
  • Working WooCommerce checkout

You are ready when

  1. ✅ A test booking completes and confirmation email arrives (if emails are on)
  2. ✅ The appointment appears on Appointments → Calendar

Flow: Booking form → Cart → Checkout → My Account → Appointments

Booking form

The form on the appointable product page reflects your product settings (duration, staff, add-ons). Available slots appear after you add Yes availability rules.

Appointment form

  • Partially booked days may show a gray indicator on the calendar — optional; hide with custom CSS if you prefer a cleaner look.
  • Cost updates as the customer selects options.
  • Book Now adds the appointment to the cart when a valid slot is selected.
  • In cart status holds the slot for about 1 hour to prevent double-booking.

Selection row (time-based products)

Between the calendar and time slots:

Appointment form selection info

Recurring packages

When Can be recurring? is on, customers check Repeat this appointment after picking a slot.

Repeat picker on booking form

See Recurring packages for prepaid vs pay-first and View series in My Account.

Cart and checkout

Cart line items show product name, date/time (or package summary), duration, staff, and price.

Appointment in cart

Recurring packages show pattern and session count instead of a single slot:

Recurring package in cart

Requires confirmation: no payment at checkout — the customer submits details; you approve, then they pay via email link or My Account.

Appointment confirmation request

My Account

Customers manage bookings under My Account → Appointments: view, pay (when pending), reschedule, or cancel per product rules.

My Account appointments

Recurring packages: View series lists sessions, pay remaining balance (pay-first), and scoped cancel/skip/reschedule — Recurring packages — My Account.

Emails

Lifecycle emails (confirmation, reminder, cancel, follow-up) are configured at WooCommerce → Settings → Emails.

See Notifications for each template, ICS attachments, and customization.