What is a Magento Bundle Product?
A Magento Bundle Product is a product type for "build-your-own" kits, packages, and configurators. Customers pick from a list of items (each itself a simple or virtual product); every item can be required or optional, quantity-locked or user-pick, and the bundle’s price, weight, and SKU can be dynamic (sum of children) or fixed. Used for PC builds, gift hampers, meal kits, B2B parts assemblies.
- Product type code bundle
- Available since Magento 1.x, refined in 2.x
- Children must be Simple or virtual products
Five steps to build a Magento bundle, from admin to cart
Bundles look simple on the storefront but have five distinct admin moves to set up. Get them in the right order and your build-your-own product behaves predictably end-to-end.
01Define the bundle parent (name, SKU, optional fixed price)
Create the bundle in Magento admin under Catalog → Products with type "Bundle Product". Give it a name, a parent SKU, a description, and choose the price model upfront (Dynamic or Fixed). The parent itself does not hold stock or shipping weight when set to dynamic: those flow from the children at runtime. Think of the parent as a configurator shell that the customer fills in, not a standalone product.
02Add bundle options: each option is a group of choices
Each "option" inside a bundle is a group like "Pick a CPU" or "Pick a Side Dish". For every option you set a label, a required/optional flag, and a selection type: radio (one of), checkbox (any of), multiselect, or dropdown. Required options must be filled before the customer can add to cart; optional ones can be skipped. Options are ordered by sort position, which controls the on-page picker order.
03Link child products to each option (with qty + user-pick toggle)
Inside each option you attach existing simple or virtual products as the available choices. For every child you set a default quantity, a "User Defined Qty" toggle (can the shopper change the qty?), and a default-selected flag. Children must already exist in the catalogue as their own products: bundle does not create variants of one parent the way configurable does. You can reuse the same child across many bundles.
04Configure pricing model and shipping behaviour
Pricing has two modes: Dynamic = bundle total is the sum of selected children's prices (each child keeps its own catalogue price), or Fixed = parent has a single price that overrides children. Shipping has two modes too: Together = one parcel, parent's weight applies, or Separately = each child ships as its own line for carrier-rate purposes. Pick "Separately" for bulky or fragile kits where multi-parcel shipping is cheaper than a single oversized carton.
05Frontend renders the option picker; cart stores parent + selected children
On the storefront PDP, Magento renders each option as a radio/checkbox/dropdown form. The customer picks their combination, sees the live price update via JavaScript, then adds to cart. The cart line stores the bundle parent plus a serialised list of selected children with their individual prices and quantities. Order, invoice, and shipment all reference the parent line with the children listed as nested rows beneath it. Inventory deducts from each child SKU individually on order placement.
Four scenarios where Bundle is the right product type
Bundle is a powerful but specific tool. These four patterns are where it consistently beats Configurable, Grouped, or Custom Options.
Computer / PC configurator builds
The textbook bundle use case. Customer picks a CPU (required radio), a GPU (required radio), RAM (required dropdown), storage (checkbox, can add SSD and HDD), and optional peripherals (mouse, keyboard). Each component is a standalone simple product in your catalogue with its own stock and price. Dynamic pricing means the build price is always the sum of chosen parts: admins never have to maintain a price matrix.
Gift hampers and curated packs
Christmas hampers, wedding gift sets, corporate welcome boxes. The bundle lets you fix the price (e.g. £75 hamper) while still allowing the customer to swap one wine for another, pick chocolate or biscuits, choose a card design. Fixed pricing keeps the headline price consistent in marketing while still personalising the contents. Ship-together makes sense here: one branded hamper box, not separate parcels.
"Build your own meal" food kits
Meal-kit retailers, restaurant click-and-collect, recipe boxes. Customer builds a meal: pick a protein (required radio), pick a side (required dropdown), pick a sauce (optional checkbox), pick a drink (optional radio). Each ingredient is a simple product with its own stock count and barcode, useful for warehouse picking and allergen labelling. Dynamic price means each meal totals correctly without manual maintenance.
B2B kitting and parts assemblies
B2B distributors selling pre-assembled kits (electrical kits, plumbing kits, repair kits) where each kit is a fixed list of parts but customers occasionally need to swap one component. Bundle handles this cleanly: required options for the core parts, optional add-ons for accessories, ship-separately if parts go to different warehouses, and per-child stock means accurate availability when one part is back-ordered.
Three traps that turn a bundle launch into a support backlog
Every bundle rescue project I have been called in to fix made one of these three mistakes early. Avoid them and the launch ships clean.
Choosing Bundle when Configurable is the right type
Bundles are packages (a CPU + a GPU + RAM = one build). Configurables are variants of one parent (a t-shirt in size S/M/L, in red/blue/green = one t-shirt with options). If your "options" are colour and size on the same physical item, you want Configurable, not Bundle. Picking Bundle for a clothing variant ships you into multi-SKU chaos, broken stock, and a PDP that looks wrong. The rule of thumb: if the customer ends up with one item, use Configurable; if they end up with several items, use Bundle.
Forgetting to set "Ship Separately" on heavy or bulky kits
Default shipping for bundles is "Ship Together", Magento adds the child weights, picks one parcel size, and sends one carrier rate. For furniture kits, large electronics builds, or anything fragile, this single carton becomes oversized and triggers premium freight rates. Switching to "Ship Separately" lets each child generate its own rate, often saving 30-60% on shipping for bulky kits. Audit the shipping mode every time you launch a new bundle category.
Dynamic price catching admins out on promo rules
When pricing is Dynamic, the bundle parent does not own a price: the children do. Catalog price rules, special prices, and cart price rules applied to the parent may not flow to children automatically; they often need to be applied per-child or scoped to a category that contains the children. Test every promo rule against a dynamic bundle before launching a campaign. The classic failure mode is "10% off all bundles" that does nothing on the storefront because the rule has no child price to discount.
Where Bundle sits in the wider Magento product-type landscape
Five neighbour concepts most readers want to look at next. Click through for the full deep-dive on each.
- What is a Configurable ProductVariants of one parent: t-shirt in S/M/L × red/blue. Pick this when the customer ends up with one item, not many.
- What is a Grouped ProductCatalog grouping of related products on one PDP: no kit, no pricing logic. Customer picks qty per row and adds them all.
- What are Magento Custom OptionsPer-product extras (engraving, gift wrap, size chart) without creating new child products. Lighter than Bundle for simple add-ons.
- Magento extension developmentCustom bundle logic, dynamic stock display, per-option discounts, B2B kit configurators. Built as Magento 2 modules.
- Hire Magento developerAdobe Certified Magento + Hyvä developer. Fixed-price scoping, 24-hour reply, available for bundle / configurator builds.
Magento Bundle Product: frequently asked questions
Bundle vs configurable: what is the actual difference?
Can a bundle child be a configurable product?
How does Bundle Pricing Dynamic vs Fixed actually work?
Do bundle line items show separately in the order and invoice?
Can I set per-item quantity limits inside a bundle option?
How do tax and shipping rules apply to bundles?
Need a custom bundle or configurator built on Magento?
Send me your kit, configurator, or hamper requirement: I will reply with a fixed-price quote, recommended product-type setup, and earliest start date. 24-business-hour turnaround.