Saltar al contenido principal
Los detalles del producto se muestran en inglés. Próximamente traducciones.
Product Bundle Pack — A build-to-order Odoo module that lets you sell multiple products together as bundles or kits — with co — 1/1Vista previa ilustrativa

A build-to-order Odoo module that lets you sell multiple products together as bundles or kits

— with correct component-level stock, margin, and invoicing.

ECOSIRE scopes, builds, installs, and supports it for your exact catalog and workflow.

¿Qué es Product Bundle Pack?

A build-to-order Odoo module that lets you sell multiple products together as bundles or kits — with correct component-level stock, margin, and invoicing. ECOSIRE scopes, builds, installs, and supports it for your exact catalog and workflow. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $249.00 USD; request a quote for a scoped proposal.

Características clave

`product.bundle` header model with `product.bundle.line` children referencing component products, quantities and optional per-line discount
Three pricing modes — fixed bundle price, sum-of-components, or sum-minus-percentage — recomputed via `@api.depends` on component price/cost changes
Per-bundle delivery style flag: keep as one priced sale line with expandable breakdown, or explode into individually tracked component lines
`sale.order.line` extension so a rep selects one bundle and pricing, taxes and discounts resolve automatically
Component-aggregated stock availability from `stock.quant` — bundle reads as unavailable when any single component is short
`@api.constrains` guards against negative quantities, self-referencing bundles, and infinite nesting depth
`ir.model.access.csv` plus record rules scoping bundle edit rights to sales/inventory managers and honoring multi-company boundaries
QWeb report extensions rendering bundle-with-component breakdown on quotations, sale orders and invoices
Backend form/list/kanban views for bundle definition, with an OWL configurator widget where richer UX helps
Optional automated actions to resync bundle prices when a component's standard/sale price changes
Full XML-RPC/JSON-RPC exposure so webshop, POS or external systems can create bundle-backed order lines programmatically
Margin visibility retained per component so profitability is not lost when items are sold as a combo
Configurable behavior for delivery/invoicing — ship as one pack vs deliver and invoice each component line
Built and tested against your exact Odoo target (17.0 / 18.0 / 19.0) with Community vs Enterprise differences confirmed

Hecho a medida, listo para ti

Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.

  1. 1

    Haces el pedido

    Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.

  2. 2

    Creamos e instalamos

    ECOSIRE la crea, la configura y la instala en tu Odoo.

  3. 3

    En marcha + soporte

    Sales en vivo en aproximadamente una semana laboral, con dos semanas de soporte tras la puesta en marcha. Los defectos en el código que entregamos se corrigen sin coste.

Especificaciones técnicas

Compatibilidad con Odoo
Odoo 17, Odoo 18, Odoo 19
Ediciones
Enterprise y Community
Licencia
La licencia requiere confirmación
Requisito de Python
Python 3.10+
Base de datos
PostgreSQL 12+

Sobre este producto

Most teams that run Odoo eventually want to sell things in combinations: a starter pack, a seasonal gift set, a "buy the machine plus consumables" combo, or a service-plus-hardware kit. Out of the box, Odoo gives you two partial answers — a Bill of Materials with a phantom (kit) BoM that explodes into components on delivery, and optional-product suggestions on quotations. Neither is a real bundling engine. Kit BoMs don't carry their own sale price independent of the sum of components, they don't let you flip a bundle between "ship as one pack" and "explode into components" per order, and they give sales reps no clean way to pick a bundle on a quote line and have pricing, discounts, and stock availability resolve automatically. Teams end up hand-adding component lines, mispricing combos, and losing per-component margin visibility.

We build a dedicated Product Bundle Pack module that turns bundling into a first-class object in Odoo. A new product.bundle model (extending or relating to product.template) defines a bundle header plus product.bundle.line children that reference component products, quantities, and an optional per-line unit or discount. The bundle carries its own configurable sale price with three pricing modes — fixed bundle price, sum-of-components, or sum-minus-percentage — computed through @api.depends so the price recalculates whenever a component or its cost changes. On the sales side we extend sale.order.line so a rep picks one bundle and the module either keeps it as a single priced line with an expandable component breakdown, or explodes it into individually tracked component lines, controlled by a per-bundle "delivery style" flag. Stock availability is aggregated from the components (respecting each component's on-hand and reserved quantity via stock.quant), so a bundle shows as unavailable the moment any one component runs short.

Technically the module ships as a clean addon: a versioned __manifest__.py declaring dependencies on sale_management, stock, and account; ORM models with proper @api.depends/@api.constrains guards (no negative quantities, no self-referencing bundles, no infinite nesting); ir.model.access.csv plus record rules so bundle definitions respect multi-company boundaries and are editable only by inventory/sales managers; backend form/list/kanban views (XML, with OWL where the bundle configurator benefits from a richer widget); a QWeb extension so quotations and invoices print the bundle with its component breakdown; and optional automated actions to keep bundle prices in sync on cost changes. Everything is reachable over the standard XML-RPC/JSON-RPC API, so your webshop, POS, or external order source can create bundle-backed sale lines programmatically. We build against your target — Odoo 17.0, 18.0, or 19.0 — and confirm Community vs Enterprise behavior up front, since kit/MRP and some invoicing options differ between editions.

Delivery is build-to-order: nothing is downloaded from an app marketplace. We start with a short scoping call, agree the exact pricing modes, delivery styles, and reporting you need, then build on a staging copy of your database, run UAT with you, and deploy with a rollback plan. Typical delivery is one working week from confirmed scope. Pricing starts from $249 (indicative, single-company base scope); multi-company bundle rules, POS/eCommerce integration, deeper margin reporting, and data migration of existing kit records increase the quoted scope. You get a fixed quote after the scoping call — never a surprise invoice.

lo que obtienes

  • Installable source code for your version of the module (Odoo 17.0, 18.0 or 19.0)
  • Installation and configuration on your staging then production environment
  • Technical documentation: models, fields, pricing modes, security rules and API usage
  • End-user guide plus a live training session for your sales and inventory teams
  • Post-go-live support window for defect fixes and configuration questions
  • UAT on a staging copy of your database with an agreed rollback plan
  • Git repository handover with tagged release and commit history
  • Data migration script for any existing kit/BoM bundle records where in scope

¿Para quién es esto?

Sales operations lead

Wants reps to pick a bundle on a quote and have price, discount and stock resolve automatically, instead of hand-adding component lines and mispricing combos.

Inventory / warehouse manager

Needs bundle availability tied to real component on-hand and reserved stock, and control over whether a pack ships as one unit or as exploded component picks.

Finance / margin owner

Requires per-component cost and margin visibility on bundled sales so combined offers do not hide profitability, and correct invoicing per component or per pack.

eCommerce / channel manager

Sells kits and combos across webshop and POS and needs bundles that behave consistently via the JSON-RPC/XML-RPC API and printed component breakdowns.

Cómo se compara Product Bundle Pack

CriterioECOSIREConstrucción personalizadaCompetidorNativo de Odoo
Bundle sale priceFixed, sum, or sum-minus-% modes, recomputed on component changeWhatever you build, at full costUsually one fixed pricing behaviorKit BoM has no independent bundle price
Ship as pack vs explodePer-bundle delivery style flagBuildable but must be specifiedOften fixed to one behaviorKit always explodes into components
Stock availabilityAggregated from component `stock.quant`Must be coded from scratchVaries; sometimes component-awareNo unified bundle availability
Margin visibilityPer-component cost/margin retainedDepends on your implementationOften bundle-level onlyNot surfaced for combined sales
Fit to your catalogBuilt to your exact products and rulesFully bespokeGeneric, one-size-fits-allGeneric core behavior
Reports & APIQWeb breakdown + full XML-RPC/JSON-RPCYou build and document itLimited or fixed report formatNo bundle-aware reports
Support & handoverSupport window + git repo + trainingOnly if you staff for itVendor-dependent, often forum-onlyCommunity support only
Cost & timelineFrom $249 indicative, one working week, fixed quoteHigh effort, unpredictable timelineLow upfront, gaps you fill laterFree but limited capability

Preguntas frecuentes sobre Product Bundle Pack

How long does delivery take?

This is build-to-order, not an instant download. Typical delivery is one working week from confirmed scope. We build on a staging copy of your database, run UAT with you, and deploy with a rollback plan. Larger scopes (multi-company, POS/eCommerce, data migration) extend the timeline, which we confirm in your quote.

How does pricing and scoping work?

Pricing starts from $249 as an indicative single-company base figure. After a short scoping call we give you a fixed written quote covering your exact pricing modes, delivery styles, integrations and reporting. Drivers like multi-company rules, POS/eCommerce integration, deeper margin reporting, and migrating existing kit records increase the quoted scope.

What support and updates do I get?

Every build includes a post-go-live support window for defect fixes and configuration questions. We hand over the git repository with a tagged release so your team or ours can maintain it. Version upgrades to a newer Odoo release, or new features beyond the original scope, are handled as a separate quoted engagement.

How is this different from Odoo's kit Bill of Materials?

A phantom/kit BoM explodes into components on delivery but has no independent bundle sale price, no per-order choice between shipping as a pack or exploding into lines, and limited pricing logic. Our module makes the bundle a first-class object with configurable pricing modes, delivery styles, aggregated stock availability, and clean sales-line selection.

Does it work on Odoo Community or only Enterprise?

We build for both. Core bundling — models, pricing, sales-line integration, stock aggregation, QWeb reports and API access — works on Community. Some kit/MRP and invoicing options differ between editions, so we confirm your edition and target version (17.0/18.0/19.0) during scoping and build accordingly.

Can bundles be created from our webshop or an external system?

Yes. The module exposes bundle selection through the standard XML-RPC/JSON-RPC API, so your webshop, POS, or an external order source can create bundle-backed `sale.order.line` records programmatically with correct pricing and component resolution.

Will bundling break my existing stock and accounting?

No. We build additively on a staging clone first, guard the models with `@api.constrains`, respect `ir.model.access.csv` and record rules, and run UAT before touching production. Stock availability reads real component `stock.quant` data, and invoicing can be configured per pack or per component to match your accounting.

Solicitar presupuesto

Product Bundle Pack

A build-to-order Odoo module that lets you sell multiple products together as bundles or kits — with correct component-level stock, margin, and invoicing. ECOSIRE scopes, builds, installs, and supports it for your exact catalog and workflow.

  • `product.bundle` header model with `product.bundle.line` children referencing component products, quantities and optional per-line discount
  • Three pricing modes — fixed bundle price, sum-of-components, or sum-minus-percentage — recomputed via `@api.depends` on component price/cost changes
  • Per-bundle delivery style flag: keep as one priced sale line with expandable breakdown, or explode into individually tracked component lines
  • `sale.order.line` extension so a rep selects one bundle and pricing, taxes and discounts resolve automatically

Solicitar presupuesto

Cuéntanos tus necesidades de Product Bundle Pack y te enviaremos precios, opciones de licencia y una propuesta a medida, normalmente en un día hábil.

Sin pago ahora. Esto envía una solicitud de presupuesto a nuestro equipo; te responderemos por correo con precios y próximos pasos.