Bookings
Overview
Bookings are the scheduled appointments that link a customer to a specific service, location, provider, and time slot. The Bookings section offers a FullCalendar view with advanced filters, a 4-step creation wizard, and complete lifecycle management for each appointment.
How to access
- Navigate to Scheduling > Bookings (fourth tab in the sidebar navigation).
- Also accessible directly from the sidebar as Scheduling (simplified view with bookings only).
- Roles: Administrators/Managers see all bookings. Providers only see their own.
Interface overview
The Bookings section shows:
- Header — Title, new booking button, and settings link (in simplified view).
- Filters — Four dropdowns to filter by service, location, provider, and status.
- Status legend — Color indicators for each booking status.
- Calendar — FullCalendar view displaying bookings as colored blocks. Supports month, week, day, and list views.
Booking statuses
| Status | Color | Description |
|---|---|---|
| Pending | Yellow | Awaiting confirmation (when service requires approval) |
| Confirmed | Blue | Appointment confirmed |
| Completed | Green | Appointment took place successfully |
| Cancelled | Red | Cancelled by customer or provider |
| No-show | Gray | Customer did not attend |
| Rescheduled | Purple | Replaced by a new booking |
Valid status transitions
Pending → Confirmed, Cancelled
Confirmed → Completed, Cancelled, No-show, Rescheduled
Completed → (final state)
Cancelled → (final state)
No-show → (final state)
Rescheduled → (final state)
Features and actions
Create a new booking
What it does: Creates a new appointment following a 4-step wizard.
Steps:
Step 1 — Service and Location:
- Click the + New Booking button.
- Select the desired Service.
- Select the Location (only shows locations where the selected service is offered).
- Click Next.
Step 2 — Date and Time:
- Select a Date in the date picker.
- The system calculates and displays available time slots as buttons.
- Select an available slot. Each button shows start and end times, and how many providers are available.
- Click Next.
Step 3 — Provider:
- The list of available providers for the selected time slot is displayed.
- Select a provider from the list.
- Click Next.
Step 4 — Customer Information:
- Optionally search for an existing contact to link the booking to a conversation.
- If the contact has multiple conversations, select which conversation to link.
- Fill in customer details:
- Customer name (required)
- Phone (optional)
- Email (optional)
- Notes (optional)
- Click Create Booking.
Important notes:
- If the service has "Requires approval" enabled, the booking is created with Pending status.
- If approval is not required, the booking is automatically confirmed and an event is created on the provider's calendar.
- When linking a contact, the details (name, phone) are auto-filled.
Filter bookings
What it does: Filters the bookings displayed on the calendar.
Steps:
- Use the filter dropdowns at the top:
- Service — Show only bookings for a specific service.
- Location — Filter by location.
- Provider — Filter by assigned provider.
- Status — Filter by one or more statuses (multi-select).
- The calendar updates automatically.
View booking details
What it does: Opens a dialog with the booking's full details.
Steps:
- Click on any booking in the calendar.
- A dialog opens showing:
- Service, location, and provider information
- Customer details (name, phone, email)
- Appointment date and time
- Current status
- Notes
- Who created the booking and when
Edit customer information
What it does: Modifies the customer details of an existing booking.
Steps:
- Open the booking detail.
- Click Edit.
- Modify the customer's name, phone, email, or notes.
- Click Save.
Important notes:
- Only customer details can be edited, not the date/time or provider. To change the date, use the reschedule feature.
Change booking status
What it does: Moves a booking to the next state in its lifecycle.
Steps:
- Open the booking detail.
- Depending on the current status, you'll see available action buttons:
- Confirm — Moves from Pending to Confirmed (creates calendar event).
- Complete — Marks as completed.
- Cancel — Cancels the booking (deletes the calendar event). A reason is requested.
- No-show — Marks that the customer did not attend.
- Click the desired action button.
Reschedule a booking
What it does: Changes the date/time of an existing booking.
Steps:
- Open the booking detail.
- Click Reschedule.
- Select the new date and time slot (the system verifies availability).
- Optionally select a new provider.
- Confirm the reschedule.
Important notes:
- The original booking is marked as "Rescheduled" and a new booking is created with the new time.
- The calendar event from the original booking is deleted and a new one is created.
Booking sources
| Source | Description |
|---|---|
| Manual | Created by a team member from the interface |
| AI Agent | Automatically created by the AI agent during a conversation |
| API | Created through the platform API |
Calendar integration
- On confirmation of a booking → an Event is created on the provider's calendar with the format:
[Service Name] - [Customer Name]. - On cancellation of a booking → the linked Event is automatically deleted.
- Events created by bookings appear on the provider's personal calendar and sync with Google Calendar if connected.
Real-time notifications
When a booking is created, modified, or has its status changed, all team members receive a real-time notification (via SignalR). The bookings calendar updates automatically without needing to refresh the page.
FAQs
Q: What happens if I try to book a slot that is no longer available? A: The system verifies availability in real-time when creating the booking. If the slot is already taken, you'll receive an error and must select a different time.
Q: Can I see bookings for all providers? A: Administrators and bookings managers see all bookings. Providers only see bookings for the services they are assigned to.
Q: Do cancelled bookings disappear from the calendar? A: Cancelled bookings remain visible if you filter by the "Cancelled" status. By default, the calendar shows all statuses.
Q: Can I link a booking to a WhatsApp conversation? A: Yes, in step 4 of the creation wizard you can search for a contact and link the booking to their conversation. This allows the AI agent to have context about the customer's appointments.