Bundles and Assemblies
Replenishing enough components (variants) to cover the forecasted needs of bundles, assemblies, and/or individual component sales.
Jansen avatar
Written by Jansen
Updated over a week ago


Configuring bundles and assemblies in Inventory Planner ensures that demand for components is accurately forecasted. Bundles are virtual ‘kits’ where the stock of the components and of the bundle are tied together. Assemblies are goods sold after components are assembled - the stock of assemblies is separate from component stock.



A Bundle can also be referred to as a kit, a virtual bundle, or a gift set. Bundles are simply different ways of selling the Variants - eg. 10 total shirts = (1) 10PK or (2) 5PK or (10) 1PK. In this case, all of the stock is tied together - and goods are bundled after the sale occurs when the customer order is fulfilled.

Configuring Bundles with Variants (components) allows Inventory Planner to consider sales from Bundles in directly with the sales of components/variants when producing a forecast and replenishment recommendation at the Variant level.

Note: Inventory Planner does not manage the stock of Bundles and Components based on customer orders. Using the same example, if a customer purchases a 5PK T-SHIRT bundle - an external solution is needed to decrease the stock level respectively for the 1PK T-SHIRT. This should be handled through an inventory management system, or through a third-party application such as the Bundles App (for Shopify users) for creating bundles and managing bundle stock. Scroll down to “Configuring Bundles” to learn more about this process.


An Assembly must be produced from components (variants) before it can be placed into stock and available for sale. These goods are pre-assembled before the sale and fulfillment of an item.

Assemblies include any produced goods with a bill-of-materials (BOM), and bundles/kits that must be produced before sending to Amazon (or a different fulfillment warehouse). All bundles associated with FBA are considered Assemblies - since Amazon only carries finished goods/produced bundles.

Note: Inventory Planner does not allocate component stock for the production of assemblies at Amazon FBA, since it is not possible to assemble stock at an FBA warehouse. Only transfer recommendations of completed Assemblies can be configured for an FBA warehouse. For Assembly Order recommendations (production orders), configure a combined warehouse using sales from Amazon with stock from FBA + another warehouse where assemblies can be produced.

Here is an example with two scenarios to demonstrate the difference between Bundles and Assemblies:

Craig's Cookies sells cookies in single units, and in 3-packs. Craig has 15 total cookies.

Scenario 1: Bundles

When a new customer purchases a 3-pack, Craig's inventory management system (or 3rd party app such as the Bundles App, for Shopify users) reduces the stock of both items:

  • Stock (Singles): 15 - 3 = 12

  • Stock (3-packs): 5 - 1 = 4

Craig orders 12 new cookies to replenish stock. This increases stock of single and 3-packs simultaneously, since the stock is all tied together:

  • Stock (Singles): 15 - 3 = 12 + 12 = 24

  • Stock (3-packs): 5 - 1 = 4 + 4 = 8

Scenario 2: Assemblies

3-packs must be produced ahead of time in order to be sold and fulfilled. With fifteen (15) cookies in stock, Craig assembles three (3) 3-packs of cookies, leaving Craig with six (6) single cookes to be assembled later, or sold separately:

  • Stock (Singles): 15 - 9 = 6

  • Stock (3-packs): 0 + 3 = 3

When a new customer purchases a 3-pack, Craig's inventory management system (or bundling app) reduces the stock of the 3-pack only.

  • Stock (Singles): 15 - 9 = 6

  • Stock (3-packs): 0 + 3 = 3 - 1 = 2

Craig orders 12 more cookies from his supplier to replenish stock:

  • Stock (Singles): 15 - 9 = 6 + 12 = 18

  • Stock (3-packs): 0 + 3 = 3 - 1 = 2

Configuring Assemblies with Variants (components) allows you to plan your production process in multiple steps:

  • Assembly Orders: also considered “production orders;” these are orders to build new Assemblies from existing (or incoming) component stock. Learn more about Assembly Orders.

  • Purchase Orders: to purchase new components from Vendors, above and beyond the current + incoming stock of components. Learn more about Purchase Orders.

    Note: Purchase Orders can also be created to Vendors for completed Assemblies.

You can also configure nested assemblies (An Assembly within an assembly), to plan multiple steps of production. For example:

  • A bulk container of flour (10 kg) is ordered and received from a Vendor.

  • Flour is divided into 1kg containers to prepare for new Assemblies.

  • To create new Assemblies (single cookies), .01 kg (100 grams) of flour is needed.

  • To create new Assemblies (10 PK of cookies), 10 individual cookies are needed.

Configuring Bundles

Before configuring Bundles:

As stated earlier, Inventory Planner does not manage the stock levels of Bundles and Components based on customer orders. If a customer purchases a 5PK T-SHIRT bundle - an external solution is needed to decrease the stock level respectively for the 1PK T-SHIRT. This should be handled through an inventory management system, or through a 3rd party application for your eCommerce store or Marketplace to create and manage bundles and component stock respectively based on their sales.

Inventory Management Systems: for an IMS that supports Bundles or Assemblies natively, Inventory Planner may pull bundle/variant or assembly/variant relationships automatically. For some systems, the type (bundle vs. assembly) can also be detected. For a full list of IMS integrations and the attributes Inventory Planner pulls from every system, visit our Integrations Page.

eCommerce Stores (eg. Shopify, BigCommerce, and others that don't support Bundles natively) require a two-part solution:

1. Connect an application from your marketplace to configure bundles/components and to adjust their stock levels respectively based on customer sales. Note: Shopify customers can use the Bundles App by Gazebo for this purpose, then add the application to Inventory Planner as a free connection to automatically sync bundle/component relationships.

2. Define bundle/component relationships in Inventory Planner for accurate forecasting and replenishment analysis using either of the methods below (or through CSV import using steps at the bottom of this article).

Method 1: Using Catalog

Configure new bundles in Catalog > Bundles by selecting the button to "Convert Variant To Bundle" in the bottom left of the screen

Select an existing Variant to convert into a new Bundle;

Select the “+” sign on the right hand of the screen, to the right of the newly converted Bundle;

Choose to add an existing component variant, or create a new IP variant;

After adding variants, defining component quantities in a bundle, and selecting 'Save Changes,' the bundle/component relationship will be configured.

Select 'Apply,' then 'Save Changes' to see the new bundle.

Method 2: Replenishment > Details

Configure new bundles in Replenishment by selecting the Details icon next any Variant > Bundles & Production. If the button isn’t displayed, select the purple gear icon in the top right corner to add Details.

Define the Variant (single shirt) as a Bundle;

Then add components with their respective quantities.

Select a variant that already exists using “+ Existing Variant,” or create a new IP Variant using the “+ New IP Variant” option. Specify the component quantity per bundle, then select Save at the bottom left of the screen. Note: An IP Variant only exists in Inventory Planner. Learn more about creating IP Variants here.

Configuring Assemblies

To configure Assemblies with existing component Variants (or IP Variants), you can follow the exact same instructions as above for “Configuring Bundles.” Note: If everything with components should be considered as an Assembly, you can enable ‘Bundles as Assemblies By Default’ under your Account Settings to apply this setting storewide.

One difference with Assemblies is for eCommerce and/or Marketplace connections, since no external app is needed to manage stock of Assemblies and component variants based on their respective sales (since the stock of Assemblies and components is managed separately, by definition).

Another key difference with Assemblies is that Assembly Time (time it takes to Assemble in days) and Assembly Cycle (production schedule breakdown) are considered in order to generate Assembly Replenishment recommendations.

As purchase orders and/or assembly orders are received in Inventory Planner (only when purchase orders and assembly orders cannot sync to/from your platform), Inventory Planner offers an optional step to increase or decrease the stock levels for Assemblies and component Variants in your store accordingly. Learn more about how Inventory Planner can optionally adjust stock in your store after receiving orders.

Configure Assembly Time, Assembly Cycle, Lead Time, and Days of Stock

From Replenishment, select Assemblies using the top left dropdown;

  • Configure ‘Assembly Time’ as the time it takes to produce new assemblies if/when component stock is available. Create new Assembly Orders based on recommendations, and see incoming stock using the ‘On Assembly’ column. Assembly Time dictates the Expected By date for Assembly Orders. Note that zeroes can be inputted for Assembly Time (0 days = same-day assembly).

    Compounded Assembly Time: if nested assemblies are used (eg. 10 Pack Cookies > Cookies > Flour), then Assembly Time for each assembly is based on time to assemble from the oldest connected child component - eg. Assembly Time for 10-packs = 1 day (if/when Cookies are available), and for Cookies = 5 days (if/when Flour is available).

  • Configure ‘Assembly Cycle’ as a production cycle. For example, to break down Assemblies Replenishment into a weekly production schedule; input 7 days for Assembly Cycle. Note that zeroes can be inputted for Assembly Cycle (0 days = no production schedule needed; thus setting "Next to Assemble" = Replenishment).

  • Bulk Actions can also be used to configure Assembly Time and Assembly Cycle for multiple Assemblies at once.

  • Configure ‘Components Lead Time’ in the ‘Variants’ view in Replenishment. Lead Times are pulled into the ‘Assemblies’ view automatically, and considered in the replenishment analysis for new Assemblies (above & beyond what can be assembled from existing component stock).

  • Configure ‘Components Days of Stock’ in the ‘Variants’ view in Replenishment. This value defines the full planning period for Assemblies and component Variants.

    In the following example, inputting Lead Time = 14 Days, and Days of Stock = 90 Days defines the full planning period as Sep 01 - Dec 14. Increasing Days of Stock would increase the total Replenishment at both the Assembly and Variant levels.

    Note: You can also select the Components Lead Time or Components Days of Stock from the “Assemblies” view in Replenishment to click into the “Variants” view, automatically filtered on the components of the corresponding Assembly.

Assembly Schedule Report

Please click here to learn more.

Forecasting & Replenishment for Bundles

Using a simple example: by having 100 t-shirts, the stock of 1PK T-SHIRT = 100 is the same as saying the stock of 5PK T-SHIRT = 20. With Bundles configured, Inventory Planner treats the sale of 5PK T-SHIRT the same as selling 5 units of 1PK T-SHIRT. All sales from components and bundles will be captured automatically at the Variant level (1PK-SHIRT).

In Replenishment and Edit Forecast, you can view details at the Variant (component) level.

In this example, we sell t-shirts either as individual units (SKU BW345) or as multi-packs of 5 (SKU BW345-X5). All t-shirts come from the same supply of inventory, meaning both individual units and 5-packs are fulfilled from the same physical inventory.All customer orders are fulfilled from the same pile of inventory, so it’s only necessary to view forecasting and replenishment information in the 'Variants' view. This reflects forecasting and replenishment needs to cover demand both of the individual units and of the 5-pack.

  • Select the ‘Details’ icon;

  • Then the Bundles & Production tab to view a sales breakdown from bundles vs. variants. Sales are merged together for forecasting and replenishment purposes.

  • Select the Variant(s) in the main Replenishment table then create a Purchase Order (or Transfer Order by selecting the arrow) for the Replenishment recommendation amount.

    Scroll down to the ‘Create Purchase Orders for Components’ section for details.

Forecasting & Replenishment for Assemblies

When Assemblies are configured with Variants, Inventory Planner:

1. generates forecasts and replenishment recommendations for Assemblies (produced goods), then

2. allocates component variant stock to meet the forecasted demand of Assemblies.

If component variants are sold individually, an independent forecast and replenishment analysis is performed as well based on standalone component sales. This is then added to the stock allocated for Assemblies and compared against current stock + incoming orders to generate a replenishment recommendation for components.

If components are not sold individually, replenishment for components will be driven solely by the replenishment needs of the connected Assemblies.

In the latter example, large office tables are sold to customers, which are assembled using two component variants: ‘Table Leg’ and ‘Table Top Large’. Variants (components) must be purchased from a Vendor using Purchase Orders, then components are assembled into Assemblies using Assembly Orders.

Assemblies Replenishment: Assembly Orders (produce Assemblies)

Before purchasing new component stock, you can create new Assembly Orders to use existing component stock based on the recommended ‘Next To Assemble’ quantity.

The Replenishment quantity for Assemblies is the ‘Next To Assemble’ quantity + the additional replenishment needed to satisfy forecasted sales during the full planning period (as defined by the components’ Lead Time and Days of Stock inputs).

In Replenishment and Edit Forecast, select Assemblies view;

  • Select the ‘Details’ icon;

  • Select the ‘Bundles & Production’ tab to see component variants and details related to the Assembly in view. Note: clicking the ‘details’ icon next to components in this screen opens a new tab displaying Replenishment, filtered on the component variant.

  • Hover your cursor over the Forecast Stock chart and the ‘To Assemble’ rows of the left-hand table to view a recommended assembly schedule, based on your configured Assembly Time and component Lead Times.

    In this example, only 3 Assemblies can be assembled in the immediate term (since the current stock = 3 of ‘Table Top Large’). If new components are ordered today, we can assemble 69 additional tables each week once the new components arrive until we meet the total Replenishment of 901.

  • Select “Show Forecast Stock for Components” to see how Assemblies replenishment impacts component variant stock.

  • Quantities ordered using an Assembly Order are represented in the “On Assembly” column in Replenishment (below in blue). Use the purple gear icon in the top right corner to adjust columns.

    After creating a new Assembly Order, the “Next To Assemble” recalculates based on what’s needed for the next Assembly Cycle. Note: if there is insufficient component stock for additional assemblies in the immediate term, the “Next to Assemble” date will be pushed back according to the components’ Lead Time inputs. This is the case in the following example, as we could only Assemble a few for now and must wait for new component stock to arrive by Sep 15 to create additional Assemblies.

Assemblies Replenishment: Purchase Orders (for Components)

Replenishment recommendations for component Variants include the forecasted sales and replenishment needed for Assemblies.

On the Replenishment page, select Variants using the top left dropdown menu.

  • Select the ‘Details’ icon;

  • Then the Bundles & Production tab to see a summary of the connected Assemblies, along with stock and replenishment needs driven by connected Assemblies.

  • Return to the Replenishment & Forecast tab to see how the replenishment requirements of Assemblies impact component variant stock.

    In this example, 1,084 table legs are needed to produce 271 small office tables + 1,268 table tops to produce 317 large office tables. The total stock allocated for Assemblies is thus 1,084 + 1,268 = 2,352 (below in red).

    Of the 2,020 table legs that are currently in stock, 20 units are needed for assembly orders that are currently in progress. 2,000 components remain, leaving us 352 units short of our total requirement to meet the demand of Assemblies. This drives the Replenishment recommendation of 352.

    Note: In this example, components are not sold individually. Replenishment is driven solely by the replenishment recommendations of connected Assemblies. When components are sold on their own - forecasted sales of components are considered above & beyond the stock required for assemblies when calculating Replenishment.

  • Return the the main Replenishment table to see a summary of replenishment recommendations;

Interpreting Metrics for Assemblies:

  • Stock: 2,020 represents the current available stock of the component variant.

  • "in Assemblies”: 1,240 represents additional/separate units that have already been assembled into final goods (not available to create new assemblies).

  • On Order: Represents the number of components on order from the supplier.

  • Stock Allocated For Assemblies: 6,552 represents the additional components needed to cover the Replenishment recommendation of Assemblies.

  • Forecast: 0 represents the forecasted sales for the component Variant on its own. This number does not include any sales from the Assembly.

  • Replenishment: 4,536 considers the current stock + on order + transfer in; then subtracts the quantity needed to cover the Stock Allocated for Assemblies + Forecast sales of components on their own (if/when applicable) during the full planning period as defined by the components’ Lead Time and Days of Stock settings. The remaining amount is calculated as Replenishment.

Create Assembly Orders

  • From the main Replenishment screen with ‘Assemblies’ selected - Configure the Assembly Time as the time it takes in days to produce new Assemblies from existing component stock. This defines the ‘expected date’ for assembly orders. Select relevant Assemblies then “+ New Assembly Order” to create a new Assembly Order using existing component stock.

  • A new Assembly Order is generated. The same source and destination warehouse is selected by default - since assembly/production tends to take place in a single location.

  • Select the ‘Components’ button in the Assembly Order to see the components required to meet the quantity listed in the Assembly Order.

  • Check for errors with the (!) button in the top right and make adjustments as necessary. The "Limit to source stock" feature reduces the number of Assemblies based on the available stock of component variants at the source warehouse.

  • Once an Assembly Order is saved, you will find it in the Purchase Orders & Transfers section of Inventory Planner. Add Filter on Type = ‘Assembly' to see Assembly Orders.

    Note: Similar to how the Purchase Orders and Transfer Orders functions work, some systems support the ability to save Assembly Orders from Inventory Planner to the connected system - to manage order receiving and stock changes directly in the IMS. If your integration supports the “Push Assembly Orders” feature, an option will appear after creating the Assembly Order to ‘Save to (your system)’. Visit the Integrations Page to see if your connection supports this feature.

  • Once new assemblies are fully produced, you can Receive the Assembly Order* and select ‘Save’ to apply the receipt. This action closes the order and zeroes the “On Assembly” quantity in Replenishment.

    *Note: Assemblies can only be received in Inventory Planner if they have not been saved to external connection.

  • Select the respective Assembly or Variant to adjust stock for, then ‘Update Selected’ to complete the stock level change.

Create Purchase Orders for Components

  • From the main Replenishment screen with ‘Variants’ selected, configure the Lead Time as the time it takes in days for components to be ordered, shipped from the Vendor, and received at the location where it will be assembled. This defines the ‘Expected Date’ for new Purchase Orders.

  • Select the Variant(s) and create a Purchase Order (or Transfer Order by selecting the arrow) for the Replenishment recommendation amount. A new Purchase Order will be generated to the Destination Warehouse selected. Vendor Attributes are populated from Catalog > Vendor Attributes.

    Note: to Create Multiple Purchase Orders, select the ^ button next to “+ New Purchase Order” then select “+ Multiple Purchase Orders” to create multiple POs at one time.

  • This sequence creates a new Purchase Order in Inventory Planner. Accounts connected through an integration supporting the “Purchase Orders (Push)” feature will have an additional option at this point to save the order to another system - to be managed and received there. Visit the Integrations Page to see if this feature is support for your connected platform.

  • If your connected platform does not support this feature, you can receive purchase orders directly in Inventory Planner, then increase the stock in your store.

  • Select the respective Variant to adjust stock for, then ‘Update Selected’ to complete the stock level change.

    Note: For Bundles, the ‘increase stock’ feature only increases the stock of the components from the received purchase order. The respective stock of bundle(s) will not be adjusted by Inventory Planner.

Save Time! Use Assemblies Replenishment to Create Purchase Orders and Assembly Orders

This is an alternate method to generate Purchase Orders for components, using Assemblies Replenishment to quickly generate POs for the required amount.v

  • In Replenishment using the ‘Assemblies’ view, select the Assemblies that should determine the purchase order quantities for components. Then use the arrow next to “+ New Assembly Order” to see additional options. Select “+ Create Purchase Orders for Multiple Vendors” to create single purchase orders for components from a single or from multiple vendors simultaneously.

  • If a Combined Warehouse is used to generate forecasts and replenishment recommendations, select the physical destination warehouse where purchase orders for components will be received.

  • Enable “Link Assemblies to PO” to easily create a new Assembly Order using the incoming component stock once goods are received. This toggle also sets order quantities in the POs based on values needed to satisfy the corresponding Assemblies' Replenishment (ignores existing component stock and demand related to other parent Assemblies).

    Note: If "Link Assemblies to PO" is disabled, Inventory Planner uses the component Variants' current Replenishment figures instead. This considers current & incoming component stock along with additional demand that needs to be considered from other parent Assemblies (when applicable).

  • Purchase Orders are generated in DRAFT status for each Vendor supplying component stock. Select the PO to Approve the Draft (switches it to OPEN).

  • Once the Purchase Order is received at your warehouse and Inventory Planner syncs the increased stock information from your connected system, you can Create an Assembly Order from the ‘Assemblies’ view in the Replenishment screen. This creates an order to produce new Assemblies (final goods) from component stock.

  • Follow the steps above in the ‘Create Assembly Orders’ section to modify, create, save, and/or receive Assembly Orders.

Importing Bundles & Assemblies

Create a spreadsheet with the following information in 3-10 total columns and including a column title for each:

  • Bundle SKU or Assembly SKU or other identifier such as Title, ID (used by your sales platform), Inventory Planner ID, Vendor Reference, or Barcode.

  • Component/Variant SKU or other identifier such as Title, ID (used by your sales platform), Inventory Planner ID, Vendor Reference, or Barcode.

  • The Quantity of Components included in the respective bundle or assembly.

  • Component Retail Price (Optional)

  • Designating an Assembly, "Is Assembly" - Use "Yes", "Y" or "1" to indicate the item is an Assembly, or "No", "N", "0" or empty to set this item as a Bundle.

  • Manage Components Stock Based On Bundle Sales, enter "1" if so (Optional)

Here is a template you can use for creating this spreadsheet. The import spreadsheet does not need to follow this format (columns may be in any order), though all columns do require a title.

Additionally you can Create IP Variants via CSV import while importing bundle or assembly information. By checking the box for "Create IP Variants for non-existing components", additional (optional) fields will appear to add more information on IP Variants including:

  • IP Variant Title.

  • IP Variant Barcode.

  • IP Variant Vendor.

  • IP Variant Cost Price.

Go to Replenishment > Import > Bundles/Assemblies.

Drag your file or Click to Select File and then select the spreadsheet you've created with Bundles/Assemblies data.

In the import dialog, be sure to select the correct identifier. SKU will be the identifier used by default.

Match dropdown fields to the correct column in your imported CSV. When all fields are matched to the corresponding field in Inventory Planner, select Import.

Additional Tips & Tricks

  • Applying Filters:

    Add the ‘Bundle Component’ Filter to limit variants in display to component variants that are sold as part of bundles. Add the ‘Bundle’ filter to search component variants connected to a specific bundle.

    Add the ‘Assembly Component’ Filter to limit variants in display to component variants that are needed when assemblies are sold. Add the ‘Assembly’ filter to search component variants connected to a specific bundle.

    To search Assemblies with a shared Component Variant: simply enter the component SKU into the search bar next to Filters in the 'Assemblies' view of reports to see all connected Assemblies with the shared component.

  • Understanding Revenue (when using KPI reports): Revenue is assigned to components proportionally to the components' retail prices (configured in Details -> Bundles & Production). If components do not have retail prices, then revenue is assigned proportionally to the components’ quantities in bundles.

  • Export PO with Bundles/Components Information: To export your purchase order, transfer, or assembly with bundle/component information, click on Actions (shown as three dots on mobile versions). You will then see export options including bundle components and without.

Did this answer your question?