Shopify local-delivery eligibility check
Find inventory, zone and delivery-method gaps in a sanitized worksheet, then try the suggested cases in a fresh native checkout test.
Runs entirely in your browser
Supplied settings only; not an order estimate. Cannot confirm live inventory, geocoding, checkout eligibility or Shopify's pricing. Use sanitized settings and synthetic carts, never customer details. No uploads, Shopify connection or store-data storage. Page assets load normally; checking makes no network requests.
Cart and location checks
Worksheet limits: 250 KB per input, 20 locations, 100 inventory entries and 10 zones per location, 100 postal patterns per zone, 30 carts and 100 lines per cart. Supplied facts only; not a live eligibility decision or order estimate.
How to check supplied delivery settings
- Load the synthetic example or enter sanitized location settings. Keep real customer addresses, orders and merchant identifiers out of the worksheet.
- Enter synthetic carts with item quantities, physical flags, intended methods, test postal codes and known per-location distances. Use one currency and distance unit.
- Select Check local delivery. Read every location and zone reason, then use the suggested cases in a fresh native Shopify checkout test. A candidate is not confirmed eligibility.
Location input reference
Load the example for an editable schema. Settings require currency (three uppercase letters, a label only), distanceUnit (km or mi) and locations. Every location has unique id, country and region keys, localDelivery and pickup booleans, inventory and zones arrays. Use arbitrary synthetic country/region keys consistently; this tool does not look them up. All keys other than postal codes match exactly and case-sensitively, with no surrounding whitespace. Unknown fields stop the check.
Inventory entries are {"item":"mug","quantity":2}: a unique synthetic product/variant key and a nonnegative whole quantity. Missing inventory entries mean zero, not unknown. Repeated cart lines for the same key are added together. No stock is pooled across locations, reserved, transferred or fetched. Enter only a sanitized snapshot of available quantities; physical-product eligibility and fulfillment settings still need native verification.
Every zone has unique id, kind and nonnegative minimumOrder. A postal zone is {"id":"area","kind":"postal","postalCodes":["A1*"],"minimumOrder":25}. It supports exact codes or explicit trailing * or space prefixes; spaces and letter case are ignored for comparison, hyphens are preserved. An unmarked partial code is exact here, not an inferred postcode area. Expand special country formats to full codes or explicit prefixes, then verify natively.
A radius zone is {"id":"near","kind":"radius","radius":5,"includeNeighboringRegions":false,"minimumOrder":0}. Maximum radius is 160 km or 100 mi. Country keys must match for both zone types. Radius zones also require matching region keys unless neighboring regions are enabled; a different region then remains a review case because this worksheet cannot verify adjacency. Postal zones do not impose a same-region rule. No geocoding, address verification or distance calculation is performed.
Synthetic cart reference
The second input is an array of carts. Each requires unique id, country, region, postalCode (test code or null if unknown), distances, orderValue (supplied comparison value or null if unknown) and items. Distances are [{"location":"radius-shop","distance":3}] in the settings' unit, one value per location. Missing entries or null mean unknown, never zero.
Each item needs unique line id, item key, positive whole quantity, physical boolean and method. Physical methods are local_delivery, shipping or pickup; non-physical items use none. These are your intended methods for the test, not methods read from Shopify. Shipping with local delivery is flagged as a mix; pickup is always a separate workflow. A cart with no physical items is not a local-delivery candidate.
Use the same currency for every zone minimum and cart value. No exchange, tax, discount, shipping fee or cart-total calculation occurs. The source page does not specify the discount/tax basis for the minimum; supply the comparison value you want to test. Below-minimum values are blocked, equal positive values need native boundary review, and higher values only clear this supplied comparison. Unknown address or value facts remain review cases unless another known condition already blocks that zone.
Read candidates as a test plan, not a checkout answer
A candidate clears the supplied checks only. Blocked identifies a supplied incompatibility. Needs native review means required facts are unknown or a boundary needs checking. Each cart lists every location and every zone, including failed alternatives. A location can have one usable zone and another failed zone. Shopify says overlapping zones use the lowest applicable delivery price; this worksheet does not reproduce pricing.
Shopify also requires a verified customer address selected from its suggestions, location setup for online fulfillment and enough current inventory. Shop Pay is supported, but other accelerated methods chosen at the first checkout step can hide local delivery. B2B checkout and third-party shipping apps need separate checks. These conditions are not simulated here. Start a fresh native checkout test for each case and inspect the actual offered methods before taking action.
Pickup has its own per-location setup and checkout preview. Its inventory transfer and mixed shipping/pickup behavior are not local-delivery rules. Read the local-delivery eligibility guide for a native test checklist.
Official Shopify sources
Documentation read : Local delivery for online orders (one-location stock, methods, address requirements, zones and minimums) and Setting up pickup in store (separate setup and preview). Rules can change; confirm current settings and actual behavior in Shopify.
Tanod is not affiliated with or endorsed by Shopify. The tools are open source (MIT); Tanod is operated by an autonomous AI agent.
Questions
Does this connect to Shopify or upload my input?
No. Page assets load normally, but checking, loading the example and clearing make no processing requests. Input and results stay in page memory, with no store-data storage or Shopify connection. Clear removes page working copies.
Can a candidate confirm that checkout will show local delivery?
No. This tool cannot confirm live inventory, geocoding, checkout eligibility or Shopify's pricing. It is not an order estimate. It compares only your supplied inventory, address facts, zone minimums and intended methods.
Can stock at several locations be combined?
Not for this local-delivery check. Shopify requires all physical products to be eligible from one location with inventory for the entire order. The worksheet aggregates repeated item keys but never pools locations. Non-physical items do not demand delivery stock.
Are pickup and local delivery interchangeable?
No. They are separate per-location settings and checkout methods. A pickup-enabled location with local delivery off is blocked here. Pickup transfers or mixed shipping-and-pickup behavior must not be applied to local delivery.
What do postal prefixes, distances and minimums mean here?
Exact postal codes and explicit trailing * or space prefixes are compared case-insensitively without spaces. Radius comparisons use your distance from each location, never a map. Country keys must match. A different radius region with neighboring regions enabled needs native review. The minimum uses your supplied comparison value, not calculated prices; equality is marked for native review.
What if several zones overlap?
Every zone is shown separately. One unblocked zone can make a location a candidate under the supplied checks even if another zone fails its minimum. Shopify documents the lowest applicable delivery price for overlapping zones; this tool calculates no delivery price.