跳至主要内容
产品详细信息以英文显示。翻译即将推出。
Product Bundle Pack — A build-to-order Odoo module that lets you sell multiple products together as bundles or kits — with co — 1/1示意预览

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 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.

核心功能

`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

按需定制,全程代劳

无需自行搭建——由 ECOSIRE 构建、安装并提供支持的可用应用。

  1. 1

    您下单

    以一次性构建价格开始。我们在启动时与您共同确定范围。

  2. 2

    我们构建与安装

    ECOSIRE 在您的 Odoo 上构建、配置并安装。

  3. 3

    上线 + 支持

    约一个工作周内上线,并包含两周上线支持。我们交付的代码中的缺陷免费修复。

技术规格

Odoo 兼容性
Odoo 17, Odoo 18, Odoo 19
版本
企业版和社区版
许可证
许可证需要确认
Python 要求
Python 3.10+
数据库
PostgreSQL 12+

关于此产品

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.

你得到什么

  • 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

这是给谁的

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.

Product Bundle Pack 如何比较

标准伊科西尔定制建造竞争对手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

关于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.

申请报价

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

申请报价

告诉我们您对 Product Bundle Pack 的需求,我们将发送价格、许可选项和量身定制的方案,通常在一个工作日内。

现在无需付款。此操作会向我们的团队发送报价请求——我们会通过邮件跟进价格和后续步骤。