{
  "id": "WEB-111",
  "slug": "web-111",
  "title": "Alcohol delivery must gate the ordering flow, not just a splash page",
  "statement": "An alcohol delivery brand must present the age gate on the ordering flow itself, not only on a marketing splash page.",
  "rationale": "Delivery is the case where the gate has to hold, because the transaction ends with alcohol arriving at a door rather than with someone standing at a counter. A splash gate on the marketing site is satisfying to build and does nothing for the ordering app or the checkout subdomain, which is usually a different system entirely.",
  "layer": "WEBSITE",
  "layerSlug": "website",
  "object": "checkout and ordering flow",
  "severity": "BLOCKING",
  "detectability": [
    "CRAWL"
  ],
  "failureClass": "TERMINAL_WEBSITE",
  "authorities": [
    "Twilio"
  ],
  "codes": [
    {
      "provider": "Twilio",
      "code": "30956",
      "remediable": true,
      "generation": "gen2"
    }
  ],
  "applicability": {
    "verticals": [
      "alcohol_delivery"
    ]
  },
  "applicabilityText": "Applies when the vertical is alcohol_delivery.",
  "universal": false,
  "remediation": "Add the date-of-birth gate to the ordering flow — the cart, the checkout, and the app — as well as to the marketing site, and verify age again at handover. Done when the order path itself refuses an under-21 date of birth.",
  "notes": "Twilio scopes 30956 to \"all linked websites and opt-in flows\", which is what makes a splash-page-only gate insufficient here. Tagged to the alcohol_delivery vertical per the catalog condition; the general alcohol threshold rule is WEB-112 and applies whether or not delivery is involved.",
  "phase": "approval",
  "automated": true,
  "url": "https://ekas.io/rules/10dlc/website/web-111/",
  "markdown": "https://ekas.io/rules/10dlc/website/web-111.md",
  "registry": "https://ekas.io/rules/10dlc/",
  "updated": "2026-07-25",
  "licence": "CC BY 4.0 — https://creativecommons.org/licenses/by/4.0/"
}
