Setting Up WhatsApp End To End
Setting up WhatsApp once means appointments confirm, reminders fire, and patients can reschedule themselves — all without your receptionist copy-pasting into the chat. This guide is the day-one setup; the in-product reference for the same features lives at/admin/whatsapp.
What you will set up
- Confirmation, reminder, cancellation, reschedule and completed-visit templates.
- Automatic binding of each template to the right lifecycle event.
- Inbound media handling (photos, voice notes, GIFs, stickers, PDFs).
- Real delivery and read receipts.
- Patient self-reschedule, including after a cancellation or no-show.
- Per-tab visibility for staff roles.
What’s new
- Lifecycle automation. WhatsApp messages fire automatically on Confirm, Cancel, No-Show, Reschedule, a new booking request, a new manually-scheduled appointment, and a completed visit (with an optional Google Review survey one day later). Patient name, date, doctor and clinic fill in from the appointment.
- Templates auto-bind to the right trigger event the first time they fire. No more “No WhatsApp automation bound for this event”.
- Inbound media renders properly. Photos, GIFs, voice notes, stickers and PDFs all show as their proper format. No more
[Image]placeholders. - Real ticks. Sent ✓ → delivered ✓✓ → read ✓✓ (blue) on every outbound message. Inbound reads are reported back to Meta so the patient sees double-blue on their phone.
- Markdown.
*bold*,_italic_,~strike~and inline code render in the chat thread. URLs autolink. - Reschedule via WhatsApp, even after a no-show. Patients reply “reschedule” and the bot picks the most recent cancelled or no-show appointment as a fallback if no upcoming visit exists. The slot list respects clinic operating hours and the assigned doctor’s schedule.
- Daily Meta reconcile. Once a day OdontoX checks every active automation against Meta. Deleted or renamed templates auto-disable. Language codes sync.
- Per-tab toggles. Independently enable or disable the Inbox, Templates, Automations, Quick replies, Analytics and Events tabs inside the WhatsApp module.
- No more duplicate sends. Legacy direct-send code paths used to run alongside the lifecycle dispatcher; both are now consolidated, so admins do not receive the same template twice.
How to use it
- Open Settings → WhatsApp. Connect your WhatsApp Business number using the on-screen flow.
- On the Templates tab, submit each operational template to Meta for approval — confirmation, reminder, cancellation, reschedule, completed-visit. Use the OdontoX-provided starter templates if you do not have your own.
- Wait for Meta approval. Templates approved by Meta show as Active in OdontoX.
- Send a test message on the first template you want to use. The first send binds the template to its trigger event automatically.
- Verify the inbox shows inbound media properly — photos, voice notes, GIFs.
- Test patient self-reschedule by replying “reschedule” to one of your test bookings. The bot should offer slots based on the clinic’s operating hours and the doctor’s schedule.
- Use the per-tab toggles to hide tabs that specific roles do not need. Receptionists usually want Inbox and Quick replies; admins keep everything visible.
What changed since the last revision
- Lifecycle automation replaces manual sends for the six core appointment events.
- Patients can reschedule themselves over WhatsApp, including after a cancellation or no-show.
- Inbound media is real media now, not placeholder text.
- Real delivery and read ticks across both sides of the chat.
- Daily reconcile against Meta keeps automations healthy.
- Per-tab toggles let admins hide parts of the module from staff.

