This module allows you to attach several customizable exceptions to your purchase order in a way that you can filter orders by exceptions type and fix them.
This is especially useful in a scenario for mass purchases order import, because it's likely some orders have errors when you import them (like product not found in Odoo, wrong line format etc.)
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Lets you define custom exception rules on purchase orders and order lines, see which orders are blocked, and fix or ignore them before confirming. Blocked orders can be filtered and reviewed in bulk.
This module adds a flexible exception system to purchase orders. You create rules under Purchase > Configuration > Purchase Exception Rules, choosing whether each rule applies to a purchase order or a purchase order line and writing the condition that makes an order fail.
When a rule is triggered, the order shows a red warning banner on the purchase order form listing the exceptions, and the exception tags appear next to the company field. A column in the purchase order list shows the main exception, and a filter called "Blocked in Draft" lets you find all orders with exceptions at once.
- Confirming an order that has exceptions opens a popup asking you to review them; you can only bypass blocking exceptions if you have the exception manager rights.
- Users with those rights can tick "Ignore Exceptions" on the order or use the "Ignore Exceptions" button in the warning banner.
- Setting an order back to draft clears its exceptions and the ignore flag.
- A scheduled job (disabled by default) can re-test all draft orders every 20 minutes.
Two sample rules are provided but inactive: one checks that the vendor has an email, the other that line quantities are positive. The module extends purchase.order, purchase.order.line and exception.rule, and adds a confirmation wizard.
Depends on
Required by other modules
Menus it adds
Models and fields (4)
- exception.rule · extends an existing modelmodel, purchase_ids (Purchases)
- purchase.order · new model
- purchase.order.line · new modelignore_exception (Ignore Exceptions)
- purchase.exception.confirm · new modelrelated_model_id
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-03Confirmation status: 8 confirmed, 1 with no information of 9 versions.
Sources · Odoo 19.0
Confirmed on 2026-11-03 in branch 19.0 of OCA/purchase-workflow.
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.