Taking appointments and reservations

Let customers book a time from your live availability — one-on-one appointments (salon, spa, coaching) or shared seated reservations (restaurant, tasting room). You set the hours and the rules; the store generates the open times and never double-books.

Taking appointments and reservations

Bookings on Zillo are Calendly-style: you set weekly hours and rules on a resource (a stylist, a table, a tasting room), and the store generates the open times for customers to pick from. The store never double-books and lets you flip between two shapes:

  • One-on-one appointments — salon, spa, coaching, dental, court bookings.
  • Shared seated reservations — restaurants, tasting rooms, anywhere multiple parties book into the same window until it fills.

For fixed-date events (a 7pm tasting, a Saturday morning class), use Event tickets with multiple dates instead — the customer picks one date at checkout.

Appointment vs reservation

The shape is chosen by the Max seated setting:

  • One-on-one appointment (Max seated = 1) — the booked time belongs to one customer. A hair appointment, a massage, a 1
    coaching session. Booking 2pm with a stylist takes that stylist's 2pm.
  • Seated reservation (Max seated > 1) — a single time holds several parties until it's full. A 7pm restaurant seating that seats 20; a party of 6 takes 6 of those seats.

Create a booking product

    1. Open Products and click New productAppointment or Reservation (or the AI builder will route you to the right form).
    2. Fill in the basics — title, description, photo, and price. A free reservation? Set the price to 0 and customers book with no payment.
    3. Assign a resource — the person, table, or room this is booked against.
    4. Set the rules (below), then Publish.

The booking rules

  • Duration — how long one appointment lasts.
  • Time step — how far apart the offered start times are. Leave blank for back-to-back times (every duration minutes).
  • Minimum lead time — how far ahead a customer must book. A time disappears once it's inside this window, so you're never surprised by a booking five minutes out.
  • Booking window — how many days into the future customers can book.
  • Buffer before / after — quiet time padded around each appointment so back-to-backs aren't jammed together.
  • Max seated — guests per time. 1 = one-on-one; higher = a shared seating.
  • Min / max booking size — the smallest and largest party a single booking can be.

For restaurant seatings, set the time step equal to the duration so seatings are clean and back-to-back — a 6

, a 7
, a 9
— rather than overlapping.

What customers see

The booking page shows the resource (or lets them choose, when more than one is offered), then a date and the open times. For a seated reservation each time shows how many seats are left, and the party-size picker won't let them book more than will fit. Sold-out times drop off automatically, and the store never double-books a one-on-one slot — even if two people try at the same instant, only one wins.

When the customer reaches checkout, their time is held for a few minutes while they fill in their details — a countdown shows how long. That stops two people racing for the last table and losing it mid-checkout. If the hold runs out, they're prompted to pick another time.

Add upgrades and required choices

Attach add-ons to a booking — a wine pairing, a photographer, a bottle on arrival — from the product editor. Optional add-ons are simple extras; group them into a required, choose-one menu (a banquet menu where every party must pick one) when you need a selection before checkout can continue. See Add-ons and upgrades.

What you get

Every booking issues a confirmation email with a QR code and a calendar invite (.ics) the customer can add to their own calendar in a tap. You manage bookings from Orders and the booking list — each shows the time, the resource, the party size, and the customer's details.

Availability comes from the hours you set on each resource — Zillo doesn't read your Google or Outlook calendar. To block a day off, add a date-specific override on the resource (see the resources article below).

Next steps

Was this helpful?