Dynamically update "Requires Shipping" in cart?

4 0 1

Hello there,


We're trying to figure out if there's a way to dynamically update all items in cart to set a product/variant's "Requires Shipping" to false within the cart. Basically we want to allow customers to do in-store pickup, and we want to remove the Shipping Address field from the checkout. Ideally if a user clicks a radio/checkbox on the cart page that says "In-store pick up", it will automatically set all items in the cart to not require shipping (maybe something involving variant.requires_shipping?). 


Other methods we've explored:

  • Zapiet's "Store Pickup + Delivery" App: unfortunately too expensive, and the in-store pickup just renames "Shipping Address" to "Pick Up Address" which a user can then edit (not detrimental per say, just not ideal)
  • Creating separate variants for each product, where some are called something like "PICK UP ONLY – Product X": This is less than ideal UI as a user could easily pick the wrong variant, get to the cart and realize their mistake, and instead of going back to the product, may just abandon the cart
  • Shopify Plus allows checkout editing: definitely out of price range
  • Just having all products require shipping, and forcing a user to enter their shipping info even if they want pick up: still not a great user experience, but also Occam's Razor

One other thought is to have the Checkout Shipping address automatically populated with our store address if a user checks Pick-up in the cart. Still not ideal (may create confusion to user) but also might be relatively easy to do. We haven't been able to see if this is possible though in our research.

1 Like
New Member
1 0 0

Hi there,

We chose to go with option 4 - customers need to enter their shipping address, but then when passed to the next page, they can choose "Collect from store" which is a free shipping option. This way, they can see the saving they are making by collecting the item.