Parent-child cart structure

When a customer adds a bundle to the cart, BundlePilot creates:

  1. One parent cart item — represents the bundle product. Carries the full bundle price. Displays a “Bundle” badge and an item count summary.
  2. One child cart item per selected product — each has a price of $0 (to avoid double-counting), shows an “Included” label (configurable), and has its quantity locked (not editable individually).

This structure means:

  • Cart count shows the bundle as 1 item, not N+1 items.
  • Removing the parent automatically removes all its children.
  • Restoring the parent (via WooCommerce “Undo”) automatically restores all children.
  • Child quantities cannot be changed independently — customers must remove the bundle and re-build it.