OdooWiki OCA HUB

MRP Production Unique Lot

mrp_production_unique_lot folder_open OCA/manufacture open_in_new
Manufacturing License: AGPL-3

This module enforces that each Manufacturing Order (MO) has a unique lot number for its finished products.

A lot generated by one MO cannot be reused in another MO, and this constraint is applied when validating the production.

Additionally, to improve user usability, the domain of the lot_producing_ids field has been updated to ensure only lot numbers that have not been used are selectable, only in case the product is tracked by lots.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Prevents reusing a finished-product lot number across manufacturing orders: when the option is enabled on an operation type, Odoo blocks validation if the lot was already produced and only offers unused lots in the lot field.

This module adds a control so that a lot number used for the finished product of a manufacturing order cannot be used again in another manufacturing order.

Where it appears: - On the Operation Types screen (the settings of a manufacturing operation type) a new checkbox "Force production lot uniqueness" is available. - On the manufacturing order form, the lot/serial number field for the finished product now only proposes lots that are still available, when the option is active and the product is tracked by lots.

Business rules and automatic behaviour: - The checkbox on the operation type is carried over to each manufacturing order, so the rule applies automatically to orders of that type. - When the user validates the production, Odoo checks the finished-product lot: if that lot was already produced in another order, validation is stopped with an error message naming the product. - The same check is applied to byproducts tracked by lots: if a byproduct lot was already produced, validation is blocked with a message naming the lot and the byproduct. - The check is smart about history: lots that were unbuilt or scrapped (and later restored) are not counted as already produced, so legitimate rework is not blocked. - If the option is not enabled, or the product is not tracked by lots, nothing changes.

The module touches manufacturing orders (mrp.production) and operation types (stock.picking.type).

Depends on

mrp
Models and fields (2)
  • mrp.production · extends an existing modelforce_lot_uniqueness, allowed_lot_producing_ids (Allowed Lot/Serial Numbers)
  • stock.picking.type · extends an existing modelforce_production_lot_uniqueness

Text generated by AI (DeepSeek) from reading the Odoo 19.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-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 2 confirmed, 7 with no information of 9 versions.

Sources · Odoo 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/manufacture.

terminal Installation and usage

OCA documentation · Odoo 19.0
  • Configuring The Operation Type
  • Navigate to Inventory \> Configuration \> Operation Types.
  • Open the Manufacturing operation type.
  • Check the option 'Force Production Lot Uniqueness'.
  • Creating a Manufacturing Order
  • Create an MO for a product that is tracked by lots.
  • Assign an existing lot number for the finished product. This should be a lot number used on a done production.
  • Validating the Manufacturing Order
  • When you validate the MO, an error is thrown because the lot has already been produced.

No verified information in OCA: Installation, Configuration.

info

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.