Playbook · Shopify age gate not blocking
Age gate / age verification not blocking underage visitors on alcohol or restricted catalogs.
Written for a Shopify DTC owner whose age gate or age verification popup does not block underage (or unverified) visitors on alcohol, cannabis, weapons, adult, or other restricted catalogs — App embed off, “remember me” cookie forever, Markets / country rule never matching, soft “Yes I am 21” with no hard Decline path, theme JS race so the gate never mounts, or you chased password page stuck online, checkout validation Function blocking, or customer accounts instead. DIY-first: prove embed / cookie / Markets → hard-block Decline → clean-browser retest. Distinct from password page stuck online, checkout validation Function blocking, and customer accounts login broken / customer account UI extension missing. Soft-link cookie banner blocking checkout when a CMP is fighting the age-gate cookie. Not legal advice, no earnings claims, no invented case studies.
Nico at Latch AI Ops · Sep 10, 2026 · ~12 minute read
Buy the 72-hour install — $997Password pageCheckout validationMerchant FAQ
01
Age gate not blocking — not password page, checkout validation, or customer accounts.
Several “gate / block / account” products can look like “anyone can see my alcohol catalog.” They do not share a fix. This page is only when an age gate / age verification layer is supposed to stop underage or unverified visitors from browsing (and often from adding to cart) on a restricted catalog, and that layer fails — missing, soft, or permanently dismissed. Password / coming-soon storefront gate is password-page-stuck-online. Checkout validation Function rejecting carts at checkout is shopify-checkout-validation-function-blocking. Customer accounts login broken is shopify-customer-accounts-login-broken. Customer account UI extension missing is shopify-customer-account-ui-extension-missing.
Soft links when the bug is adjacent: a cookie / CMP banner fighting checkout is cookie-banner-blocking-checkout. Theme app extension / app blocks not appearing so you cannot place the gate is shopify-theme-app-extensions-not-appearing. This playbook stays on age gate expected → underage / unverified visitor still browses restricted catalog → Decline does not hard-block → cookie remembers “adult” forever.
02
Prove App embed, cookie dismiss, Markets rules, soft confirm vs DOB, and theme race.
Open Online Store → Themes → Customize → App embeds (and any age-gate theme section). Confirm the age-gate / age-verification app is enabled on the Current theme, not only a draft. Note whether the vendor uses a soft “Are you 21+?” confirm, a DOB field, or a third-party ID check. Soft confirm alone is not the same product as ID verification — but both can fail to block if Decline is a no-op.
Reproduce in a private window with cookies cleared: land on homepage / collection / PDP for a restricted product. Does the gate mount before content is readable? Tap Decline / No — are you redirected off-site, shown a blank wall, or still browsing? Tap Accept once, close the tab, return days later — does “remember me” skip the gate forever? Check Markets / country targeting: is the gate scoped to one market so visitors from another market never see it?
Soft-check: if the entire store is stuck behind Shopify’s Online Store password / coming soon, leave this page and use password-page-stuck-online. If carts are rejected only at checkout by a Shopify Function, use shopify-checkout-validation-function-blocking. If buyers must log in and login is broken, use shopify-customer-accounts-login-broken. If account UI blocks are missing, use shopify-customer-account-ui-extension-missing.
03
Repair embed, hard-block on Decline, cookie TTL, Markets, and retest clean browser.
Enable the age-gate App embed on Current and save. In the app, set Decline / underage to a hard block: redirect to a safe URL, show a full-page wall, or close navigation — not a soft dismiss that leaves the catalog open. Shorten “remember verification” cookie TTL so a shared device does not stay unlocked for months. Align Markets / geo rules with where you legally sell restricted goods. Remove a second age-gate / popup app writing a conflicting cookie.
If the gate races the theme (content flashes before the modal), load the embed earlier, disable lazy-load of the gate script, or move the section higher in the theme. If theme app extensions never appear so you cannot place the gate, fix that on shopify-theme-app-extensions-not-appearing first. If a CMP / cookie banner clears or blocks the age-gate cookie, reconcile on cookie-banner-blocking-checkout.
Retest: private window → gate mounts before catalog is usable → Decline hard-blocks → Accept then new private window still gates until cookie rules say otherwise. Soft notes: storefront password belongs on password-page-stuck-online. Checkout Function cart rejection belongs on shopify-checkout-validation-function-blocking. Login loops belong on shopify-customer-accounts-login-broken. Missing account UI blocks belong on shopify-customer-account-ui-extension-missing.
04
You tested password page, checkout validation, or customer accounts instead.
Password page stuck online / coming soon is password-page-stuck-online. Checkout validation Function blocking is shopify-checkout-validation-function-blocking. Customer accounts login broken is shopify-customer-accounts-login-broken. Customer account UI extension missing is shopify-customer-account-ui-extension-missing. Cookie banner blocking checkout is cookie-banner-blocking-checkout. Theme app extensions not appearing is shopify-theme-app-extensions-not-appearing.
The only honest test for this page: clean browser → age gate mounts on restricted catalog → Decline / underage hard-blocks browse (and ideally add-to-cart) → Accept path is intentional and cookie TTL is not forever on a shared device. Anything else is a different product. This playbook is operational troubleshooting, not legal advice for alcohol, cannabis, or age-restricted sales.
05
When to stay DIY vs pay $997.
Stay DIY if you can spend one afternoon on the list above: prove App embed on Current, hard-block Decline, shorten cookie TTL, align Markets, remove a fighting second gate app, retest in a private window. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Related pages: password page, checkout validation, customer accounts login, customer account UI extension, cookie banner.
Pay for help when the work is not the age-gate modal itself — it is connecting the stack you already have so age-gate / compliance / exception alerts land in a channel you already check, and the live store is one workflow instead of a spreadsheet plus a Slack bot you forgot. That is the Latch AI Ops install.
What $997 USD one-time buys: lead capture on the live store, ops alerts in a channel you already check, and a checkout-ready workflow. 72 hours after collaborator access, not after payment. One live Shopify store. Access plus a delivery thread. Store URL collected at checkout. Not a SaaS seat, not a theme rebuild retainer, not a conversion guarantee, not a brand or theme job, not legal counsel.
Other shops’ public ranges, not testimonials: a checkout / ops install typically runs $500–$2,500. A full ops consulting block typically runs $2,000–$5,000. $997 is the cheap end of that work, sold as a 72-hour install of three systems — not as an earnings number or conversion-lift claim.
What it does not buy: more orders, recovered revenue, a forever age-gate guarantee, legal compliance certification, or a case study. Latch AI Ops has not published customer proof because there are no customers yet. You are buying the install.
Checkout is on Whop. Operator is Nico. United States offer. You can revoke collaborator access after handoff. We do not take owner passwords.