First, let’s clarify our meaning of the term “bundle”. Mothers consider their newborns “little bundles of joy”. Drupal developers feel giddy when they create a new “bundle of fields on an entity type”. Today, however, we’ll be looking at a far more sinister definition; the one used inside the marketing dept. i.e. product bundles.
I imagine the idea of product bundles originated somewhere in Ancient Egypt during the reign of the Pharaohs. It likely occurred when an engineer in the Mummification department who was struggling to come up with new product ideas decided to swing by the Marketing department for some friendly banter.
Marketing Manager: “Greetings Amun. How’s it going?”
Engineer: “Not so well. I’ve got His Royal Pain-in-the-Butt Tutankhamun breathing down my neck to increase our product line. I’ve told him a thousand times that making mummies only requires three things 1. gauze wrap, 2. embalming fluid, and 3. a nasal brain extractor. What am I to do?!”
Marketing Manager: “Now I’m just spitballing here, but since you’re so good at wrapping, heh heh, why not just wrap all three of those products up, and sell them together as a new product? You know, a DIY mummy kit.”
and the world was given product bundles.
Now we’re happy to announce that Drupal Commerce sites can offer their customers product bundles in the form of the Commerce Bundle module. Some notable features of the module are:
Product attribute support
Let’s say that one of your products are all the boondoggle keychains you made at scout camp. They come in a variety of sizes and colors (i.e. attributes), and now you want to bundle them with your Three Wolf Moon t-shirts that have attributes as well. Commerce Bundle will generate select widgets for each attribute per product in your bundle, so that a customer can choose the exact bundle configuration they desire.
Bundle pricing at the product level
This gives you complete control over the price of each item in your bundle. For example, you might have created a bundle containing your illustrations of mythical creatures. You’d like to sell the colored illustrations for $5 more than the black and white. In this case, just set the bundle item price for colored to the desired amount, and you’re all set. This also means that the total bundle price is determined by the sum of the item prices.
Multi-quantity product support
Maybe your keychain/t-shirt bundle isn’t selling so well, and you’d like to sweeten the deal by adding a second keychain for free! This can be done by setting Unit Quantity=2 for your keychain group. The unit quantity tells commerce_bundle how many of a particular product is required when bundle quantity equals one.
Bundles function at the line item level
Your bundles really only act as a bundle on the Add to Cart form and when a customer is managing their cart (i.e. removing bundles, changing quantity). Once checkout begins, there is no concept of a bundle, just a group of line items in a cart. This means that the module will play nice with other modules in the Drupal Commerce ecosystem e.g. Commerce Reports.