الحجوزات
Bookings
Let customers schedule appointments directly through your messaging channels. SkyLight Chat Bookings supports multiple booking types, resource management, custom schedules, and full lifecycle tracking.
Purpose
The Bookings module enables service-based businesses to:
- Accept appointments — customers book via WhatsApp, web chat, or your AI agent.
- Define booking types — consultations, services, classes, etc., each with its own duration.
- Assign resources — staff members, rooms, equipment.
- Set availability — working hours, lunch breaks, holidays.
- Block dates — vacations, maintenance, special closures.
- Track status — pending, confirmed, cancelled, completed.
- Automate reminders — send WhatsApp notifications before appointments.
Who can access
| Role | Permissions |
|---|---|
| Owner | Full access — configure types, resources, schedules, view/manage all bookings |
| Admin | Full access |
| Member | View and manage bookings; cannot edit types, resources, or schedules |
| Viewer | Read-only |
Prerequisites
- Booking types configured — at least one type must exist before accepting bookings.
- Resources assigned (optional) — required if bookings need specific staff or rooms.
- Schedules defined — default or resource-specific availability.
- WhatsApp connected (for reminders) — enables automated appointment notifications.
Full walkthrough
Creating a booking type
Booking types define the services you offer.
- Go to Bookings → Booking Types.
- Click + Create Type.
- Fill in:
- Name (required) — e.g., 30-Minute Consultation.
- Duration (required) — in minutes (e.g., 30, 60, 90).
- Description — details shown to customers.
- Price (optional) — display price; does not process payment.
- Buffer time — minutes between appointments for breaks.
- Max bookings per slot — 1 for one-on-one, higher for group sessions.
- Click Save.
Booking type modes
| Mode | Use case | Description |
|---|---|---|
| Schedule-based | Consultations, meetings | Follows working-hour schedules |
| Resource-based | Staff appointments | Availability tied to specific resources |
| Capacity-based | Classes, events | Multiple attendees per time slot |
Set the mode when creating the type; it determines how availability is calculated.
Managing resources
Resources are the people, rooms, or equipment required for a booking.
- Go to Bookings → Resources.
- Click + Add Resource.
- Fill in:
- Name (required) — e.g., Dr. Ahmed, Meeting Room A.
- Type —
staff,room,equipment. - Assigned Booking Types — which types this resource serves.
- Schedule — select a custom schedule or use the default.
- Click Save.
Customers can choose a resource when booking (if enabled), or the system auto-assigns based on availability.
Configuring schedules
Schedules define when bookings can be made.
- Go to Bookings → Schedules.
- Click + Create Schedule.
- Name the schedule (e.g., Standard Hours, Weekend Only).
- Set working hours for each day:
- Start time and End time.
- Breaks — e.g., 12:00–13:00 for lunch.
- Closed — toggle off for non-working days.
- Click Save.
Assign schedules to resources or set a default schedule for all bookings.
Blocking dates
Block dates to prevent bookings during holidays or closures.
- Go to Bookings → Blocked Dates.
- Click + Block Dates.
- Select:
- Date range — single day or multiple days.
- Reason — e.g., National Holiday, Team Retreat.
- Apply to — all resources or specific resources.
- Click Save.
Blocked dates override regular schedules.
Creating a booking manually
- Go to Bookings (main list).
- Click + Create Booking.
- Select:
- Contact (required) — search or add new.
- Booking Type (required).
- Resource (if applicable).
- Date and Time — available slots shown based on schedule.
- Notes — internal notes.
- Click Create.
The booking appears with Pending or Confirmed status based on your settings.
Managing booking statuses
| Action | Result |
|---|---|
| Confirm | Moves booking to Confirmed status |
| Reschedule | Opens date/time picker to change slot |
| Cancel | Moves booking to Cancelled status |
| Complete | Marks the appointment as finished |
Open a booking and use the action buttons in the detail view.
Viewing the calendar
Toggle to Calendar View for a visual overview:
- Day, week, or month views.
- Color-coded by status or resource.
- Click a time slot to create a booking.
- Drag-and-drop to reschedule.
Field glossary
| Field | Description |
|---|---|
| Booking ID | Unique identifier |
| Contact | Associated customer |
| Booking Type | Service being booked |
| Resource | Assigned staff, room, or equipment |
| Starts At | Appointment start time (ISO 8601) |
| Ends At | Appointment end time (ISO 8601) |
| Status | pending, confirmed, cancelled, completed |
| Notes | Internal notes |
| Created At | When the booking was made |
| Updated At | Last modification timestamp |
Statuses and badges
| Status | Badge color | Meaning |
|---|---|---|
| Pending | Yellow | Awaiting confirmation |
| Confirmed | Green | Appointment confirmed |
| Cancelled | Red | Appointment cancelled |
| Completed | Blue | Appointment finished |
| No-Show | Gray | Customer did not attend |
Nested screens
Booking detail modal
| Section | Contents |
|---|---|
| Header | Contact name, booking type, status badge |
| Details | Date, time, duration, resource |
| Notes | Internal notes (editable) |
| Activity | Timeline of status changes |
| Actions | Confirm, Reschedule, Cancel, Complete buttons |
Booking type editor
| Field | Description |
|---|---|
| Name | Type display name |
| Duration | Length in minutes |
| Description | Customer-facing description |
| Price | Optional display price |
| Buffer | Minutes between appointments |
| Max per slot | Capacity (1 = one-on-one) |
| Mode | Schedule-based, Resource-based, or Capacity-based |
| Active | Toggle to enable/disable |
Resource editor
| Field | Description |
|---|---|
| Name | Resource display name |
| Type | staff, room, equipment |
| Booking Types | Assigned service types |
| Schedule | Associated availability schedule |
| Active | Toggle to enable/disable |
Schedule editor
| Field | Description |
|---|---|
| Name | Schedule display name |
| Days | Working hours per day |
| Breaks | Break periods (lunch, etc.) |
| Timezone | Schedule timezone |
Connections to other areas
| Feature | How it connects |
|---|---|
| Contacts | Bookings link to contact records |
| AI Agents | Agents can check availability and create bookings |
| Orders | Bookings can be associated with service orders |
| Send appointment reminders via WhatsApp | |
| Web Chat | Visitors can book through the chat widget |
| Webhooks | booking.created, booking.updated, booking.cancelled, booking.completed events |
| Bookings API | Create and manage bookings programmatically |
Limits and plan behavior
| Plan | Booking types | Resources | Bookings/month |
|---|---|---|---|
| Starter | 2 | 2 | 50 |
| Pro | 10 | 10 | 500 |
| Business | 25 | 25 | 2,000 |
| Enterprise | Unlimited | Unlimited | Unlimited |
Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| No available slots shown | Schedule not configured or blocked | Check schedules and blocked dates |
| Booking created but no confirmation sent | WhatsApp not connected | Connect WhatsApp; check reminder settings |
| Resource always shows unavailable | Resource schedule conflicts or disabled | Review resource's assigned schedule |
| Cannot delete booking type | Active bookings exist | Cancel or complete all bookings first |
| Double-booking occurred | Capacity set > 1 unintentionally | Edit booking type and set Max per slot = 1 |
| Calendar not displaying correctly | Browser timezone mismatch | Verify account timezone in Settings |
Related articles
- Contacts — customer records linked to bookings
- AI Agents — automate booking through conversation
- Orders — link bookings to service orders
- Bookings API — programmatic booking management
