WhatsApp Flows let patients, clients, and customers book appointments directly inside WhatsApp, no website redirect, no app download, no phone call. This guide covers every component: date picker, time slot selector, doctor/service selection, and confirmation message. Built for India's clinics, salons, service businesses, and consultants.
A WhatsApp Flow for appointment booking collects all required information from the user inside a single WhatsApp conversation, without any redirect. Here's what the finished Flow contains:
Dropdown or radio buttons, customer picks what they need
Calendar component, shows only available dates (no weekends, no holidays)
Available slots for chosen date, dynamically fetched from your calendar system
Name, age, reason for visit, short text fields inside the Flow
Summary of booking before final submit, reduces errors
Utility template sent automatically after Flow completion
💡 WhatsApp Flows are only available through the WhatsApp Business Cloud API — not the WhatsApp Business App. You need a BSP like WA.Expert to create and publish Flows.
Everything above happens inside WhatsApp, no browser, no app, no redirect.
WA.Expert's Flow builder is no-code, drag components, set rules, connect to your calendar system via webhook. Here's the complete build sequence.
WA.Expert dashboard → Flows → New Flow → choose template "Appointment Booking" or start blank. Name your Flow (e.g., clinic_appointment_booking).
Drag a Dropdown component. Add your service list: General Consultation, Specialist, Procedure, etc. Label: "What do you need today?"
Drag a Date Picker component (shows calendar). Set min date = today + 1 day. Connect to your availability API endpoint to show only open slots.
Short text fields: Full Name (required), Age (optional), Reason for visit (text area). Keep fields minimal, more fields = lower completion rate.
Summary screen showing: service, doctor, date, time, name. "Confirm & Book" CTA button. This reduces accidental submissions and misbooked slots.
On Flow submit → POST booking data to your calendar system (webhook URL). Trigger Utility template: "Appointment confirmed: [details]."
⚠️ Dynamic slot availability requires a webhook endpoint. If you don't have a calendar API, use static time slots in a radio button list, this still works well and avoids over-booking if you update the Flow regularly.
WhatsApp Flows are defined in JSON. WA.Expert's builder generates this automatically. Here's the structure for a basic appointment booking Flow, useful if you're submitting via the API directly.
💡 WA.Expert generates this JSON automatically when you use the drag-and-drop Flow builder. You only need to work with raw JSON if you're building via the Cloud API directly.
Doctor selection → date picker → reason for visit → confirmation. Connects to clinic management software via webhook. Typical no-show reduction: 35–45%.
Service selection (haircut, facial, massage) → stylist selection → date/time → booking. Add-on upsell on the confirmation screen. Prepayment link optional.
Project selection → agent selection → date/time → contact details. Auto-assigns agent and sends Google Maps link. Used by top developers in Mumbai and Bengaluru.
Vehicle model → service type (regular/repair/inspection) → workshop location → date/time. Confirmation with job card number and pickup time promise.
Practice area (tax, corporate, family law) → lawyer selection → 30/60 min session → date/time. Calendly-like but entirely inside WhatsApp. Consultation fee collection via UPI button.
Course / subject → faculty → demo class slot → student details. Connects to LMS for slot management. Common use: IIT-JEE, CA, UPSC coaching centres across India.
Full use-case playbook, templates, reminders, and no-show reduction.
Read playbook →Collect UPI payments inside WhatsApp. Razorpay & Cashfree setup.
Read guide →No-code Flow builder. Webhook integration. Automatic confirmation messages. Live in 30 minutes.