Scheduling & Appointments
Online booking, real-time availability, and the full appointment lifecycle — from booking to completion.
Booking
How patients book
Patients book through a public booking page — no account needed. They select a service, pick an available time slot, and enter their contact details. That's it.
Behind the scenes, the platform handles everything that makes this work reliably:
Real-time availability. The system calculates open slots from each specialist's weekly schedule, minus already-booked appointments, minus blocked dates (holidays, sick days). Slots are shown in the patient's timezone automatically.
No double-bookings. When a patient selects a time slot, it's instantly reserved while they complete the booking form. Other patients browsing at the same time see the slot disappear in real time. If the patient doesn't complete the booking within the hold window, the slot becomes available again.
Live updates. As slots are booked or released, the booking page updates automatically for everyone who's browsing — no page refresh needed.
Calendars and services
A single service (e.g., "Mobility Evaluation — 30 min") can have multiple booking calendars:
- A standard calendar at regular pricing
- A promotional calendar with discounted rates for a limited time
- A campaign calendar with special hours for a marketing campaign
Each calendar can have its own pricing, duration, required forms, and specialist assignments. This lets clinics run promotions and special offers without changing their core service configuration.
Specialist Availability
Specialists configure their own availability:
- Weekly schedule — recurring working hours (e.g., Monday-Friday 9:00-17:00)
- Buffer time — gap between appointments for notes and preparation
- Date overrides — specific days with different hours, or days off entirely
- Timezone — each specialist works in their own timezone; the system handles conversion
Admins can view and adjust any specialist's availability. The platform combines all of this to calculate exactly which slots are bookable at any given moment.
Appointment Lifecycle
Once booked, every appointment follows a clear progression:
Booked --> Upcoming --> Confirmed --> In Progress --> Done
--> Cancelled
--> No-ShowEach transition can trigger automatic actions:
| Transition | What Happens Automatically |
|---|---|
| Booked | Patient account created (if new), intake forms generated, video room set up |
| Upcoming | Reminder notifications sent to patient and specialist |
| Confirmed | Staff has verified patient details and forms are complete |
| In Progress | Video call room is active, specialist can access patient records |
| Done | Post-appointment forms generated (reports, prescriptions), patient can leave a review |
| Cancelled / No-Show | Video room cleaned up, statistics updated |
Patient reviews
After completion, patients can rate their experience (1-5 stars) and leave a comment. Low ratings (below a configurable threshold) automatically alert the clinic admin for follow-up.
Video Consultations
Video calls are built into the appointment flow — not a separate tool.
- A video room is created automatically when an appointment is onboarded
- The patient and specialist join through the platform — no external app needed
- Rooms expire automatically after the appointment ends
- Recording is available if the clinic enables it (with patient consent)
Video is powered by Daily.co, a HIPAA-compliant video infrastructure provider. The platform manages room creation, access tokens, and cleanup automatically.
For developers
Technical details — database schemas, API endpoints, availability engine algorithms, hold system implementation, and SSE protocol — are available in the Scheduling feature spec and Appointments feature spec.