Skip to content

Booking

Booking covers setting up an artist to take online bookings, schedules, the calendar, the public online booking page, deposits, booking rules, policies, notifications and reminders, booking links and invites, and the customer’s manage booking page. Turn the Booking feature on for each Cloud under Settings → Cloud → Features. Studios that only take walk-ins can leave it off.

Inside the app the record is a booking; the pages your customers see call it an appointment.

Three kinds of things:

  • Bookings — a customer appointment for a service type, or a general consultation.
  • Time blocks — held time with no customer: an artist’s day off, a convention, a studio closure. Blocks can cover one artist, the Whole studio, or Every location.
  • Walk-in holds — when work starts that no booking is holding, the start-session step offers to block the artist’s calendar (on by default). The hold reserves the same length a booking of that work would, buffers included, covering every not-yet-started piece of the visit, so online booking can’t grab an occupied chair. The hold is a simple on/off choice at start; afterward it can be edited or ended early from the calendar if the chair frees up sooner. A hold is only offered when starting work — there’s no separate way to create one.

A booking moves through these statuses, shown on the calendar, the booking detail, and the Bookings queue:

StatusMeaning
PendingA request waiting on your review.
Awaiting depositApproved on the condition of a deposit. The slot is held until the offer expires.
Processing depositA card deposit is being authorized. The slot stays blocked; reschedule and cancel wait for the payment to finish.
ApprovedConfirmed and on the books.
To rescheduleTaken off the calendar deliberately, waiting for a new time.
Deposit expiredThe deposit offer lapsed unpaid. The slot is freed.
CancelledCancelled, with the reason and who asked kept on record.
DeclinedA request the studio turned down.
No-showThe customer didn’t come. Undoable via Undo no-show.

An Approved booking also shows a phase once its day arrives: In progress while the visit is running, Finished when it’s done, and Lapsed if the appointment time came and went without a session starting. Only a started session counts — opening the visit, preparing it, or signed paperwork doesn’t move the phase.

A Lapsed appointment stays undecided until you choose: Reschedule moves the same booking to a new time, Rebook keeps the lapsed booking in history and creates a linked replacement, and No-show records that the customer didn’t come.

Approval comes before payment when a service uses Request to book. The customer submits the request as Pending. If you approve it and a deposit is due, the booking moves to Awaiting deposit and the customer receives the payment instructions. Full payment then moves it to Approved.

Booking setupWhat happens
Request to book, no depositPending → Approved when you approve it.
Request to book, deposit requiredPending → Awaiting deposit when you approve it, then Approved after full payment.
Book without review, no depositApproved as soon as the customer books.
Book without review, deposit requiredAwaiting deposit as soon as the customer books, then payment follows your deposit auto-approval setting.
Booking invite, deposit requiredThe invite already carries your approval, so it begins Awaiting deposit and becomes Approved after payment.

For a combined appointment, every selected service must clear its own approval rule. If any service uses Request to book, the whole booking waits Pending even when a different service contributes the longest duration or highest deposit.

The handoff happens when the first session starts, not when the form is signed or Begin visit is selected. A customer who signs hours early stays an expected booking and can still be rescheduled or marked a no-show. Begin visit prepares the service and sessions; Start on the session begins the work and its timer.

Before that handoff, the booking controls the visit’s paperwork and care. Cancelling it, marking it as a no-show, or parking it to reschedule cancels every unstarted session created for that appointment, along with pending or queued care. If no active sessions remain after a cancellation or no-show, the parent service is cancelled too. This includes forms signed hours before a customer who never arrives.

Moving the appointment, changing its artist, or parking it to reschedule later before work starts cancels the old occurrence’s unstarted sessions — including a visit someone already opened and prepared. The customer’s service, signed forms, and visit history all stay on their record; only the prepared, unstarted sessions go, and the customer signs again for the new occurrence. REV23 cancels obsolete precare messages and schedules new ones from the updated time and artist; messages already sent from the same journey are not repeated.

Once a session has started, the appointment’s time and artist can’t change — Reschedule and Rebook close, and a change attempted from a screen that hasn’t caught up is refused. Manage the visit from the service instead, and book the next sitting from What’s next. Started and ended sessions are always kept: the session is the record of work performed and remains responsible for its aftercare.

  1. If the customer has already signed, select Open on today’s dashboard or Open visit in the booking detail, then continue at step 5. Otherwise, select Begin visit. The action becomes available when the visit window opens.
  2. If the booked services do not expect a release form, REV23 creates the service and opens the visit picker.
  3. If a form is expected but has not been signed, Collect the form first opens instead. Text or email the customer their private sign link, or let them scan Sign on their phone with a QR code. See Web Sign.
  4. Wait for Form signed, then select Open visit. The visit picker identifies each booked session and its form status.
  5. Open the session, review its form and safety information, then select Start. Starting the first session removes the booking from the expected-work queue.

If the customer already has a service for this appointment, use Already came in? to link the booking to it instead of creating a duplicate.

Begin without a form creates the service without the expected form. The form cannot be attached to that session later, and the session shows No signed form on file after it starts. Use this only when the work can proceed without the form.

Completing a service that still has a live booking pointed at it is refused until the booking is resolved.

The Bookings page is for working the decisions — approvals, deposits, reschedules — while the calendar is for placing and moving times. Its queues:

  • All bookings — every status.
  • Pending — requests that need review.
  • Deposit due — approved bookings waiting on payment. Collect to confirm.
  • Approved — everything confirmed.
  • Reschedule — bookings parked for a new time.
  • Resolve — cancelled bookings whose deposit still needs a decision.

Search covers customer, artist, service, description, referral source, notes, and booking ID, and keeps your queue and artist filters while you type.

Opening a booking (from the calendar, dashboard, an idea, or a service) shows its detail in place, without leaving the screen you were working on. It carries the status, the deposit state, and the primary action for where the booking is in its life — Approve, Collect deposit, Begin visit, Open visit, or Rebook — along with Files (reference images), Notes (internal, never customer-visible), Messages, History, and Policies.

A note submitted with a booking is labeled Customer note wherever the booking appears — calendar, agenda, dashboard — and is kept separate from staff Notes. Notes on another studio’s bookings stay hidden when calendars are shared across studios.

Two schedule actions look similar but differ on purpose:

  • Reschedule — a real move to a new time. The customer is notified, and if they asked for the move, it can count toward their reliability.
  • Correct date & time — fixing a data-entry mistake. The customer is notified, but nothing counts against anyone.

Reschedule later frees the calendar slot and saves the booking to the Reschedule queue, for the “they’ll call back with a new date” case. Calendar gaps offer Reschedule an appointment here to place one back.

Every booking keeps a durable History tab: created, approved, rescheduled, cancelled, no-show, and deposit events, each with who acted and, where money was involved, what was decided.

Reschedules and cancellations record who asked: customer or studio. Studio-requested moves, corrections, and ordinary calendar drags never count against the customer; a customer-requested move can, unless you mark it excused. These counted events feed the customer’s reliability indicator and can drive booking rules like “block repeat reschedulers.” A history line can be corrected or forgiven later with Correct reliability: the event stays visible, its reliability effect goes away.

Rebooking a cancelled, no-show, or lapsed booking creates a fresh booking linked to the old one. The history survives, an existing deposit carries forward, and the two records point at each other.

Bookings support the following webhook events:

EventDescription
booking.createdA booking was created.
booking.updatedA booking was updated.
booking.rescheduledA booking was moved to a new time.
booking.rebookedA cancelled, no-show, or lapsed booking was rebooked.
booking.pending_approvalA booking request was submitted for approval.
booking.approvedA booking was approved.
booking.declinedA booking request was declined.
booking.cancelledA booking was cancelled.
booking.noshowA booking was marked a no-show.
booking.convertedA booking was converted into a service.