How to Prevent Products from Being Sold Outside Mix and Match Bundles
TL;DR: To sell a WooCommerce product only inside a Mix and Match bundle, install the free Not Sold Separately for WooCommerce extension, edit the product, and tick Not sold separately on the Inventory tab. The product’s Add to cart button disappears on its own page, but the product stays fully selectable inside any Mix and Match container.
Say you sell a build-your-own soda pack. You want customers to choose four to twelve flavors and check out as one pack, but you don’t want anyone buying a single can of Apple Soda on its own. Mix and Match handles the pack itself. On its own, though, nothing stops a shopper from landing on the Apple Soda product page and adding one to the cart for $3.
We have a small, free companion extension for Mix and Match that allows you to restrict items to be purchased only within bundles. All at the flip of a single checkbox. The product stays available inside your containers and disappears as a standalone purchase, so your catalog only ever sells the bundle you intended.
What you’ll need
- WooCommerce with Mix and Match Products installed and active (version 2.0 or newer)
- The free Not Sold Separately for WooCommerce extension (we install it in Step 1)
- At least one product that already belongs to a Mix and Match container
Note: Not Sold Separately is a free companion extension, maintained by Mix and Match’s developer on GitHub and distributed separately from the core plugin. Because it’s a free add-on rather than part of the paid plugin, treat its updates and support as best-effort.
Step 1: Install the Not Sold Separately extension (~3 minutes)
The extension is free and lives on GitHub rather than the WordPress.org directory, so you install it from a downloaded file.
- Open the Not Sold Separately releases page and download the latest release
.zip. - In your WordPress admin, go to Plugins → Add New → Upload Plugin.
- Choose the
.zipyou downloaded and select Install Now. - Select Activate.
That’s the whole install. The extension adds one setting to your products and changes nothing else until you use it.
Tip: To receive automatic updates for this extension, install the free Git Updater plugin. Without it, you update by uploading a newer release
.zipthe same way you installed the first one.
Step 2: Mark a product as not sold separately (~1 minute)
- Go to Products and open the product you want to restrict.
- In the Product data box, select the Inventory tab.
- Tick Not sold separately. The description reads, “Enable this if this product should only be sold as part of a bundle.”
- Select Update.

For a variable product, you set this per variation. Each variation row in the Variations panel has its own Not sold separately checkbox, so you can restrict one variation while leaving the others on sale.
Step 3: Confirm it on the storefront (~2 minutes)
Open the product’s page on your store as a customer would see it. Two things change.
First, the Add to cart button is gone. In its place, the product shows a line of text and links to the bundles it belongs to:
This product is not sold separately, but may be purchased as part of the following products:

The extension lists up to three containers that include the product, so customers always have a clear path to buy it as part of a bundle.
Second, the product still works exactly as before inside your Mix and Match containers. Open one of the bundles it belongs to, and the product is right there in the picker, ready to add to the pack:

If a restricted product somehow ends up in a cart on its own (for example, from an old session or a saved link), the extension removes it at load and shows a notice explaining it cannot be purchased separately. Your customers can’t check out with a standalone item you’ve restricted.
How it works
When you tick Not sold separately, the extension marks the product as not purchasable on its own (is_purchasable becomes false), which is what removes the Add to cart button. It then makes one exception: when the same product is offered inside a Mix and Match container, it’s treated as part of that container and stays fully available. For variable products, the restricted variation is hidden from the variations dropdown rather than shown without a buy button.
The product itself stays published. It still appears in your shop catalog and search results, because the goal is to control how it’s sold, not to hide it.
Frequently asked questions
Does this work with variable products?
Yes. Variable products get a Not sold separately checkbox on each variation, in the Variations panel. A restricted variation is hidden from the variations dropdown on the product page, while any variations you leave unrestricted stay on sale as normal.
Will the product still work inside my Mix and Match bundles?
Yes. Restricting a product only blocks standalone purchases. Inside any Mix and Match container that includes it, the product appears in the picker and can be added to the container exactly as before.
Is the extension free?
Yes. Not Sold Separately for WooCommerce is GPL-licensed, and you download it free from GitHub. You install it by uploading the release .zip under Plugins → Add New → Upload Plugin.
Does it hide the product from my shop pages?
No. The product stays published and still shows in your catalog and search. The extension removes the Add to cart button on its own page and replaces it with links to the bundles that include it. Only individual variations of a variable product are hidden from view.
How is this different from the “Sold individually” setting?
Sold individually limits a product to one unit per order but still sells it on its own. Not sold separately removes standalone purchasing entirely, so the product is only ever bought as part of a bundle. The two settings sit next to each other on the Inventory tab.
Does it work with WooCommerce Product Bundles or Composite Products?
The extension officially supports Mix and Match containers. If you run Product Bundles or Composite Products as well, test the behavior on a staging site before relying on it in production.
What’s next?
- Using Categories vs. Individual Products in Mix and Match: decide how to populate your containers
- How to Set Up Your First Mix and Match Product: the full container walkthrough
- Variable Products in Mix and Match: What Works and What Doesn’t: if your restricted products use variations
That single checkbox changes how your store reads to customers: you sell the bundle, not the loose parts that make it up. If you haven’t built your containers yet, start with Mix and Match Products, then add this extension once they’re in place.