Playbook · Shopify variant inventory policy (deny/continue selling when out of stock) wrong
Shopify variant inventory policy wrong — Deny vs Continue selling when OOS so you oversell or block checkout.
Written for a Shopify owner or ops lead whose variant inventory policy is wrong — When out of stock is Deny when you need Continue (preorder/backorder), or Continue when you need Deny — so checkout oversells at qty 0 or Add to cart / checkout blocks while stock shows available elsewhere. DIY-first: prove Admin inventory_policy vs tracked quantity and location available; capture productVariantsBulkUpdate / ERP overrides; fix Deny/Continue, untracked variants, and apps that overwrite policy on sync. Distinct from Flow inventory not updating, inventory item cost wrong, POS inventory not syncing, transfer order not receiving, and partial fulfillment stuck. No earnings claims, no invented case studies.
Nico at Latch AI Ops · Sep 10, 2026 · ~11 minute read
Buy the 72-hour install — $997Flow inventoryInventory item costMerchant FAQ
01
Variant inventory policy wrong — not Flow inventory, unit cost, POS sync, transfer, or partial fulfillment.
Several inventory workflows look like “stock is wrong at checkout.” They do not share one engine. This page is only when Products → variant → Inventory → When out of stock (inventory_policy deny vs continue) is wrong for the selling variant — Continue lets buyers check out at qty 0 (oversell), or Deny greys Add to cart / blocks checkout when you meant preorder/continue selling. Shopify Flow inventory quantity conditions/actions are Flow inventory not updating. Cost per item / unit cost / COGS is inventory item cost wrong. POS vs online stock sync is POS inventory not syncing. Destination receive on a transfer is transfer order not receiving. Remaining line items after a partial ship are partial fulfillment stuck. This page is only: Shopify variant inventory policy (deny/continue selling when out of stock) wrong so overselling or blocking checkout.
Six ordinary reasons the policy fails: When out of stock set to Continue on a SKU that must Deny (oversell); set to Deny when preorder/backorder needs Continue; Track quantity off so policy never applies the way you expect; available at selling location is 0 while another location still has stock and Markets/routing confuses the test; ERP / CSV / bulk / inventory app overwrites inventory_policy on every sync; or you are debugging Flow stock rules, unit cost, POS sync, transfers, or partial fulfillment instead of Deny vs Continue. Walk them in that order. You already pay for Shopify. You do not need another “OOS policy SaaS” to prove inventory_policy equals storefront ATC behavior.
02
Prove Admin inventory_policy vs tracked qty, locations, and API/app overrides.
Open Products → the product → Variants → the selling variant → Inventory. Screenshot Track quantity, available / on hand / committed per location, and When out of stock (Deny / Continue selling when out of stock). If an ERP, CSV importer, or inventory app writes variants, keep the last productVariantsBulkUpdate / inventoryItem / REST variant inventory_policy payload and the app’s “continue selling” / “allow oversell” setting.
Reproduce on the live admin + storefront (not a stale tab): set a test variant Track quantity on, available 0 at the Online Store location, policy Deny — Add to cart must refuse. Switch the same variant to Continue, Save — ATC must accept (oversell path). If qty is wrong because Flow never adjusts stock, leave this page and use Flow inventory not updating. If only Cost per item / profit reports are wrong, open inventory item cost wrong.
03
Fix wrong Deny/Continue, untracked variants, location availability, and apps overwriting policy.
Set When out of stock → Deny on SKUs that must not oversell. Use Continue only when preorder/backorder is intentional and ops can fulfill. Enable Track quantity when you expect policy to gate ATC — untracked variants ignore stock gates the way merchants often expect. Confirm available qty at the location that sells Online Store / Markets (not only a warehouse location you never sell from).
Pause or reconfigure ERP / CSV / bulk / inventory apps that force inventory_policy: continue (or deny) on every sync. After Save, hard-refresh the PDP logged out and retest ATC + checkout at qty 0 and qty 1. If POS still shows a different on-hand than Admin after policy is correct, that is POS inventory not syncing. If destination stock never lands after a transfer, use transfer order not receiving. If remaining lines will not fulfill after a partial ship, use partial fulfillment stuck.
04
Checklist and how to prove Deny blocks checkout and Continue allows OOS ATC only when intentional.
Checklist: (1) screenshot Track quantity + When out of stock + location available, (2) set Deny on no-oversell SKUs, (3) use Continue only for intentional preorder/backorder, (4) enable Track quantity when policy must gate ATC, (5) fix selling-location available qty, (6) stop apps that overwrite inventory_policy, (7) prove ATC refuse at qty 0 + Deny and ATC accept at qty 0 + Continue only when intentional, (8) if Flow / cost / POS / transfer / partial fulfillment remain wrong, switch playbooks.
Prove it: on a live test variant, Track quantity on, available 0, Deny → logged-out PDP cannot add to cart / checkout. Switch Continue → ATC succeeds at qty 0. Restore Deny (or keep Continue only if preorder is intentional). If storefront policy is correct but Flow never updates qty, open Flow inventory not updating.
05
You tested Flow inventory, unit cost, POS sync, transfer, or partial fulfillment instead.
Shopify Flow inventory quantity conditions/actions are Flow inventory not updating. Cost per item / COGS is inventory item cost wrong. POS vs online stock is POS inventory not syncing. Transfer receive is transfer order not receiving. Remaining lines after partial ship are partial fulfillment stuck. None of those fix variant inventory policy Deny vs Continue selling when out of stock so overselling or blocking checkout.
Finish prove Track quantity + When out of stock + location available → fix Deny/Continue / untracked / app overwrite → live ATC proof at qty 0 first. Only then open the related playbook that matches the remaining symptom.
06
When to stay DIY vs pay $997.
Stay DIY if you can spend one afternoon on the list above: prove inventory_policy vs tracked qty and locations, set Deny vs Continue correctly, stop apps that overwrite policy, prove ATC behavior at qty 0, and stop treating Flow inventory / unit cost / POS sync / transfer / partial fulfillment as the same bug. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Related pages: Flow inventory, Inventory item cost, POS inventory, Transfer order, Partial fulfillment.
Pay $997 when the gap is wiring — lead capture, ops alerts, and a checkout-ready workflow on the stack you already pay for, including inventory-policy / oversell / OOS-block exceptions landing in a channel you already check. Clock starts when collaborator access is in. 72 hours. One live store. Latch does not sell an earnings or ops-efficiency number. No invented case studies.