ParcelPilot
Help

Items — How Bundle Inventory Works

Use this guide when someone asks whether a fulfilment-expanding bundle has its own stock, how its availability is calculated, or what gets reserved and deducted when a bundle order ships.

If the item is configured as Assemble to stock, this is not the right guide. Use Items — Product Types And Recipes and Inventory Assembly.

Short answer

ParcelPilot treats fixed fulfilment-expanding bundles as virtual, component-driven bundles.

That means:

  1. the bundle definition lives on the item record
  2. bundle availability is calculated from the component items
  3. order fulfilment expands the bundle into component lines before stock is reserved
  4. reservation, picking, and stock deduction happen against the component items

ParcelPilot does not use a separate bundle-parent stock bucket for fulfilment-expanding bundle calculations.

Where The Bundle Definition Lives

The live bundle structure is stored on the item record under the bundle attributes.

Each component row defines:

  1. the component item
  2. the quantity of that component required per bundle

Example:

  • TOOLKIT-001
  • COMP-A x2
  • COMP-B x1

That means one sellable bundle requires two units of COMP-A and one unit of COMP-B.

Does The Bundle Have Its Own Inventory?

Operationally, no for this bundle type.

For the ParcelPilot fulfilment-expanding bundle workflow, the bundle parent is treated as a virtual sellable SKU whose usable availability comes from its components.

When a user asks "do bundles have their own inventory?", the practical answer is:

  1. ParcelPilot does not reserve bundle-parent stock
  2. ParcelPilot does not pick bundle-parent stock
  3. ParcelPilot does not deduct bundle-parent stock on shipment
  4. ParcelPilot uses component stock to decide whether the bundle can be fulfilled

How Bundle Availability Is Calculated

ParcelPilot calculates how many complete bundles can be built from the currently sellable component stock.

For each component:

$$ \text{component sellable} = \max(0, \sum qty - \sum reserved) $$

$$ ext{buildable from component} = \left\lfloor \frac{\text{component sellable}}{\text{qty required per finished unit}} \right\rfloor $$

Final bundle availability is the lowest buildable quantity across all required components.

$$ \text{bundle availability} = \min(\text{buildable from each component}) $$

ParcelPilot excludes stock that is not currently sellable, including:

  1. DISCONTINUED inventory units
  2. inventory in QUARANTINE locations
  3. inventory in RETURNS locations

Worked Example

Bundle parent:

  • TOOLKIT-001

Components:

  • COMP-A x2
  • COMP-B x1

Current sellable stock:

  • COMP-A = 9
  • COMP-B = 4

Result:

  1. COMP-A can build floor(9 / 2) = 4 bundles
  2. COMP-B can build floor(4 / 1) = 4 bundles
  3. the bundle availability is 4

If COMP-B drops to 3, the bundle availability also drops to 3 even if COMP-A stays higher.

What Happens When A Bundle Order Is Reserved

When an order contains a fulfilment-expanding bundle parent SKU, ParcelPilot expands that bundle into component fulfilment lines before reservation.

Example:

  1. order contains 2 x TOOLKIT-001
  2. TOOLKIT-001 requires COMP-A x2 and COMP-B x1
  3. ParcelPilot expands the warehouse fulfilment demand to:
    • COMP-A x4
    • COMP-B x2

Stock is then reserved against those expanded component quantities.

What Warehouse Staff Pick And What Shipment Deducts

Warehouse picking and shipment deduction follow the expanded component demand, not the bundle parent SKU.

In practice:

  1. the warehouse picks component items
  2. stock deductions reduce the component items
  3. the bundle parent acts as the commercial/order-facing SKU, while the warehouse stock movement stays component-based

Supported And Unsupported Bundle Shapes

The fulfilment-expanding bundle model is intended for fixed component bundles.

Supported:

  1. a fixed component list on the item
  2. positive component quantities
  3. multiple bundle parents sharing the same component item

Not supported:

  1. nested bundles
  2. bundle cycles
  3. self-referential bundles
  4. missing component items
  5. non-positive component quantities

Related Guides

Use the stock-sync guide when the question is about pushing a derived virtual-bundle parent quantity to Shopify, WooCommerce, or another ecommerce channel. Use this guide when the question is about ParcelPilot's internal warehouse behavior for fulfilment-expanding bundles.