Appointment Booking
What it is
Appointment Booking lets a customer book a visit inside the chat: they pick a service, then a day, then a time, and confirm. You see every booking in a week calendar, customers are reminded automatically, and the booking can be added to Google Calendar.
It needs a plan that includes Appointment booking. In the sidebar, Sales has Bookings and (Admins) Booking setup.
The problem it solves
Booking by message means a lot of back and forth: "Are you free Thursday?", "What about 3?", "Sorry, that is taken". Double bookings happen, people forget, and the schedule lives in someone's head.
With booking, the customer only sees times that are really free, nobody can take the same time twice, and a reminder with Confirm, Cancel and Reschedule buttons cuts no-shows.
1. Set it up (Admins)
Open Booking setup.
Services
A service is what a customer books: a haircut, a consultation, a repair visit. Give each a name, a length in minutes, an optional buffer before and after (time you need to prepare or clean up, which no one else can book), and an optional price shown in the list.
Calendars
A calendar is a person or a resource (a chair, a room) that bookings are made against. For each one set:
- the time zone it works in. Times are always shown to the customer in this time zone ("Tue 14 Nov, 3:30 pm (Dhaka time)");
- the opening hours for each day. Add a second period for a lunch break;
- offer a time every 15, 30 or 60 minutes (and so on);
- minimum notice (no booking sooner than this) and how many days ahead people may book;
- the services it offers;
- optionally a team member, who is told about its new and cancelled bookings.
Time off (a holiday, a day away) is added on the calendar's card and removes those times at once.
Two calendars offering the same service are used as first free: the customer sees a time if any calendar has it, and it goes to the first calendar that is free then.
2. How a customer books
There are two ways in. Both ask the same questions.
The "Book appointment" step in an automation. Add it to a flow (for example after a menu choice or a keyword). Choose a fixed service and calendar, or let the customer pick. It has four ways out: Booked, Nothing free, Gave up and No answer, so you can follow up on each. Steps after it can use {{context.booking_when}} and {{context.booking_service}}.
The AI. On an assistant, switch on Can book appointments. When a customer says they want to book, the assistant answers briefly and starts the questions. It only offers the services you set up, and it never invents a time.
The questions are:
- Service (skipped when there is only one).
- Day: the next days that have a free time, up to ten.
- Part of the day (morning, afternoon or evening), only when a day has more times than a list can hold.
- Time: up to nine at a time, with Show later times for more.
- Confirm.
On WhatsApp, Telegram, Messenger, Instagram and the website chat these are lists and buttons. On SMS and email they are numbered text the customer answers with a number or the words. The customer can type cancel at any step to stop.
If the time is taken while they are choosing, they are told and taken back to pick another. The confirmation includes a link that adds the appointment to their calendar (an .ics file).
3. The Bookings page
Bookings shows a week (one column per day, one day at a time on a phone) and a list, both filtered by calendar, service and status. Click a booking to see it, reschedule it, cancel it (and tell the customer), or mark it completed or no-show.
In the Inbox, the contact panel lists the person's coming appointments and has a Book button that picks from the same free times.
4. Reminders
Under Reminders choose when they go out (for example 24 hours and 1 hour before) and whether the customer gets a confirmation when your team books for them.
A reminder has three buttons:
- Confirm marks the booking as confirmed by the customer.
- Cancel cancels it and frees the time.
- Reschedule starts the questions again for the same service and calendar, and moves the booking.
On SMS, email and similar channels the customer answers with 1, 2 or 3.
WhatsApp and the 24-hour window. WhatsApp lets you send free text only within 24 hours of the customer's last message. A reminder after that must be an approved utility template. Create one under Broadcast with four variables, in this order: the customer's name, the service, the date and the time, for example "Hi {{1}}, a reminder of your {{2}} on {{3}} at {{4}}." Then pick it under Reminders. With no template chosen, those reminders are skipped and shown as failed rather than sent wrongly.
5. Google Calendar
Under Calendars, press Connect Google Calendar and allow access. Then, on a calendar, switch on Sync with Google Calendar and enter the Google calendar's ID (primary for the main one).
- Busy times in: times you are busy in Google are not offered. This is looked up at most every two minutes.
- Bookings out: each booking becomes an event, moved when you reschedule and deleted when you cancel.
If Google cannot be reached, the app's own bookings still prevent double booking, and events are sent when it is back. The install owner must enable the Google Calendar API and add the Calendar scopes to the Google app (see the Owner guide); Google treats them as sensitive scopes.
6. Automations, webhooks and the API
- Triggers: an appointment is booked, cancelled, completed, or a reminder is sent, each optionally for one service.
- Webhook events:
booking.created,booking.cancelledandbooking.completed, with the service, calendar, customer and times. - API:
GET /booking-services,GET /booking-slots,GET /bookings,POST /bookingsandDELETE /bookings/{id}, with thebookings:readandbookings:writeabilities. See the in-app API reference.
Permissions
See appointments and Book, move and cancel appointments are given to Agents by default. Set up booking services, calendars and reminders is for Admins, and can be given to a custom role.
Good to know
- Bookings are stored in UTC and shown in the calendar's time zone, so daylight-saving days are handled.
- A service that has bookings is switched off instead of deleted; a calendar with upcoming bookings cannot be deleted.
- Not included yet: a public booking page, payment at booking, group classes, recurring appointments, and Outlook or iCloud sync.