Skip to content

Multi-day booking — the rules ​

Guest Direct Booking, desktop.

Two modes exist: flexible selects one bookable day; consecutive selects a continuous stay.

If a case is not decided by these rules, a rule is missing. Say so.


R1 — A date is open when at least one slot is bookable. Do not add capacity across separate slots.

R2 — A slot is bookable when it is open and fits party. Limited-by-seats needs enough seats and minimum party met. Limited-by-bookings needs one booking left. Unlimited and on-request are bookable.

R3 — Flexible booking selects one open date. That date's selected slot must be bookable for party.

Flexible booking: one chosen date

Flexible booking has one selected date. No range is implied.

R4 — Consecutive stay is valid only when every day in it is open. No skipped closed day. Chosen time must exist on every day; stay capacity is lowest capacity of that time across stay.

Consecutive booking: one time must work across whole stay

Consecutive booking shows only times that work across whole stay.

R5 — Changed selection invalidates visibly. Changing date, party, availability, or chosen time cannot leave invalid booking looking valid.

Party size invalidates unavailable times

Three guests invalidate times holding one or two seats.

R6 — Booking detail shows one row per booked day. Grouping may improve reading; it must not hide day-level booking facts.

R7 — Dates outside vendor booking window are never offered. No separate minimum or maximum stay length beyond these rules.


What to check ​

CheckExpected
Two slots each fit two guests; party is fourDate is closed. No slot fits four.
Limited-by-bookings slot has one booking leftDate and slot are open for any party size.
Limited-by-seats slot has fewer seats than partyDate and slot are closed.
Consecutive stay crosses closed dayEnd date cannot pass closed day.
One time is missing on any day of stayThat time is not offered for stay.
Party grows after date or time selectionInvalid date or time is visibly rejected.
Flexible productGuest selects one open day; no range is implied.
Booking has three consecutive daysDetail retains three day rows.

Test rules, not table. Anything contradicting R1–R7 is a bug.

Out of scope ​

  • Booking creation enforcement after picker. Picker rules do not replace backend validation.
  • Vendor configuration of schedules, rates, capacity, or booking window.

Flag: ems_l3_gdbk_product_detail_multidaypicker_desktop_v2_show

Was something unclear or missing?