Provides an overridable method on product which compute the Replenishment cost of a product. By default it just returns the value of "Cost price" field, but using the product_cost_incl_bom module, it will return the costing from the bom.
"Cost price" is the cost assigned for each product in the warehouse and the "Replenishment cost" is the cost it would cost to buy a new product. They are different costs because the cost price depends on your valuation method and the operations you have performed while the replenishment cost is determined by the current market conditions.
For example: The price of the product in the supplier's catalog is €15/piece. Therefore, if I want to buy a new unit, my replenishment cost would be €15. But if my stock comes from having bought it in a special offer that allowed me to buy it for €10, then my cost price is €10/piece.
As it is a generic module, you can also setup your own way of computing the replenishment_cost for your product.
All OCA modules to compute margins are based on it, so you'll be able to use them in your own way.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Adds a "Replenishment cost" field to product variants, showing what it would cost to buy or produce the product again. By default it simply copies the product's Cost Price.
This module adds a new read-only value called "Replenishment cost" on each product variant (product.product). It appears on the product form, right next to the standard Cost Price field, so users can compare the two side by side.
The value is calculated automatically and stored on the product. By default the calculation simply copies the product's Cost Price (standard_price), and it is recalculated whenever that Cost Price changes, either on the variant itself or on its product template.
The field is meant to represent the cost of acquiring or producing the goods again, which can differ from the accounting Cost Price. This base module only provides the default behaviour; other modules can extend the calculation (for example to derive the cost from bills of materials or recent purchases).
No new menus, buttons, reports, emails or scheduled actions are added. The only visible change is the extra field on the product form, and the only model touched is product.product.
Depends on
Models and fields (1)
- product.product · extends an existing modelreplenishment_cost (Replenishment cost)
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 3 confirmed, 6 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/margin-analysis.
terminal Installation and usage
No verified informationInstallation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.