A way to not allow a product to be purchased without also purchasing another specific product?

One of my clients owns a yarn store, and one of her suppliers sells both yarn and pattern booklets. She has just been made aware of a rule which states that pattern booklets are not allowed to be sold without also purchasing some of the brands yarn.

Is there a way for this to be actioned within Shopify, before the customer places an order and then has to be refunded? Open to apps etc. So for example someone goes to purchase just a pattern booklet, they wouldn’t be allowed to go ahead with the sale until they had also added in some yarn from the brand.

I will be updating every listing with this information, but customers definitely don’t always pay attention to that, and we’d quite like to cut down on the admin required from her small shop team.

Hello @getbacktoyou ,

With custom code we can do this.
Idea is:
Create a metaield for product from where admin can select a specific product.
This option will help us to create a rule.
e.g.
For product brands yarn we select product pattern booklets

Now in the frontend first we check if there is any rule available for this product or not.
If available then on click of that atc we check the cart values. Is the required prudent available in cart or not.
If available then atc will perform its default action else we can show a custom message.

Thanks

Hi, @getbacktoyou. I made an app that does exactly this: if someone is trying to buy a pattern booklet, they must also buy yarn. Enforcement happens before the sale completes, so your client will avoid any messy refunds. The app is called CartGate, and full disclosure, the rule I’m about to mention is on the Pro plan ($9/month, free trial).

If your client was to use CartGate to accomplish what you want, they would install the app, make a new restriction, and select “require an accessory to be bought with the product it goes with.”

Then, at the rule configuration page, set the pattern book as the accessory, and yarn as the base. I used a single yarn product as an example, but it also works with tags and collections, so you could easily say “ANY yarn fulfills the requirement”.

.

Once you’ve saved the rule, you’re done! Any time someone has a cart with the pattern book but without the yarn, they’ll be prevented from checking out with a helpful message.

Again, the app is called CartGate. I hope this helps :).