Installation ↑ Back to top
- Download the .zip file from your WooCommerce account.
- Go to WordPress Admin > Plugins > Add New.
- Click Upload Plugin at the top.
- Choose File and select the .zip file you downloaded in Step 1.
- Click Install Now and Activate the extension.
Getting Started ↑ Back to top
Creating Bundles ↑ Back to top
To create a product bundle:
- Go to Products > Add New.
- Select the Product Bundle type in the Product Data panel.
- Go to the Bundled Products tab.
- Click Add Product and use the search field to find and add products to the bundle. Repeat as many times as needed, each time clicking on a search result to add it.
- Publish to save.
Every product you add under the Bundled Products tab has a dedicated set of options that allow you to control various parameters, such as its minimum and maximum quantity. These options are explained in Bundled Product Settings.
Note that it’s possible to bundle multiple instances of the same simple or variable product. This creates many possibilities — for example, you can bundle together multiple variations of the same variable product.
Product Bundles in the Cart ↑ Back to top
When a bundle is added to the cart, it creates:
- A parent line item.
- Some child line items grouped under it — one for each bundled item.
This approach makes it possible to define a base price for an entire bundle, and/or to preserve the prices and tax rates of individual bundled items when needed.
Pricing ↑ Back to top
The Product Bundle type allows you to:
- set a base price for entire Product Bundles; and/or to
- preserve the prices of individual bundled products.
Setting a Base Price ↑ Back to top
To set the base price of a bundle:
- Go to Products > All Products and select the bundle you wish to edit.
- Select the General tab in the left menu.
- Enter a Regular Price and if needed, a Sale Price.
If you only set a base price for a bundle, its configuration will have no effect on its price.
Preserving Bundled Item Prices ↑ Back to top
To preserve the price and tax rate of a bundled product:
- Locate the bundled item under Product Data > Bundled Products.
- Tick the Priced Individually box in the Basic Settings section.
When Priced Individually is enabled, it is also possible to define a % Discount. Discounts provide an incentive for purchasing items in bulk and/or purchasing optional “add-ons”, such as accessories.
Notes ↑ Back to top
Bundled Products With Empty Prices
All products contained in a bundle must have a price set, even when Priced Individually is disabled. WooCommerce does not allow products with a blank price to be purchased.
Controlling the Visibility of Bundled Item Prices
When Priced Individually is enabled, the bundled product price is visible in i) the product details page of the bundle, ii) the cart and iii) order details by default. To change this behavior, use the Price Visibility options found in the Advanced Settings tab.
Individual Pricing and Cart/Order Totals
When the Grouped selection is active under Item Grouping, the subtotal displayed next to the parent cart/order item includes the subtotals of any individually-priced child items. This behavior can be changed with this snippet.
Bundling Subscription Products
When a Subscription product is added to a bundle, the Subscription product must be Priced Individually if you would like a subscription to be created. Otherwise, the Subscription product will be treated as a one-time purchase.
Shipping ↑ Back to top
Introduction ↑ Back to top
From a shipping perspective, WooCommerce products are classified as:
- Physical (non-virtual) — products that need to be physically shipped or picked up.
- Virtual — services or digital items that do not require shipping.
Product bundles can contain both physical and virtual products. However, their most significant shipping property is whether they require assembly or not. Consider this example:
Therefore, from a shipping point of view, physical bundles are classified as assembled or unassembled:
- Assembled bundles consist of multiple products that are physically assembled in a common container.
- Unassembled bundles group together some products that do not require assembly.
Configuration ↑ Back to top
To configure a bundle for shipping, follow these steps:
- Determine if the bundle you are creating is an assembled, unassembled, or partially assembled one:
Bundles that consist of Virtual products fall into the Unassembled category.
- Assembled bundles, such as the build-to-order Woo Basic PC we saw earlier, are shipped in a single box.
- Unassembled bundles are collections of products that do not require assembly. Their shipping properties (weight, dimensions) are preserved.
- Partially assembled bundles have a common physical container. Some bundled items are assembled in it, and some are shipped in their original boxes.
- Navigate to the Shipping tab in the left menu, and choose a Bundle Type. There are two options to choose from: Assembled or Unassembled. If your bundle is a partially assembled one, choose the Assembled option at this point.
- If you selected the Assembled option in the previous step, go on and configure the Weight, Dimensions and Shipping Class of the common container.
If your assembly has a static weight, choose the Assembled Weight > Ignore option. If you prefer to calculate its weight dynamically, choose the Assembled Weight > Preserve option. When Preserve is selected, the Weight field is treated as a container weight, and the weight of the assembly is calculated by adding:
- the specified container Weight; and
- the weight of all assembled bundled items.
- If your bundle is partially assembled, go to the Bundled Products tab and enable Shipped Individually for every bundled product that does not require assembly.
Notes on External Order Fulfillment, Shipping and Inventory Management Services
The shipping configuration options of the Bundle type allow shipping methods and other business logic that relies on the WooCommerce Shipping API to calculate shipping costs accurately.
WooCommerce gives developers a lot of flexibility to customize the shipping properties of the items contained in the cart: When you add an assembled bundle to the cart, it is seen by WooCommerce as a single physical item with an aggregated value and weight. Shipping costs are calculated based on this physical representation.
However, this flexibility is not preserved when working with order data. If you are using an external fulfillment, shipping, or inventory management service that reads order data from WooCommerce, please be aware that an assembled bundle may not be imported as a single item.
Bundled Product Settings ↑ Back to top
Every product you add under the Bundled Products tab reveals a dedicated set of options. These are divided in two tabs: Basic Settings and Advanced Settings.
Basic Settings ↑ Back to top
Min Quantity and Max Quantity — Used to define an allowed quantity range for the bundled product: Customers are able to choose any quantity within the specified min/max range. Leave the Max Quantity field blank for an unlimited maximum value.
Optional — When enabled, customers may choose whether to include the bundled product in their bundle or not.
Filter Variations — Makes it possible to make specific variations available for purchase. Applicable to variable products only.
Override Default Selections — Used for overriding the pre-selected attribute values of bundled variable products.
To add a single variation to a Bundle without requiring customers to choose attributes, Filter Variations must be used in combination with Override Default Selections:
- Enable Filter Variations and search for a variation, then add it.
- Enable Override Default Selections and choose specific values for all variation attributes. This step is necessary if you want to hide the attribute selection drop-downs of this bundled product — even if the active variation is already mapped to specific attribute values.
Priced Individually — Adds the price of the bundled product to the base bundle price. With the option enabled, a Discount can be defined. Both options are documented in the Pricing section.
Shipped Individually — Controls how the bundled product is shipped in relation to the entire bundle (assembled or unassembled) when Bundle Type > Assembled is chosen under Product Data > Shipping. Documented in the Shipping section.
Advanced Settings ↑ Back to top
Visibility — Controls the visibility of the bundled product: i) in the single product page of the bundle, ii) in the cart/checkout pages, and iii) when displaying order details (including order details displayed in e-mail notifications).
Marking a bundled product as hidden in the order/e-mail templates will not prevent payment gateways from listing it in their transaction details archives and customer notification e-mails.
Price Visibility — Controls the visibility of the bundled product price: i) in the product details page of the bundle, ii) in the cart and iii) when displaying order details. Applicable when Priced Individually is ticked.
Override Title and Override Short Description — Used for modifying or hiding the original titles and/or short descriptions of bundled products. Note that overridden product titles will replace the original product titles in all template locations, including the cart/checkout and order details.
Hide Thumbnail — Controls the visibility of bundled product thumbnails, displayed by default when viewing the single-product details page of a bundle.
Layout ↑ Back to top
The Layout option controls the appearance of bundled product details in single-product pages. There are 3 alternatives to choose from: Standard, Tabular and Grid.
Form Location ↑ Back to top
Most WooCommerce-compatible WordPress themes default to a two-column product page layout: The first column contains the main product image and gallery, while the second one is reserved for product details and options. This space-conserving approach works well for Simple and Variable products, which usually contain only a few form elements.
Product Bundles tend to have busier forms that require multiple steps/interactions to complete. Sometimes you may find that your theme’s two-column layout makes Product Bundles look space-constrained and hard to interact with. Some themes may allow you to modify the layout of individual product pages to display product details and options in a single column. For example, if you are using Storefront, the Storefront Powerpack plugin includes options for:
- allocating more width to product form content, or
- stacking product form content below the main product image and gallery.
If you are experiencing layout issues with a Product Bundle and your theme does not provide any per-product layout options:
- Navigate to Product Data > Bundled Products.
- Locate the Form Location option.
- Choose Before Tabs to stack form content after the product image and summary.
In most cases, choosing Before Tabs will allocate the entire page width to the form contents of your Bundle.
Item Grouping ↑ Back to top
The Item Grouping option controls the visibility and indentation of parent/child line items in cart/order templates:
Grouped — Bundled items in cart/order templates are grouped under a parent line item named after the product bundle itself. Bundled items are indented and bundled item quantities are kept in sync with the quantity of their parent. Must be selected when creating assembled bundles and/or bundles with a base price.
Flat — Similar to Grouped, however instead of being indented, bundled cart/order items include a reference to the bundle they belong to.
None — Hides the parent item in all cart/order templates. Bundled cart/order items include a reference to the bundle they belong to. Makes Bundles resemble Grouped Products in all customer-facing templates.
- The Unassembled Bundle Type needs to be selected under Product Data > Shipping.
- The Regular/Sale Price fields must be blank.
- At least one bundled item must be Priced Individually.
Bundle Size ↑ Back to top
With Product Bundles, you can create and sell personalized bundles with a fixed or variable number of “slots”, such as cases of wine, six-packs of soap, or candy boxes.
To create a pick-and-mix bundle, use the Min Bundle Size and Max Bundle Size options to define the minimum and/or maximum quantity of products that customers must choose to purchase their personalized bundle.
Cart Editing ↑ Back to top
Configurable bundles, such as the Bulk Discount Deck Pack bundle, can be edited from the cart page by enabling the Edit in Cart option.
When Edit in Cart is enabled for the Bulk Discount Deck Pack bundle, an additional “Edit” link is appended to its title in the cart. Following this link allows you to reconfigure the bundle using its current configuration as a starting point. When finished, click Update Cart to replace the configuration in your cart with the new one.
Bundle-Sells ↑ Back to top
You have probably seen bundle-sells before: Much like a cross-sell, a bundle-sell is an offer to purchase a helpful add-on along with the currently viewed product.
Compared to cross-sells, bundle-sells are easier to discover and convert immediately. This makes them ideal for recommending optional items that are:
- frequently bought (and tightly coupled) with the viewed product;
- lower in cost; and
- usually high in margin.
Product Bundles lets you add bundle-sells to any existing product:
- Go to the Products admin page.
- Edit a product that you consider a good candidate for offering bundle-sells.
- Go to Product Data > Linked Products and locate the Bundle-sells field.
- Search for an optional product to recommend and add it.
- Repeat, if needed.
- Enter a Bundle-sells title below, e.g. “Frequently Bought With…”.
- Optionally, to provide an extra incentive, enter a Bundle-sells discount.
- Remember to Update the product to save your changes.
Need to offer a Variable product as a Bundle-sell of a Simple product? There is a workaround:
- Convert the Simple product to a Product Bundle.
- Go to Product Data > Bundled Products.
- Add the Variable product.
- Tick the Optional, Priced Individually and Shipped Individually boxes.
Managing Inventory ↑ Back to top
The sale of a product in a bundle has the same effect on its stock as an individual sale. If the stock quantity of a bundled product drops below the minimum quantity specified in the bundle, then the bundle appears with an Insufficient Stock status and cannot be purchased.
Monitoring Bundled Product Stock ↑ Back to top
A product appearing as In stock in your catalog may not have enough stock to cover the requirements of every bundle that contains it. For example, if the Minimum Quantity defined for a bundled product in one or more bundles is higher than its remaining stock, then these bundles will not be available for purchase.
To monitor bundled product stock, navigate to WooCommerce > Reports > Stock > Insufficient stock. This report gives you an overview of all products you have added in Bundles that fail to satisfy the stock/quantity requirements of their container.
Inventory Settings ↑ Back to top
The sale of a product in a bundle has the same effect on its stock as an individual sale. Product bundles that contain items with insufficient stock appear with an Insufficient Stock status and cannot be purchased.
At the same time, bundles can have their own SKU, and manage inventory for it. The ability to manage stock at bundle level is useful if a limited resource prevents you from assembling or fulfilling an unlimited number of bundles within a given period. For example, if you decided to sell complete skateboards, you would quickly notice that the number of skateboards you can ship every day depends on: (i) the time it takes to assemble a skateboard, and (ii) the size of your fulfillment team.
Notes on External Inventory Management Services
External inventory management services utilize proprietary methods to support bundle/kit SKUs. If you are using an external inventory management service that automatically breaks up bundle/kit SKUs into a number of component SKUs, please be aware that some additional integration work might be needed to export bundle data in a format supported by your service provider.
Product Bundles provides an API that allows developers to generate dynamic kit SKUs when exporting order data to external systems.
Use Cases ↑ Back to top
The following use cases will help you develop a better understanding of what’s possible with Product Bundles:
- Creating Simple Product Kits – The Happy Ninja bundle.
- Creating Pick and Mix Bundles – The 4/40 Deck Pack bundle.
- Selling Products in Bulk – The Bulk Discount Deck Pack bundle.
- Creating Downloadable Item Packages – The Woo Music bundle.
- Creating Assembled Products – The Complete Skateboard scenario.
- Offering Up-Sells – The Skateboard Decks scenario.
- Offering Bundle-Sells – Add Frequently Bought Together recommendations to any product.
- Offering Subscription Boxes – Use WooCommerce Subscriptions, All Products for WooCommerce Subscriptions and Product Bundles to build a feature-rich Subscription Box store.