Appearance
Checkout terms & conditions — the rules
Guest Direct Booking, checkout page. Desktop and mobile.
Checkout shows every set of terms that applies. The guest can agree only from inside them.
If a case is not decided by these rules, a rule is missing. Say so.
R1 — Every set of terms that applies is shown. Vendor general terms, plus each cart experience's own terms.
R2 — General terms come first; experiences follow cart order. Same order as Included experiences. An experience without its own terms is absent. An experience booked on several dates appears once.
R3 — Checkbox cannot be ticked directly. It opens terms. Only I have read and agree ticks it. Clicking a ticked checkbox unticks it.
R4 — External terms open in a new tab. A vendor can store terms as a link. Show a row and open button, never inline. Only experience terms can be links.
R5 — Terms follow page language. ja and jp mean same language. If no copy exists in that language, show first available copy.
R6 — Nothing partial is shown. Terms load per experience in parallel. Until all arrive: loader; agree disabled; checkbox still opens modal. Sections never arrive one by one or reorder.
R7 — Booking with no terms still completes. No terms means normal checkbox: no modal.
What to check
| Check | Expected |
|---|---|
| Click checkbox | Terms open; checkbox stays unticked. |
| Press I have read and agree | Modal closes; checkbox ticks. |
| Click ticked checkbox | Unticks; no modal. |
| Cart has several experiences, some with terms | General terms, then applicable experience terms in Included experiences order. |
| Same experience is booked on three dates | It appears once. |
| Experience terms are a link | Row with open button; new tab; nothing inline. |
| Page language is Japanese | Japanese copy, or first available copy. |
| Terms still load | Loader; agree disabled; no partial list. |
| No vendor or experience terms | Checkbox ticks normally; booking submits. |
Test rules, not table. Anything contradicting R1–R7 is a bug.
Out of scope
- PMS Direct Booking has no terms step. Adding one is separate feature.
- Consent record stores only checkbox result, not terms, language, version, or content. Backend work.
- Terms content belongs to vendor. Rich-text editor content is authored with editor controls, not Markdown.
Flag: ems_l3_gdbk_guest_info_terms_and_conditions_v2_show