Playbook · Shopify cart drawer not opening
Shopify cart drawer / mini-cart not opening after add to cart.
Written for a Shopify DTC owner whose theme cart drawer, mini-cart, or AJAX cart never opens after Add to cart — ATC returns 200 but no slide-out, cart icon / bag click does nothing, cart-drawer custom element unbound on Current, Console errors abort open, or a cart-drawer / mini-cart / upsell app steals the open event. DIY-first: prove theme AJAX cart vs JS errors vs app conflict; repair the live open path; retest on the live storefront. Distinct from mobile hamburger / drawer menu not opening, sticky add to cart missing, upsell / cross-sell popup missing, free shipping progress bar missing, and cart note not saving. A drawer that opens but shows stale lines is cart-drawer-not-updating. No earnings claims, no invented case studies.
Nico at Latch AI Ops · Sep 8, 2026 · ~12 minute read
Buy the 72-hour install — $997Mobile menuDrawer stuck / not updatingMerchant FAQ
01
Cart drawer / mini-cart not opening after ATC — not mobile menu, sticky ATC, upsell popup, free shipping bar, cart note.
Several cart-adjacent surfaces can look like “the cart is broken.” They do not share a settings panel. This page is only when Add to cart (or the cart icon) never opens the theme cart drawer / mini-cart / AJAX slide-out. Mobile hamburger / drawer menu not opening is shopify-mobile-menu-not-opening. Sticky add to cart missing is shopify-sticky-add-to-cart-missing. Upsell / cross-sell popup missing is shopify-upsell-popup-not-showing. Free shipping progress bar missing is shopify-free-shipping-bar-missing. Cart note not saving is shopify-cart-note-not-saving. If the drawer opens but line items / bubble stay stale, use cart-drawer-not-updating.
02
Prove theme AJAX cart vs cart.js errors vs cart icon vs app conflict on a live storefront.
Open the live storefront — not only Theme editor preview. Capture four proofs before you install another cart-drawer app:
- Customize Current → cart drawer / mini-cart / cart notification section: is the drawer block present and enabled on the published theme (not only a draft)? Is “open cart drawer on add to cart” (or equivalent) on?
- DevTools Network: after ATC, does
/cart/add.js(or Form POST) return 200, and does a sections request (/?sections=cart-draweror similar) fire? Console: any red errors from theme cart.js, cart-drawer custom element, or apps that abort open? - Cart icon / bag / bubble: does a direct click open the drawer when the cart already has a line? Screenshot empty-cart vs after-ATC states.
- Theme settings → App embeds: is a second cart-drawer / mini-cart / sticky-ATC / upsell app enabled on Current while the theme still expects native open?
If you only tested the mobile hamburger, sticky ATC bar, an upsell popup, the free shipping bar, or the cart note field, you are on the wrong playbook.
03
Theme cart-drawer / mini-cart / AJAX cart section unbound on Current.
Online Store 2.0 themes gate the slide-out behind a cart-drawer / cart-notification / mini-cart section (or a header cart block with “open drawer on add”). After a developer paste or section-group edit, that section can vanish from Current while Add to cart still posts to /cart/add — so buyers get a silent success and no UI. Separately, theme settings may send ATC to the cart page instead of opening the drawer, which owners report as “drawer not opening.”
Fix path: Customize Current → enable Cart drawer / Mini-cart / Cart notification → turn on open-on-add (if present) → Save / Publish Current. Theme editor publish failures are theme-editor-publish-failing. Broken header-group JSON is json-templates-section-groups-broken.
04
cart.js / Sections API / publish listeners broken so open never fires after /cart/add.
Native drawers listen for a successful cart add, then publish a cart:updated (or similar) event and open the cart-drawer custom element / dialog. A broken import, CSP / third-party script error, wrong section id in the Section Rendering API call, or a theme edit that removed the open listener leaves ATC succeeding while the drawer stays closed. Separately, custom CSS, sticky headers, chat widgets, or consent banners can sit above the drawer (z-index) or set pointer-events:none so it “opens” invisibly.
Fix path: clear the Console error that fires on first ATC; confirm Network shows sections / cart-drawer after add; restore the theme’s stock cart.js / cart-drawer snippet if a paste removed the open listener; temporarily lower sticky header / chat z-index; hard-refresh without extensions. Consent banners blocking clicks are cookie-banner-blocking-checkout. Drawer opens but HTML stays stale is cart-drawer-not-updating.
05
Cart-drawer / mini-cart / upsell apps fighting native open, or cart icon dead.
Cart-drawer apps, mini-cart builders, sticky ATC bars, and post-ATC upsell popups often intercept the same Add to cart promise. Embed off on Current, enabled only on a draft, scoped to Markets the buyer is not in, or set to “redirect to cart” while the theme still paints a dead bag icon — classic “ATC works, drawer never opens.” Two cart UIs fighting one open event is also common after installing a free drawer app “just to try.”
Fix path: Theme settings → App embeds → enable one cart-drawer path on Current (or disable the app and use native drawer only) → Save. Retest ATC and cart-icon open with upsell apps temporarily off. Upsell popups that never mount are shopify-upsell-popup-not-showing. Sticky ATC missing is shopify-sticky-add-to-cart-missing. Generic App embeds failing across many apps is app-embed-not-loading.
06
You tested mobile menu, sticky ATC, upsell popup, free shipping bar, or cart note instead.
Mobile hamburger / drawer menu not opening is shopify-mobile-menu-not-opening. Sticky add to cart missing is shopify-sticky-add-to-cart-missing. Upsell / cross-sell popup missing is shopify-upsell-popup-not-showing. Free shipping progress bar missing is shopify-free-shipping-bar-missing. Cart note not saving is shopify-cart-note-not-saving. Drawer opens but lines stay stale is cart-drawer-not-updating. Do not chase hamburger, sticky bar, upsell, free-shipping, or note settings when the broken control is cart-drawer open after ATC.
The only honest test for this page: on a live storefront, Add to cart (or cart icon) never opens the theme cart drawer / mini-cart / AJAX slide-out — fixable with cart-drawer section on Current, cart.js / sections open path restored, one drawer app path (native or one app), and cart icon open working — not the mobile menu alone, not sticky ATC alone, not upsell popup alone, not free shipping bar alone, not cart note alone. Capture theme + Network + Console + App embeds, fix the open path. Anything else is a different product.
07
When to stay DIY vs pay $997.
Stay DIY if the theme cart drawer is on Current, ATC opens the drawer on the live storefront, Console is clean on add, cart icon opens when lines exist, and only one drawer path (native or one app) owns open. That is ordinary Shopify admin + theme work.
Pay $997 when the gap is wiring: lead capture, ops alerts, and a checkout-ready workflow on the stack you already pay for, installed in 72 hours after collaborator access lands. Latch does not sell an earnings, conversion, or cart-open lift number. Latch does not rebuild your theme’s cart as a design agency. One live store. Clock starts when collaborator access is in.