The scheduling layer in MindFlow handles both self-booking by patients and front-desk booking by staff, with real-time sync to Google Calendar and Cal.com. Appointment reminders are queued and dispatched automatically across email, SMS, and WhatsApp.
Available slots are computed in real time from the clinician's configured working hours, existing confirmed appointments, and any blocked time imported from connected calendars (Google Calendar and Cal.com). All three sources are combined in a single query so there is no risk of double-booking.
Every appointment moves through defined statuses: scheduled → confirmed → completed, or scheduled → cancelled / no-show. Every status change is logged with the staff member who made the change and the timestamp.
Patients see only available slots from the portal's booking flow. The slot is held briefly while the patient completes booking, then confirmed. A confirmation notification is dispatched automatically.
When all slots are full, patients can join a waitlist. When a slot opens, through a cancellation or a new slot being added, waiting patients are notified automatically in the order they joined.
Clinicians connect their Google Calendar via the standard Google OAuth2 flow. New appointments created in MindFlow are pushed to Google Calendar automatically. Events added directly in Google Calendar block the corresponding slots in MindFlow, so neither calendar can be booked over the other.
For clinics that use Cal.com as their primary public booking page, MindFlow syncs with the Cal.com API so that availability is always consistent between the two systems. Connection uses Cal.com's OAuth flow and per-user credentials.
Slot availability always queries all connected sources simultaneously. A slot only shows as available if it is free in MindFlow, in Google Calendar, and in Cal.com, whichever are connected. There is no polling delay or race condition between sync cycles.
A full-screen, touch-friendly self-registration interface designed for a tablet at reception. Walk-in patients enter their name or phone number; returning patients are matched to existing records. A walk-in appointment is created and the patient joins the queue automatically.
A separate screen for the waiting room shows the current token being seen and estimated wait time (calculated from the clinic's configured average consultation length). No login is required, the screen uses a secure, single-use display token.
Patients can also open a lightweight booking page on their own phone to claim a same-day slot without needing a full portal account, designed for walk-in situations where they'd prefer to queue digitally.
Each clinic configures its own reminder templates, the message content and timing (e.g., 24 hours before, 2 hours before) for each trigger event. Separate message bodies can be set per channel (email, SMS, WhatsApp).
Reminders are queued with a scheduled dispatch time and picked up by a background process that sends them via the configured gateways. Failed messages are retried automatically with exponential backoff before being marked as failed.
After a visit slot passes without a completed status, the appointment is flagged as a no-show. A built-in report ranks patients by no-show count and rate so the clinic can identify patterns and follow up proactively.
The demo comes pre-loaded with real sample data, so you can click through actual appointments, patients and prescriptions.