Website Builder

Create your stunning Website, that is Responsive & SEO friendly

Easy • No credit card required • Instant access


Odoo distinguishes between Production, Purchase and Procurement.

Production is manufacturing, Purchase is the acquisition of goods from another party, and Procurement is either one or both of those.

Processing Exceptions

The set of stock requirements is generated by procurement orders.

In normal system use, you do not need to worry about procurement orders because they are automatically generated by Odoo and the user will usually work on the results of a procurement: a production order, a purchase order, a sales order and a task.

If there should be configuration problems, the system can remain blocked by a procurement without generating a corresponding document. For example, suppose that you configure a product routes as Make to Order, and Manufacture, but you have not defined the bill of materials. In that case, procurement of the product will stay blocked in an exception state No Bill of Materials defined for this product. You then have to create a bill of materials to solve the problem.


  • No bill of materials defined for production: you need to create a BoM or indicate that the product can be purchased instead.
  • No supplier available for a purchase: you have to define a supplier in the Procurements tab of the product form.
  • No address defined on the supplier partner: you have to complete an address for the default supplier for the product concerned.
  • No quantity available in stock: you have to create a reordering rule and put it in the order, or manually procure it.

Some problems are just those of timing and can be automatically corrected by the system.

Use the menu Warehouse > Schedulers > Procurement to see all the exceptions.

If a product has to be 'in stock', but is not available in your stores, Odoo will make the exception as 'temporary' or 'to be corrected'. The exception is temporary if the system can procure it automatically, for example, if a procurement rule is defined for minimum stock.

mrp exception

Example of a Procurement in Exception

If no procurement rule is defined, the exception has to be corrected manually by the user. Once the exception is corrected, you can restart by clicking Retry. If you do not do that, Odoo will automatically recalculate on the next automated requirements calculation.

Manual Procurement

To procure internally, you can create a procurement order manually. Use the menu Warehouse > Schedulers > Procurement and click the Create button to do this.

mrp procurement

Encoding a New Procurement Order

The procurement order will then be responsible for calculating a proposal for automatic procurement for the product concerned. This procurement will start a task, a purchase order for the supplier or a production depending on the product configuration.

mrp procurement flow

Workflow for Handling a Procurement according to Product Configuration

It is better to encode a procurement order rather than direct purchasing or production. This method has the following advantages:

  • The form is simpler because Odoo calculates the different values from other values and defined rules: purchase date calculated from order date, default supplier, raw materials needs, selection of the most suitable bill of materials, etc.
  • The calculation of requirements prioritises the procurements. If you encode a purchase directly, you short-circuit the planning of different procurements.

Request Procurements

On the product form you have an Request Procurement shortcut button that lets you quickly create a new procurement order.

procurement request

Procurement Request


Odoo has more than 4,500 open source business apps.

Launch Odoo and make your company a better place.