Quick overview
This workflow runs every 15 minutes to find unprocessed clinic appointments in Supabase that are more than 30 minutes past their scheduled time and sends a WhatsApp Business template message to the patient to prompt rebooking, then flags the appointment so it is not messaged again.
How it works
- Runs every 15 minutes on a schedule.
- Reads appointments from Supabase where the patient is not checked in and the no-show reminder has not been processed.
- Filters the results to appointments that are at least 30 minutes past the scheduled appointment time.
- Loops through each qualifying appointment and sends a pre-approved WhatsApp Business template to the patient’s phone number.
- Updates the appointment record in Supabase to mark it as processed so it is not nudged again.
Setup
- Create a Supabase project with an
appointments table (including appointment_time, patient_phone, checked_in, and no_show_processed) and ensure your booking system writes appointments into it.
- Add a Supabase credential in n8n with access to the project and table used by the workflow.
- Set up Meta WhatsApp Business Cloud API access in n8n (token/connection), then enter your WhatsApp phone number ID and an approved template name in the WhatsApp send step.
- Confirm patient phone numbers in Supabase are stored in a WhatsApp-reachable format (for example, E.164) and adjust the schedule interval or grace-period logic if needed.