Skip to content

Booking Flow

UC-CUST-001: Appointment Booking

Purpose: Enable customers to book appointments via WhatsApp with real-time slot selection.

Property Value
Actor Customer
Trigger Customer sends "Book appointment" or similar intent
Priority P0

Main Success Scenario:

  1. Bot presents service menu via interactive list.
  2. Customer selects a service.
  3. Bot asks for preferred date.
  4. Bot fetches available slots from backend and displays them as buttons/list.
  5. Customer selects a time slot.
  6. Bot confirms booking and sends calendar invite/confirmation message.

Alternate Flows:

  • Flow A: No Slots Available: Bot offers alternative dates or waitlist option.

  • Flow B: Specific Stylist: Customer requests specific stylist; bot fliters slots for that stylist.

Acceptance Criteria:

  1. [ ] Real-time availability check.
  2. [ ] Response time < 2s.
  3. [ ] Booking reflected in Admin Dashboard immediately.

UC-CUST-002: Join Waitlist

Purpose: Allow customers to join a waitlist when no slots are available.

Property Value
Actor Customer
Trigger Customer selects "Join Waitlist" when slots are full
Priority P1

Main Success Scenario:

  1. Customer requests a time that is fully booked.
  2. Bot offers "Notify me if slot opens".
  3. Customer confirms.
  4. System adds customer to waitlist for that specific window.
  5. (Async) If slot opens, system sends notification to waitlisted users.

Alternate Flows:

  • Flow A: Slot Opens: First customer to respond gets the slot.

Acceptance Criteria:

  1. [ ] Waitlist entries correctly stored.
  2. [ ] Auto-notification triggers when cancellation occurs.