PickupLock

Why Shopify local pickup rules appear not to work

When a restriction appears ineffective, separate three layers: Shopify must offer the right underlying method, PickupLock must evaluate the cart, and the storefront warning must be configured independently.

1. Confirm the delivery method exists

PickupLock can hide existing methods but cannot create a pickup location, local-delivery area, shipping zone, or carrier rate. Test the same checkout without restrictions and confirm Shopify offers the method you expect.

2. Check Delivery Customization status

Open Setup Health and confirm the PickupLock delivery customization is present and enabled. A customization that exists but is disabled must be shown as disabled, not treated as active.

3. Confirm the product actually matches

For manual rules, verify the exact product is selected. For dynamic rules, verify the current collection membership, tag, vendor, or product type. A zero-match rule is valid configuration but provides no active coverage.

4. Test the whole cart

Remove unrelated items, test the restricted product alone, then add normal products back one by one. PickupLock uses restrictive intersection, so a valid method must satisfy every active restriction. Conflicting rules can remove more methods than expected.

5. Check destination-country conditions

A country-specific rule does nothing when checkout resolves a different destination country. Test one matching country and one non-matching country in Simulator and checkout.

6. Separate Cart Warning from checkout protection

The Cart Warning is an optional theme extension that explains restrictions before checkout. It can be missing or disabled while the checkout Function still works. Conversely, a visible warning is not proof that the delivery customization is enabled.

Use Setup Health first. It can identify disabled or missing customizations, theme setup gaps, stale dynamic state, failed materialization, deleted collections, and pending cleanup without silently changing the shop.

7. Check custom method matching

If a reusable advanced rule allows only selected method names, compare it with the actual checkout titles. Test language variants and carrier-generated titles. Prefer a broader built-in delivery type when exact title matching is not necessary.

8. Reproduce safely in Simulator

Use the same products, destination, and method titles as the failing cart. The trace identifies the rule behind each result. If Simulator and checkout disagree, record the exact inputs and contact support instead of weakening the rule.