With todays tutorial and discount for the Sensei plugin and related products, we needed a quick way to offer people a discount when they purchased the whole bundle (containing Sensei, a premium theme and the Subscriptions extension for WooCommerce). Of course, we have plugins already available that do this, for example the Product Bundles extension or with a possibly minor modified version of the Dynamic Pricing extension.
But what we were really looking for, was a lot simpler. All we wanted was a coupon, that checked if all products belonging to a bundle like set are in the cart and then apply a specific discount on it. We decided to write a small plugin for it, which turned out to be so useful for other people, that I’ve made a generic version out of it and released it for free in the plugins repository: WooCommerce Bundle Style Coupons.
WooCommerce Bundle Style Coupons
So how does it work? I’m a big fan of decisions over options, so this plugin is restricted in what features it offers. Yes, this makes the plugin relatively small, but that’s an advantage in my opinion. I rather have a couple small plugins in my website that each do a specific task and do it good, compared to one big fat plugin that tries to do everything but fails while trying. This plugin only does one thing.
The only new option is found when adding or editing a coupon, “Bundle coupon” is a simple checkbox. The description of the checkbox basically says it all: “Only apply this coupon when all products that his coupon applies to are in cart.”:
Once that box is checked, the selection of products that this coupons contains (using the stock selection field, where you select what products this coupon applies to) also becomes the definition of the ‘bundle’. Say you have a group of products that you have a coupon for and only that group of products should get a discount when that coupon is used. It’s likely that you’ve made a coupon and added those specific products to the ‘Products’ field, so those are the only products to receive the discount.
If you want to apply that discount only when all of those products are in the cart, so the ‘bundle’ is complete, you simply check the “Bundle coupon” checkbox and that will be added as an extra conditional. Customers that have only 3 out of 4 products in cart do not get a discount, only when the full bundle is added to cart.
So why a new plugin, you ask?
At first we thought of using a plugin that already exists for this job, but most of them were too complicated for the job (in a good way). For the Product Bundles extension for example, we needed to make a new product page template to fit the new product type (because we have highly customised templates for our products, the extension also comes with a default one, which works in most cases). We also currently have no place to highlight product bundles in our product catalog archives.
This new plugin requires nothing like that, it’s much easier to implement and does only one thing. Maybe one day, we’ll start using the real Product Bundles extension, but for now this one does the job pretty well.
So go download the WooCommerce Bundle Style Coupons plugin now. I’d love to hear what you think about the plugin, but please use the plugins support forum for support related questions. You can see what I’m doing and find the development version in the GitHub repository, contributions and bug reports are always welcome.