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
- Guest / time / elements context — as in booking-classic-occupancy, or skip occupancy for booking-menu-checkout.
- Build the order
- Agregar posición (
AddPositionToOrder) — configured orderables; quantities usually FromOtherParameter. - Ordenar del menú (
OrderFromMenu) — guest-picked SKUs.
- Agregar posición (
- Pago directo en línea (
PayNow) — checkout when gross total > 0; skipped when nothing is owed. - Persist / notify — Crear una reserva (
SyncReservationEntry) / Crear un pedido (SyncOrderEntry) / Crear una factura (SyncInvoiceEntry), then Informar a los huéspedes por correo electrónico (InformGuestViaEmail) → Informar a los operadores (InformOperator).
Choosing order-building steps
| Scenario | Prefer |
|---|---|
| Fixed or parameter-driven price list | Agregar posición (AddPositionToOrder) |
| Guest browses menu | Ordenar del menú (OrderFromMenu) |
| Multi-night stay | Agregar posición de noches (AddNightsToOrder) before Pago directo en línea (PayNow) |
| Pay first, order more later | Pago directo en línea (PayNow) then Menú de reordenamiento (ReOrderMenu) / Enviar como reorden (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 Pago directo en línea (PayNow) edge cases.