Why book in the chat
When someone messages to ask about an appointment, they're ready to book. Sending them a link to a booking page asks them to start again somewhere else; asking “what time suits you?” starts a back-and-forth of times that don't work.
Booking in the chat keeps them where they already are, on WhatsApp, Telegram or your website, and takes a minute instead of a string of messages.
What a good chat booking does
- Step 1
Understands the request
“Anything Saturday morning?” or “a cleaning next week”, in the customer's own words.
- Step 2
Offers real open times
Only times inside your hours and rules, and not already taken in your calendar.
- Step 3
Books the one they pick
Never a time the customer didn't choose, and with the details it already has.
- Step 4
Confirms in the same chat
With the day, time and what was booked, in your business's time zone.
- Step 5
Lands in your calendar
So your team sees it alongside everything else.
Offer times, don't ask for them
Showing three to five open times to tap is quicker for the customer than typing a time and hearing it's taken. Each channel has its own way to show them:
| Channel | How times appear | Limits |
|---|---|---|
| A list message the customer opens and taps | Up to 10 rows in a list; up to 3 reply buttons | |
| Telegram | Buttons under the message | — |
| Website chat | Buttons in the chat | — |
On WhatsApp, list messages and reply buttons are sent as replies to the customer's message. Meta: interactive list messages · Meta: reply buttons
Rules to set before you start
- Appointment types, each with a length: a 15-minute call is not a 60-minute treatment.
- Opening hours per weekday, and closed days for holidays.
- Minimum notice, so nobody books 10 minutes from now.
- How far ahead people can book.
- A gap between appointments, if you need time to clean up or travel.
- Your time zone, so times are right for you whatever time zone the customer is in.
Confirm automatically, or by hand
| Automatically | By hand | |
|---|---|---|
| The customer | Knows straight away | Waits until someone confirms |
| Your team | Nothing to do | Checks each booking first |
| Good for | Fixed services and clear hours | Bookings that need a look first, such as a new patient or a large group |
Keep your calendar the source of truth
If your team also books by phone or in person, those bookings need to block the same times. Connecting your calendar does that: anything busy there is never offered in the chat, and bookings made in the chat appear there.
Moving and cancelling
Let customers move or cancel their own booking in the same chat, and tell them in that chat when you confirm, move or cancel one. On WhatsApp, a free-text message reaches them within 24 hours of their last message; after that, only an approved template can. Meta: customer service windows
What about reminders?
A reminder the day before is usually sent long after the customer's last message, so on WhatsApp it has to be an approved utility template rather than an ordinary message. WhatsApp template messages
HeyKiko doesn't send appointment reminders yet. Customers are told in the chat when a booking is confirmed, moved or cancelled.
Setting it up in HeyKiko
- Step 1
Add appointment types
In Bookings › Appointment types, give each a name, a length and a description that tells Kiko when to offer it.
- Step 2
Set your hours and rules
Opening hours, closed days, minimum notice, how far ahead and gaps. Until you save your own hours, weekdays 09:00 to 17:00 are used.
- Step 3
Connect Google Calendar
Choose which calendars count as busy, and where bookings go. Outlook, Calendly and Cal.com aren't connected.
- Step 4
Choose how to confirm
Automatically, or by hand; and where people can book: website, WhatsApp, Telegram.
Kiko then offers open times on every channel, books only a time the customer chose, and confirms it in the chat. Appointment booking in HeyKiko
Sources
Checked on 5 November 2026. We make HeyKiko, which this guide uses as its example.

