There are situations where you want a product to stay on your storefront — browsable, searchable, shareable — but not purchasable through the widget. Common examples:
- A product line that is temporarily out of allocation, but you want shoppers to see it is part of your catalogue.
- A discontinued or end-of-life SKU that should stay listed for reference and search engine visibility.
- A SKU restricted to quoted, B2B, or call-for-price purchase paths, where the standard Buy button should not appear.
- Display-only or showcase items that customers should be able to view but not order online.
This page describes how the Weevio widget decides whether to show the Buy button, the supported ways to switch it off for a single product, and what your customers see when you do.
How the Widget Decides Whether to Show the Buy Button
When the Weevio Shopify Product Page Widget loads on a product page, it reads the product's availableForSale flag from Shopify. This is a Shopify-managed value: it is true when at least one variant can be sold from your online store, and false when no variant can be sold.
- When the product is available for sale, the widget renders the Add to Cart button as normal.
- When the product is not available for sale, the widget disables the button, changes its label to Unavailable, and shows the message "This product is currently not available for sale." beneath the Buy area.
Because the widget honours this flag automatically, anything that makes a product unsellable in Shopify will also hide the Buy button in the Weevio widget. You do not need to install or enable anything extra — you just need to configure the product correctly in Shopify (and PIMS, if you use PIMS Sync).
When to Use This vs. Removing the Product
Choose the approach that matches what you want shoppers to be able to do:
| Goal | Recommended Approach |
|---|---|
| Keep the product page reachable, but stop people from buying it | Make it unavailable for sale (this page) |
| Remove the product from your storefront completely | Set the product status to Draft or Archived in Shopify, or remove it from the Online Store sales channel |
| Hide a product only from cross-sell suggestions | Use the cross-sell visibility rules — those rules do not affect the main Buy button |
| Restrict purchasing to logged-in B2B customers only | Combine the widget with an access control app such as the third-party tools described in Customer Portal users and accounts |
Making a Product Unavailable for Sale
To switch off the Buy button on a single product while keeping the product page browsable, you need Shopify to report that the product is not available for sale. There are two supported paths, depending on whether your stock is managed through PIMS Sync.
Path A — Zero stock and disable "continue selling"
This is the most reliable path and works whether or not you use PIMS Sync.
Open the product in Shopify Admin
Go to Products in Shopify Admin and open the product you want to make unbuyable.
Turn off 'Continue selling when out of stock'
For each variant on the product, open the variant editor and uncheck Continue selling when out of stock in the Inventory section.
By default, products created by the Weevio PIMS Sync have this option enabled, so you will need to switch it off explicitly for the products you want to make unbuyable. See Inventory Sync for the full field mapping.
Set the available quantity to 0 at every location
Still in the variant editor, set the available quantity to 0 at every location that holds stock.
If the product carries real stock in PIMS, the next sync will normally push that count back into Shopify. To prevent that, use the Excluded Sub-Locations panel to omit the sub-locations whose stock should not be counted toward the storefront quantity.
Confirm on the storefront
Reload the product page. The widget's Buy button should now appear greyed out and labelled Unavailable, with the message "This product is currently not available for sale." beneath it.
Note:
Why both steps matter. If "Continue selling when out of stock" is left on, Shopify treats the product as sellable even with no stock, and the widget keeps the Buy button active. If quantity is greater than zero anywhere, the product is sellable regardless of the "Continue selling" setting. You need zero stock and "Continue selling" switched off for the Buy button to disappear.
Path B — Theme rule based on a product tag or metafield
If your stock-handling rules are complex — for example, you want a SKU to remain in PIMS with real inventory but never be sold through the storefront — the cleanest option is a small theme customisation that conditionally hides the widget based on a product tag or metafield.
This is the recommended path for quoted-only, call-for-price, and B2B-only SKUs that should still appear in browse and search but should never present the standard Buy button.
Add a tag to the product in Shopify
On the product in Shopify Admin, add a tag such as weevio-purchase-disabled. The exact name is up to you, because this is a theme-level rule rather than a tag the Weevio widget reads. Tags work well because they are editable and searchable from the Shopify Admin.
Wrap the widget snippet in a Liquid condition
In your Shopify theme, locate the snippet where the Weevio widget is installed (usually inside sections/product.liquid, sections/main-product.liquid, or a custom section — see the installation guide).
Wrap the widget container in a Liquid block keyed on your tag. For example:
{% unless product.tags contains 'weevio-purchase-disabled' %}
{% comment %} Weevio Product Page Widget {% endcomment %}
<div id="weevio-widget"></div>
{% else %}
<p class="weevio-purchase-disabled-note">
This product is not currently available for online purchase.
Please contact us for pricing and availability.
</p>
{% endunless %}
Save and publish
Save the theme change and publish it. Products with the tag will show your replacement message instead of the widget; products without the tag continue to render the widget as normal.
Note:
Do not reuse the cross-sell tag namespace. The weevio.product.widget.cross_sell.hide tag controls visibility in the cross-sell modal only — it does not affect the main Buy button on the product page. Pick a distinct tag name for your purchase-availability rule.
What Your Customers See
When a product is unavailable for sale, the Weevio widget behaves like this:
- The Add to Cart button is replaced with a greyed-out button labelled Unavailable.
- A short message appears beneath the button: "This product is currently not available for sale."
- Variant cards still display if the product has multiple variants, but selecting a variant does not enable the button.
- The rest of the product page — images, description, breadcrumbs, related content — continues to work normally, so the page stays useful for browsing and sharing.
- The product can still appear in collection listings, search results, and direct links, because making it unavailable for sale does not delist the product.
Interactions with Other Widget Features
Cross-Sell
Purchase availability and cross-sell are independent: making one product unbuyable does not change whether it appears as a cross-sell suggestion on another product. If you want a product to stop appearing as a cross-sell on top of being unbuyable, add the appropriate cross-sell visibility rule as well — those rules are evaluated separately.
In-Stock Recommendations
When a customer lands on an unavailable product, the widget's In-Stock Recommendations feature continues to surface alternative variants and products if any are configured and in stock. This is intentional — the goal is to keep the shopper engaged with a buyable alternative when the item they were looking at cannot be ordered.
Inventory Sync
If the product is managed by PIMS Inventory Sync, the synced on-hand count will normally overwrite any manual quantity changes you make in Shopify. To keep a product at zero available stock for purchase-availability purposes while it still exists in PIMS, exclude the relevant sub-locations from the sync using the Excluded Sub-Locations panel.
B2B Pricing
B2B Pricing and purchase availability are independent. A product can be unavailable for sale to everyone, regardless of any B2B pricing rules configured for it. If you want to restrict purchase to specific customer segments rather than disable it for everyone, pair the widget with a third-party access control app instead of using the steps on this page.
Current Limitations
- The Weevio widget does not currently provide a built-in product tag (for example, a
weevio.product.widget.purchase.disabledtag) for switching the Buy button off without going through Shopify's stock and "continue selling" settings. If a tag-based equivalent of the cross-sell visibility system would help your workflow, contact your Weevio account manager so the use case can be prioritised. - The PIMS field Don't Adjust On-Hands turns off inventory tracking in Shopify for the affected product, which makes the product always available for sale regardless of stock. It is not a way to disable purchasing — see the Inventory Sync field mapping for the full behaviour.
See Also
How PIMS quantities flow into Shopify, and how to exclude sub-locations from the synced total.
Hide products from cross-sell suggestions using product and customer tags.
Custom styling, conditional loading, and theme-level configuration of the widget.
Need Help?
For assistance, please send a message to our Support page.