Back to Blog
doctors-and-cliniciansDoctor websitesAppointment bookingWhatsApp appointments

How to add appointment booking to a doctor website in India

Add appointment booking to your doctor website by connecting a clearly labelled button to WhatsApp, an appointment form or a scheduling tool. Choose WhatsApp or a form when your receptionist must check availability; choose a calendar-based system when it can reliably reserve available slots. In either case, tell patients whether they have submitted a request or received a confirmed appointment.

·8 min read·PaidPortfolio

Quick answer

For a doctor’s personal website, start with the simplest workflow your clinic can reliably manage:

  • Receptionist checks every appointment: add a “Request appointment on WhatsApp” button.
  • You need organised requests: use a short form with clinic location, preferred date and contact details.
  • You can maintain accurate availability: connect a scheduling tool that reserves slots and sends confirmations.

Provide a telephone alternative, avoid collecting medical histories, and test the complete journey on a phone before publishing.

First, distinguish requests from confirmed bookings

An appointment request means the patient has expressed a preference. A WhatsApp message, submitted form or selected time awaiting approval should say: “Request received. Your appointment is not confirmed yet.”

A confirmed booking means the clinic or scheduling system has actually reserved the appointment. Its confirmation should identify the doctor, clinic location, date and time.

Do not show “Booking successful” merely because a form submitted successfully. Likewise, a calendar interface does not automatically mean instant confirmation: check whether the underlying workflow requires staff approval.

Use separate statuses for requested, confirmed, rescheduling requested and cancelled. Keep patient messages consistent with the actual status.

Compare WhatsApp, forms and calendar tools

The effort ratings below are practical planning assessments, not delivery-time estimates or vendor quotations.

MethodCost considerationsSetup effortPatient experience
WhatsApp request buttonBudget for website changes and staff handling. Automated messaging is a separate purchasing decision.Lowest: add a link, prepare replies and assign responsibility.A short conversation, but patients must wait for staff confirmation.
Appointment request formFormBharat offers a free doctor appointment form. Check any additional notification, storage or integration charges. [16]Low to moderate: configure fields, delivery, acknowledgements and staff access.Structured submission without a chat; the preferred time remains unconfirmed.
Calendar-based bookingCheck the plan needed for doctors, branches, reminders and integrations. A dental-specific free-plan example appears below.Moderate: configure availability, closures, conflicts and cancellation rules.Patients choose available slots; confirmation depends on the configured reservation process.
Automated WhatsApp bookingRequest a complete quote covering platform and messaging charges.Moderate or higher: configure conversation steps and scheduling connections.Can combine booking, confirmation and rescheduling within WhatsApp.

For concrete pricing references, FormAlert lists ₹1,999 monthly or ₹17,999 annually, with no setup or per-booking fee. That is one provider’s published price, not a general market rate. [15] Smart Dental Desk says its free plan includes scheduling for one doctor and basic WhatsApp reminders; it also offers a shareable browser-based booking link. This is a dental-specific option, not a recommendation for every specialty. [6]

Dactorly advertises WhatsApp appointments, automatic confirmations, reminders and rescheduling. Gallabox offers a doctor-booking chatbot template with scheduling and reminder features. Verify how either connects to your actual availability before enabling automatic confirmation. [1] [5]

Compare the full cost: website integration, subscription, messaging, applicable taxes, staff time and maintenance. Ask vendors which features belong to which plan rather than budgeting from the starting price alone.

Set up your booking flow in six steps

1. Write down your clinic’s booking rules

Before choosing software, define:

  • Clinic locations and the doctor’s schedule at each location.
  • Appointment lengths and whether new visits and follow-ups need different slots.
  • Breaks, leave, travel buffers and booking cut-off rules.
  • Whether patients receive an exact appointment time or an arrival window.
  • Who checks requests, confirms appointments and handles changes.

Choose one authoritative appointment register or scheduling system. Require staff to enter telephone and walk-in bookings there too. Otherwise, website availability may not reflect appointments accepted elsewhere.

Display the clinic’s actual response hours. Do not promise an immediate reply unless someone or a tested system can provide it.

2. Connect the appropriate website integration

  1. For WhatsApp: use your clinic-controlled number and add a click-to-chat link to the website button. Gallabox’s example uses a wa.me link with a prefilled message. [5] Suggested text: “Hello, I would like to request an appointment with Dr [Name] at [Clinic location].” Opening the chat is not a submitted or confirmed appointment.
  2. For a form: create the fields, connect submissions to a staff-accessible inbox or dashboard, and configure a request acknowledgement. Test delivery before linking the form from your website.
  3. For a calendar: configure availability first, then add the provider’s booking link. If it offers a supported website widget, you can embed it; retain a direct-link fallback.

A hosted booking page is worth considering before commissioning an embedded interface. Confirm that patients can complete the journey comfortably on mobile and understand when they are leaving your website.

3. Ask for clinic location before showing times

Illustrative example: a doctor consults in Rohini on Tuesday mornings and Pitampura on Tuesday evenings. These are sample schedules, not actual clinic availability.

  • WhatsApp flow: patient selects Rohini on the website → opens a location-specific request message → receptionist checks the Rohini schedule → sends confirmation with that clinic’s address.
  • Form flow: patient chooses Pitampura → selects a preferred date and time window → submits contact details → receives an acknowledgement → staff confirms or offers an alternative.
  • Calendar flow: patient chooses location → sees that location’s available slots → selects a slot → receives confirmation after reservation succeeds.

A location-first sequence is also illustrated by the Odoo booking module, which supports selecting a location before doctor availability. [8]

Block travel time and prevent overlapping availability across branches. Repeat the location, full address and directions link on the final confirmation—not just the clinic’s brand name.

4. Place booking buttons where mobile patients need them

  • Top of the homepage: place the main action beside the doctor’s name, specialty and consultation locations.
  • Each clinic section: add a location-specific button below the address and timings.
  • Mobile bottom bar: consider one prominent booking action and a secondary call action. Ensure neither covers form controls or notices.
  • Contact page: repeat the booking route and telephone fallback.

Use “Request appointment” for approval-based workflows. Reserve “Book an available slot” for a functioning slot-booking journey. Avoid three equally prominent buttons competing for attention.

Make buttons comfortably tappable, give fields visible labels, and test keyboard access, zoom and validation messages. Offer patient-facing instructions in the languages your clinic can support.

5. Keep the form short and privacy-conscious

For a basic appointment request, start with:

  • Patient name.
  • Contact mobile number: show the India country code clearly while accommodating other country codes if needed.
  • Clinic location.
  • Preferred date and time window for requests, or the selected slot for calendar bookings.
  • Optional visit category: new consultation or follow-up, only if it changes scheduling.

Do not require email unless your chosen workflow genuinely needs it. Avoid medical histories, symptom essays, prescriptions, report uploads, Aadhaar details and unrelated personal information at this stage. Although FormBharat’s template mentions reasons for visits, you can choose a more minimal scheduling form. [16]

Suggested notice: “We use these details to contact you about this appointment. Please do not submit medical reports or medical history here. Read our privacy notice.” Keep promotional opt-ins separate from appointment communication.

Limit access to authorised staff, avoid public patient lists, and decide how long unsuccessful or outdated requests are retained. Ask providers about access controls, deletion, storage and subcontractors. A minimal form reduces unnecessary collection; it does not by itself establish legal compliance.

6. Configure clear confirmation and cancellation messages

The following are sample templates. Replace every bracketed field and use only promises your clinic can keep.

Request acknowledgement: “We received your appointment request for Dr [Name], [Clinic], [Preferred date/time]. This is not a confirmed appointment. Our team will respond during [Response hours]. Please avoid sending medical reports in this chat.”

Confirmed booking: “Your appointment with Dr [Name] is confirmed for [Date], [Time] IST at [Clinic, full address]. Reference: [Booking ID]. Directions: [Map link]. To request a change or cancellation, use [Link/contact].”

Requested time unavailable: “Your requested time at [Clinic] is unavailable. We can offer [Option A] or [Option B]. Please reply with your preference. Neither alternative is confirmed yet.”

Rescheduling request: “We received your request to change appointment [Booking ID]. Your original appointment remains confirmed until we confirm the replacement.” Use this wording only if that is your actual policy.

Cancellation: for staff-reviewed cancellations, first send “Cancellation request received; we will confirm once processed.” After the appointment is actually cancelled, send “Appointment [Booking ID] on [Date/time] at [Clinic] has been cancelled. To request another appointment, use [Link].”

Keep reminder messages limited to scheduling details. Publish your actual cancellation, late-arrival and refund policies where relevant. If you collect payment, do not treat a payment receipt alone as appointment confirmation.

Test the whole journey before going live

Run these checks using test details, not real patient histories:

  1. Mobile journey: complete booking from the homepage and each location page.
  2. Location accuracy: verify timings, addresses, directions and IST labels.
  3. Competing bookings: try selecting the same slot from two sessions; verify only the permitted reservation succeeds.
  4. Repeat submissions: test double taps and duplicate requests. Do not automatically reject every repeated mobile number; allow booking for another family member.
  5. Offline appointments: add a telephone booking and check website availability updates before relying on instant booking.
  6. Failures: interrupt submission or notification delivery. Ensure patients receive an accurate status and a contact fallback.
  7. Changes: cancel and reschedule; check both messages and slot availability.
  8. Privacy: verify that patients cannot access another person’s details or appointment-management links.

Add “For appointments only; not monitored for emergencies” near the booking interface. Assign responsibility for reviewing failed notifications and pending requests.

When is a template integration enough?

A website template plus an existing booking service is enough when you need clinic pages, clear buttons, a short form or a supported booking link/widget—and the service already handles your scheduling rules.

Multiple locations do not automatically require custom development. First check whether the existing tool supports branch-specific availability, shared doctor schedules and the confirmation process you need.

Consider custom development only when a specific requirement remains unmet:

  • Appointments depend on shared rooms, equipment or complex cross-branch rules.
  • Your existing clinic system needs a supported integration that available tools cannot provide.
  • Payment, reservation, cancellation and refund statuses need coordinated handling beyond the provider’s capabilities.
  • You need tailored staff permissions, routing or patient-facing interactions.

Custom work need not mean building a scheduling engine from scratch. It may be a tailored website interface connected to an established service. Confirm supported integration methods, ongoing maintenance, backups and support responsibility before commissioning it.

A sensible starting point for your clinic

If reception already checks every appointment, begin with location-specific WhatsApp requests or a minimal form. Move to automatic slot booking when availability can be maintained accurately across website, telephone and walk-in appointments.

PaidPortfolio builds template and custom websites for Indian professionals. Review its templates for a straightforward starting point, or discuss a custom portfolio when the website needs tailored booking integration. Choose the booking workflow first, then build the website around it.

Frequently asked questions

Can I add appointment booking without building a custom system?

Yes. Connect a website button to a clinic WhatsApp conversation, a short appointment form or a hosted booking page. Custom development is only necessary when existing tools cannot meet your scheduling or integration requirements.

Does a WhatsApp appointment message count as a confirmed booking?

No. Treat it as a request until staff or an integrated scheduling system reserves the appointment and sends confirmation with the doctor, clinic, date and time.

How much does appointment booking cost for an Indian doctor’s website?

There is no single price. FormBharat advertises a free doctor appointment form, while FormAlert lists ₹1,999 monthly or ₹17,999 annually. These are different provider offerings, not complete website quotes. Check integration, messaging, subscription, tax and maintenance costs separately.

How should booking work when I consult at two clinics?

Ask patients to choose the location before selecting a date or slot. Maintain branch-specific availability, block travel time and prevent overlapping doctor bookings. Include the exact clinic address in every confirmation.

Should my appointment form ask for symptoms or medical reports?

For basic scheduling, avoid collecting medical histories, reports or detailed symptoms. Start with patient name, contact number, clinic location and preferred date/time. Collect clinical information separately when appropriate.

Can a website template support confirmed calendar bookings?

Yes, if it connects to a booking service that reliably reserves slots and sends confirmations. The template provides the website layout; the scheduling service must handle availability, conflicts, cancellations and booking status.

Sources

Get your portfolio website

Tell us about your work and we'll reply with a plan, a price and a timeline.