How a WhatsApp AI agent books appointments without double-booking: availability, real slots, holds, conflicts and what happens when two people want the same time
The first worry about letting software book appointments is the obvious one: what stops it from booking two people at 3 pm? The answer is that it never offers a time it cannot write, and it writes the booking the instant the customer confirms. Here is the mechanism, without the jargon.
Quick answer
The agent only ever offers slots computed from three things: your services and their durations, your weekly hours, and the bookings already in the calendar. When a customer picks a slot, the agent checks it is still free at that instant and writes the booking in one step; if someone else took it a second earlier, the agent apologises and offers the next free times. Buffers between appointments and a minimum lead time are part of the calculation. ReplyKit keeps the calendar itself, exports to Apple, Google or Outlook as .ics, and sends a reminder the day before.
Where the slots come from
- Services. Each has a duration (consultation 30 minutes, treatment 60) and optionally a buffer after it.
- Availability. Weekly hours per day, plus closures you add (public holidays, leave).
- Existing bookings. Everything already confirmed, including bookings you made by hand in the dashboard.
- The calculation. For the requested day, the agent lays the service duration over the open hours and removes every stretch that overlaps a booking or buffer. What is left is offered, in order, usually the next two or three.
Because the agent recalculates from the live calendar on every message, a slot taken ten seconds ago is never offered. How to set the services and hours up is in setting up booking on WhatsApp.
Two customers, one slot
Imagine two people both told "3 pm is free" within the same minute. The first to confirm wins: the booking is checked and written in a single step, so the second confirmation finds the slot taken and the agent says so, "Sorry, 3 pm just got booked; I have 3:30 or 4:15," and offers the next slots. No human has to notice; no two bookings share a time. This is the same guarantee a good booking system gives, applied inside a chat.
Buffers, lead time and limits
- Buffer. A gap after each appointment for cleaning or travel; set per service.
- Minimum lead time. No bookings less than, say, two hours ahead, so you are not surprised.
- Maximum ahead. How far into the future customers may book.
- Capacity. ReplyKit books one appointment per slot per calendar. Classes with ten places or multi-chair salons need either one calendar per chair (one agent per number on the Growth plan) or a capacity count, which is on the roadmap and not in the product today.
Your calendar and the agent's
The agent's calendar is the one in the ReplyKit dashboard. It exports every booking to Apple, Google or Outlook as an .ics feed, so you see them on your phone. It does not read your Google Calendar back, so an appointment you add only in Google is invisible to the agent until you add it in the dashboard as well. Businesses that live in Google Calendar should add bookings in the dashboard first and let the feed carry them out. Two-way sync is a common request and not something we claim yet.
What a person still does
Decides exceptions (squeezing in a regular, a double slot for a long job), handles reschedules that need judgement, and cancels bookings on the business's side. The agent handles the standard case completely, which is most of them, and the standard case is where double-bookings used to happen, because it was the one nobody was watching. Rescheduling is covered in rescheduling and cancellations.
Frequently asked questions
Can the agent double-book?
No. It offers only free slots computed from the live calendar and writes the booking in a single checked step, so a slot taken by someone else a second earlier is refused and alternatives are offered.
What if two people pick the same slot at once?
The first confirmation wins. The second is told the slot has gone and offered the next free times.
Does it sync with Google Calendar?
It exports bookings to Apple, Google and Outlook as an .ics feed. It does not read bookings back from Google, so add appointments in the dashboard.
Can it handle classes with several places?
Not today. It books one appointment per slot. Use one calendar per chair or room on the Growth plan, each with its own agent and number.
Can I block time off?
Yes. Add closures and leave in the dashboard and the agent stops offering those times.
Real slots, no clashes
Services, hours and bookings in one calendar; the agent books into it and reminds the day before. 7-day free trial, no card.
Sources and further reading
- Cochrane Review, Mobile phone messaging reminders for attendance at healthcare appointments (2013) · text reminders improve attendance compared with no reminder
ReplyKit is an independent product and is not affiliated with or endorsed by Meta or WhatsApp. This article is general guidance for running a small business, not legal, financial or regulatory advice.