Hospitality

Example

Complete procedure: a guest-facing procedure that builds an order and takes payment before confirmation or sync.

Goal: One coherent purchase path — shared payment core for occupancy and menu flows.

Typical step order

  1. Guest / time / elements context — as in booking-classic-occupancy, or skip occupancy for booking-menu-checkout.
  2. Build the order
    • Ajouter une position (AddPositionToOrder) — configured orderables; quantities usually FromOtherParameter.
    • Commander à partir du menu (OrderFromMenu) — guest-picked SKUs.
  3. Paiement direct en ligne (PayNow) — checkout when gross total > 0; skipped when nothing is owed.
  4. Persist / notifyCréer une réservation (SyncReservationEntry) / Créer une commande (SyncOrderEntry) / Créer une facture (SyncInvoiceEntry), then Informez les clients par e-mail (InformGuestViaEmail) → Informer les opérateurs (InformOperator).

Choosing order-building steps

Scenario Prefer
Fixed or parameter-driven price list Ajouter une position (AddPositionToOrder)
Guest browses menu Commander à partir du menu (OrderFromMenu)
Multi-night stay Ajouter position de nuits (AddNightsToOrder) before Paiement direct en ligne (PayNow)
Pay first, order more later Paiement direct en ligne (PayNow) then Réorganiser le menu (ReOrderMenu) / Soumettre en tant que nouvelle commande (SubmitAsReorder)

Related patterns: booking-classic-occupancy, booking-menu-checkout, booking-kiosk-tickets.

Testing split: Component guides for knobs; this pattern for chaining; Playwright for one E2E path; procedure-manager tests for Paiement direct en ligne (PayNow) edge cases.