# How to let customers book appointments in a chat

> How to take bookings in a chat on WhatsApp, Telegram and your website: offering real open times, the rules to set, confirming, and moving or cancelling.

Canonical: https://heykiko.io/blog/how-to-take-bookings-in-a-chat
Last updated: 2026-11-05

AI agent guides · by The HeyKiko team · published 5 November 2026 · 7 min read

To let customers book in a chat, answer their request with a few real open times they can tap, book only the one they pick, and confirm it in the same chat. Set your hours, notice and gaps first so only bookable times are offered, keep your calendar as the source of truth so busy times never appear, and let customers move or cancel in the same conversation.

## 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

1. **Understands the request**: “Anything Saturday morning?” or “a cleaning next week”, in the customer's own words.
2. **Offers real open times**: Only times inside your hours and rules, and not already taken in your calendar.
3. **Books the one they pick**: Never a time the customer didn't choose, and with the details it already has.
4. **Confirms in the same chat**: With the day, time and what was booked, in your business's time zone.
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:

How open times can be shown on each channel

| Channel | How times appear | Limits |
| --- | --- | --- |
| WhatsApp | 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](https://developers.facebook.com/documentation/business-messaging/whatsapp/messages/interactive-list-messages) · [Meta: reply buttons](https://developers.facebook.com/docs/whatsapp/cloud-api/messages/interactive-reply-buttons-messages/)

## 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

Confirming bookings automatically versus 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](https://developers.facebook.com/docs/whatsapp/cloud-api/guides/send-messages#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](https://heykiko.io/blog/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

1. **Add appointment types**: In Bookings › Appointment types, give each a name, a length and a description that tells Kiko when to offer it.
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.
3. **Connect Google Calendar**: Choose which calendars count as busy, and where bookings go. Outlook, Calendly and Cal.com aren't connected.
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](https://heykiko.io/features/appointment-booking)

## Sources

Checked on 5 November 2026. We make HeyKiko, which this guide uses as its example.

- [Meta: interactive list messages](https://developers.facebook.com/documentation/business-messaging/whatsapp/messages/interactive-list-messages)
- [Meta: interactive reply buttons](https://developers.facebook.com/docs/whatsapp/cloud-api/messages/interactive-reply-buttons-messages/)
- [Meta: customer service windows](https://developers.facebook.com/docs/whatsapp/cloud-api/guides/send-messages#customer-service-windows)

## Questions people ask

### Can customers book appointments in a WhatsApp chat?

Yes. An AI agent can offer open times as a list the customer taps, book the one they pick and confirm it in the same chat. On WhatsApp, a list message holds up to 10 rows.

### Is it better to offer times or ask the customer for one?

Usually to offer a few. Tapping one of three to five open times is quicker than typing a time and hearing it's taken.

### How do I stop double bookings?

Connect the calendar your team uses, so anything busy there is never offered, and have chat bookings added to it.

### Should bookings be confirmed automatically?

For fixed services with clear hours, yes. If you need to check each booking first, such as a new patient, confirm them by hand and tell the customer when you do.

### Can customers change or cancel a booking in the chat?

They should be able to. In HeyKiko a customer can ask Kiko to move or cancel their own booking in the same chat, and it happens straight away.

### Does HeyKiko send appointment reminders?

Not yet. Customers are told when a booking is confirmed, moved or cancelled. A reminder on WhatsApp the day before needs an approved utility template.

## Related

- [Appointment booking in HeyKiko](https://heykiko.io/features/appointment-booking)
- [HeyKiko for clinics](https://heykiko.io/solutions/clinics)
- [HeyKiko for salons and spas](https://heykiko.io/solutions/salons-and-spas)
- [Can AI answer WhatsApp calls?](https://heykiko.io/blog/ai-answering-whatsapp-calls)
- [All guides](https://heykiko.io/blog)
