Bundles
Bundles allow multiple SKUs to be combined into a single purchasable unit.
Quantaprice treats bundles as first-class pricing objects, with deterministic behaviour and full compatibility with inheritance, scheduling, and historical pricing.
A bundle may consist of fixed prices, component-based prices, or a combination of both.
Bundle evaluation is integrated into the standard pricing pipeline and does not require separate handling by the caller.
Bundle Types
Fixed-Price Bundles
These bundles define a single explicit price.
Component prices do not influence the result.
Use cases:
- Campaign bundles
- Pre-packaged product sets
- Contractually negotiated bundle prices
Component-Based Bundles
These bundles derive their price from the prices of their component SKUs.
For each component:
- Resolve the component using the same pricelist
- Select the correct quantity break
- Apply inheritance and scheduled changes
- Multiply the price by the component quantity
- Aggregate all component totals
Hybrid Bundles
A hybrid bundle may mix:
- A fixed price for the bundle itself
- One or more component-based elements
- Component-level overrides
Bundle Resolution Process
Quantaprice resolves bundle prices using these steps:
- Identify bundle definition
- Resolve scheduled or historical version if applicable
- Resolve parent-pricelist values (inheritance)
- For component bundles:
- Resolve each component SKU
- Apply quantity breaks
- Apply component overrides
- Aggregate totals
- Apply VAT mode and rounding (pricelist-defined)
- Return the final bundle price
This process is deterministic and identical across all nodes.
Component Overrides
Child pricelists may override:
- The bundle price (for fixed-price bundles)
- Component quantities
- Additional components
- Removal of inherited components
Overrides behave like all other inherited fields — explicit overrides replace parent values cleanly.
Interaction With Other Pricing Features
Inheritance
Bundles follow the same inheritance pattern as normal prices.
Bundle definitions cascade from parent to child unless overridden.
Scheduled Updates
Future bundle definitions activate automatically at their scheduled timestamp.
Historical Pricing
Historical bundle versions allow “as of” evaluation for past dates.
VAT & Rounding
Applied only after all structural bundle logic is complete.
Design Principles
- Deterministic: No ambiguity in calculation order or component resolution.
- Predictable: Same inputs always produce the same result.
- Composable: Bundles integrate seamlessly with all other pricing concepts.
- High-Performance: Component resolution is optimised for large catalogs.
Summary
Bundles let you define fixed, component-based, or hybrid price compositions.
Quantaprice evaluates bundles using the same deterministic pipeline as individual SKUs, ensuring predictable results across inheritance, scheduling, history, VAT, and rounding.