Skip to content
PokutsoftPokutsoft
GlobalSales/Sales
Product Bundle & Combo Pricing icon

Product Bundle & Combo Pricing

Fixed-price product bundles/combos with automatic component stock decrement on order confirmation

Odoo 20.0Odoo 19.0Odoo 18.0
Compatible with Odoo 18.0 · 19.0 · 20.0
OPL-1 license · 35+ languages · Community & Enterprise
Product Bundle & Combo Pricing for Odoo — preview banner

Product Bundle & Combo Pricing

Fixed-price product bundles/combos with automatic component stock decrement on order confirmation

Product Bundle & Combo Pricing lets you sell fixed-price bundles built from ordinary products, no Manufacturing app required. Configure what a bundle is made of, price it as a flat amount or as a discount off the component total, and let Sales orders take care of checking stock and consuming the components automatically on confirmation.

Key Features

Flat bundle configuration

Pick any sellable product as a bundle and attach a flat list of components (product x quantity), one configuration per bundle product, without touching Manufacturing's routed Bill of Materials.

Two pricing modes

Price a bundle as a flat Fixed Price or as Component Total minus Discount %, recomputed live as components or their costs change and written straight onto the bundle product's Sales Price.

Cost roll-up and margin

Every bundle shows its live component cost total, component sale value total, computed sale price, and resulting margin amount and percentage.

Stock-sufficiency check wizard

Check, for any quantity and stock location, whether every component is available before committing to a sale, with an itemised shortage list per component.

Automatic component stock decrement

Confirming a Sales order with bundle lines expands each bundle into its components and creates genuine, validated stock.move records that consume them, with an optional per-bundle switch to sell ahead of stock.

Combined shortage check on confirmation

When multiple bundle lines share a component, required quantities are merged before the availability check, so confirmation blocks with a clear itemised shortage message if stock cannot cover the combined need.

Bundle-to-component expansion service

A small reusable pure-python engine answers what N units of a bundle consume, used consistently by the wizard, the sales-confirmation flow and the bundle form's own cost computation.

Bundle sales traceability

Each bundle configuration shows a smart button to its own Sales Order Lines and to the stock moves it generated, plus mail thread/activity tracking on every pricing or component change.

Use Cases

✓Sell a fixed-price meal combo or gift set assembled from individually stocked products
✓Offer a component-total-minus-discount bundle that automatically re-prices when a component's sale price changes, while cost changes update its margin
✓Let a salesperson check component availability for a large bundle order before quoting it
✓Block confirmation of an order that would oversell shared components across multiple bundle lines
✓Allow a specific bundle to be sold ahead of stock (backorder) while still decrementing components
✓Track how much revenue and margin a given bundle configuration is generating from its Sales Orders

Screenshots

Product Bundle & Combo Pricing — 01 Bundles List in Odoo

01 Bundles List

Product Bundle & Combo Pricing — 02 Bundle Form in Odoo

02 Bundle Form

Product Bundle & Combo Pricing — 03 Bundle Stock Check Wizard in Odoo

03 Bundle Stock Check Wizard

Why Choose This Module

Because pricing, cost roll-up and bundle-to-component expansion all live in one pure-python engine shared by the bundle form, the stock-check wizard and the sales-confirmation flow, the numbers a salesperson sees before quoting are guaranteed to match what actually gets consumed from stock once the order is confirmed.

Specifications

  • Compatible: Odoo 18.0 / 19.0 / 20.0
  • License: OPL-1
  • Languages: 35+
  • Author: Pokutsoft
  • Dependencies: sale, sale_stock, mail
  • Support: support@pokutsoft.com
  • Update date: 2026-10-02

Related modules