Making one product collection-only
There is no "collection only" checkbox on a product in Shopify, because pickup is something you switch on for a location rather than something a product carries. There is a native way to get the same result, and it takes a minute — but what happens to the rest of the basket is the part worth reading before you promise a customer anything.
There is no pickup-only setting on a product, and looking for one will waste your afternoon. In Shopify, collection is something you turn on for a location — "In the Location status section, activate the Let customers pick up orders directly at this location option." A product has no equivalent switch, so nothing on the product page says "this one cannot be posted".
What you can do is take shipping away from that product, and Shopify does it natively. Put the item in its own shipping profile with a zone and no rates in it. Shopify's own support describes the result plainly: "You should only see the option for local pickup and no options for shipping through postal mail." No app, no rule, no code.
A rule of your own does the same thing conditionally — hiding, reordering or renaming delivery options — and that only earns its keep when the condition is more than "this product": only when the basket is also over 30 kg, only for the Vantaa shop, only outside opening hours.
And here is the part that decides whether it works for you: the other things in the cart.
The mixed cart problem
Somebody puts your collect-only item in a basket with three normal things. What should happen?
Shopify's own pages disagree here, so read both. Its general pickup page says a customer "can choose to have some items shipped and some items picked up in the same order". The page that governs that feature says this:
"Ship and pickup in one order is available only as a feature test drive for organizations on the Shopify Plus and Enterprise plans. The feature will release for all organizations on Shopify Plus on July 1, 2027."
And Shopify's support has described the older behaviour just as plainly: "If a customer wants to purchase one of these pickup only items then their entire order must be pickup only as well."
So unless you are on Plus or Enterprise, plan for the second: an order is either collected or shipped, not both. Take shipping away because of one item and the whole basket becomes a collection, including the things the customer wanted posted. The likely outcome is not a tidy pickup; it is an abandoned cart.
Two more rules make this sharper:
- "By default, pickup in store is available only when the entire order is in stock at the pickup location." Read "by default" carefully: if you run several locations you can set up store transfers, and then items that have to travel "are displayed as available for pickup, with an adjusted estimated pickup time". Without transfers, one item missing from that shop means collection does not appear at all — and if you have taken shipping away, the customer now has no delivery method whatsoever.
That empty-checkout state is the real risk of the obvious fix. A shopper who reaches checkout with nothing to choose sees a generic message and leaves. If you do this, try to change that message to say what is actually happening — Shopify lists it under checkout text, though at least one merchant has reported editing it without the live checkout changing, so test it rather than trust it. The difference matters: "something is broken" versus "this item is collection only".
One product that cannot be posted? Describe what should happen to the rest of the basket →
What to do instead, depending on the shop
If the collect-only item is usually bought alone — a bulky one-off, a hazardous item, something perishable — the shipping profile with no rates is the right answer, and the mixed-cart case is rare enough to handle by hand when it happens.
If it is often bought alongside other things, taking shipping away will cost you more orders than it saves. Two calmer options:
- Say it on the product page and let them choose. Most shoppers do the right thing when told before they are invested. It costs you the occasional wrong order, and those you can convert to a pickup with a phone call.
- Split the basket by selling it as its own order — a note at the top of the product page asking for it to be ordered separately. Crude, and honest about a limit your storefront cannot enforce.
If you are on Plus or Enterprise, mixing ship and pickup in one order is available now as a test drive, and it removes most of the problem: each line picks its own method. Its own limits are worth knowing — "Each order can have only 1 pickup location selected", pick-up points and local delivery are not supported in a mixed order, and the choice cannot be made on the product page or in the cart, only at checkout.
Which route is yours
| Your situation | What to do |
|---|---|
| The item is nearly always bought alone | Native — its own shipping profile with no rates |
| The same, but only under a condition of yours | A checkout rule that hides delivery options |
| It is bought alongside shippable things, and you are on Plus | Ship-and-pickup in one order — each line chooses |
| Same, and you are not on Plus | Tell them on the product page; do not hide anything |
| You want collection offered at all | Native — turn it on for the location |
| Collection for some products at some shops | Not native per product — stock placement is the nearest thing |
What Shopivibe does
Start with the native route above — if "this product is never posted" is the whole rule, a shipping profile with no rates does it and nothing here improves on that.
Where a rule earns its place is when the condition is not simply the product: "the workbench is collection only from the Vantaa shop, and if there is anything else in the basket, say so before they reach the checkout."
What you get is the outcome: the delivery choice matches what you can actually do with that basket, and the customer finds out early rather than at the last screen.
Two things to say plainly. This is built for you, not switched on — a person here takes it on straight away and has it working in your store within 24 hours. And the mixed-cart limit is Shopify's, not ours: until ship-and-pickup reaches your plan, no rule anybody writes can post half a basket and hold the other half.
And this is a page that will change, because that limit has a published date on it.
Shopivibe solves the problem in your store and keeps what it adds maintained, including when Shopify changes something underneath. Shopivibe is free during early access, with 3,500 credits included. Credits beyond the included 3,500 cost $0.06 each.
Know which items cannot be posted? Describe the rule you need →
Checked against Shopify's documentation and the App Store on 21 September 2026.