Loading... Please wait...

Popular Brands

Our Newsletter

Usage: Bundling/Stock Module

How It Works

This module ONLY handles inventory updates (not pricing, descriptions, etc..) but for all that it's still pretty powerful.

The premise for this module is that you have products that have a specific Stock Code (SKU) that identifies that one product and allows it to be used as either:

Part of bundle of component products
eg: Set of printer cartridges for C84 printer with Parts: EP-CARTBK,EP-CARTCY,EP-CARTMAG, EP-CARTYEL


As a number of different product listings whilst still being the same physical product
For example an Epson Black ink cartridge listed as:

  • Epson C84: Black cartridge    [SKU: EP-CARTBK]
  • Epson C86: Black cartridge    [SKU: EP-CARTBK]
  • Epson D88: Black cartridge    [SKU: EP-CARTBK]

When a bundle is sold, all of the component parts are depleted according to the number of bundles sold.

Likewise when a component part is sold the module checks to see if the bundle total is affected and adjusts the inventory level for the bundle accordingly. The bundle inventory level will ALWAYS match the inventory level of the component with the lowest inventory level.

Same thing with clone/linked products... When a part is sold the module immediately updates the inventory level of all linked products.

Of course, the system is not just based on sales but also adjusts inventory levels when changes are made in the Administration system, when orders are cancelled, etc...

Neat eh? :)


Provided your variation combination has an SKU/Product-Code set then you can use those in exactly the same way as you can any other product.

For example:

"Red Hoodie" is listed as a product on its own [SKU: HOODRED]

You also have a product listing for "Hoodie" with variation "Colour":
- "Blue" [SKU: HOODBLU]
- "Red"  [SKU: HOODRED]   

Both the "Red Hoodie" and "Hoodie (Variation: Red)" have the same SKU/Product Code so the inventory is linked and will adjust together.


Bundles can also include variations in the exact same way...
eg: Bundle "Running Kit" has component parts:
- Red Hoodie [SKU: HOODRED]
- Trackie Bottoms [SKU: TRKBOTGREY]

The Red Hoodie SKU is being used by a product and a variation while the trackie bottoms could be either. The only critical bit is that the SKU/Stock Codes are correct

What Does it All Mean?

This opens up a big opportunity to break out popular products as individual product listings to see if they sell better that way (instead of as variations).

As well as improving your upselling potential by bundling stuff so your customers don't have to add a load of individual products to their cart or simply give up because it's too much effort...


This module is an inventory tracking system so it is only of any real use if you are using it with products that have been setup to keep track of their inventory.

Any products that are not set to track inventory, but used as parts/components in a bundle will be assumed to be in stock so if you run out of a component part it won't indicate this at all..

Common sense really but an important point to be aware of!

How You Use It:


  1. Make a list of the SKU/Stock Codes of your bundles component products (You can use Variation SKU's as well)

  2. Create a product listing for your Bundle giving it a title, manually setup the description, price, etc...

  3. Go to the Custom/Configurable fields tab

  4. Create a custom field with label "Parts"

  5. Input the SKU/Stock Codes for each of the component parts as a comma seperate list. eg: "EP-CARTBK,EP-CARTCY,EP-CARTMAG,EP-CARTYEL"

    TIP: You can set a quantity for each component part by using square brackets around the quantity pre-pended to the part SKU

    The code assumes a quantity of 1 otherwise.

  6. Save as normal and check that the bundle is showing the correct inventory level...



"Clone" or Inventory linked products:


  1. Choose the SKU for your product

  2. Use the exact same SKU for all clone/linked product listings

  3. Update all linked product listings

  4. Set the inventory level of one of the products
    This will set the inventory for ALL clone/linked products
  5. Check the clones have indeed matched inventory levels and resolve as required

What It Doesn't Do

Update more than just inventory in a bundle

It won't update pricing across bundles/clones, nor does it allow you to combine prices for component products in a bundle to get a bundle price.


No Error Checking or Pretty interface

The lack of a GUI (a Pretty interface helping simplify the bundle components selection process) is a big job and one that has stopped me releasing this mod until now. If I can I will get this developed and included in the future.

It also doesn't error check your Parts field although I may write some testing code so that you can at least identify possible problems. 


No Auto Rename If You Edit Products

If you edit a component product and change the SKU/Stock Code the module will not automatically update the Parts fields of any bundles that included it. It will simply not be a component part anymore.

I am aware that these could be rather big limitations but before the baying mob start swinging the pitch forks... This module was written to meet a specific requirement on a limited budget and turned into a monster that took 2 years to resolve. GUIs, error checking, clever automated system to spot changes that affect bundles, etc... all take huge amounts of time and as a result increase the costs AND PRICE.

If the interest in this module provides the incentive to resolve one or more of these issues I'll certainly look at what's feasible. Just remember I'm not a charity.