This module allows you attach several customizable exceptions to your sale order in a way that you can filter orders by exceptions type and fix them.
This is especially useful in an scenario for mass sales 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 sales orders and order lines, so orders that break your rules are flagged and blocked from confirmation until someone reviews or ignores them.
This module adds a flexible exception system on top of Sales. You create rules that describe what is wrong with an order or a line, and Odoo automatically marks the affected records.
Where it appears: - A new menu "Sale Exception Rules" under Sales > Configuration lists the rules for sales orders and lines. - On a sales order form, a red alert shows the exceptions blocking confirmation, with an "Ignore Exceptions" button for managers. - On the order lines list, lines with exceptions are highlighted in red, and each line form shows its own exception alert. - In the quotations and orders lists, the main exception is shown next to the status, and a "Blocked in draft" filter finds orders with exceptions.
Business rules and automatic behaviour: - When you confirm an order, Odoo checks the rules; if any fail, a popup lists them and confirmation is stopped unless the user chooses to ignore them. - A company setting controls whether that popup is shown or only the red alert. - When an order is reset to draft, the ignore flag is cleared so exceptions are checked again. - A scheduled job (disabled by default) can re-check all draft orders every 20 minutes.
It touches sale.order, sale.order.line, exception.rule, res.company and res.config.settings. Several example rules are provided but inactive.
Depends on
Required by other modules
Menus it adds
Models and fields (6)
- sale.order · new model
- res.company · extends an existing modelsale_exception_show_popup (Sale Exception Popup)
- exception.rule · extends an existing modelmodel, sale_ids (Sales)
- sale.order.line · new modelexception_ids (Exceptions), ignore_exception (Ignore Exceptions), exceptions_summary, is_exception_danger
- res.config.settings · extends an existing modelsale_exception_show_popup
- sale.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 17.0
Confirmed on 2026-11-03 in branch 17.0 of OCA/sale-workflow.
terminal Installation and usage
OCA documentation · Odoo 19.0Configuration
Source · Odoo 19.0If you are going to use Customer sale warning and Product warning, for setting corresponding information, you need to:
- Go to Settings \> User & Companies \> Users.
- Edit your user.
- Check "A warning can be set on a product or a customer (Sale)" group.
- Install sale_management addon.
Usage
Source · Odoo 19.0Not Enough Virtual Stock: #. Go to Sales \> Products \> Products. #. Create new storable product without stock available. #. Go to Sales \> Orders \> Quotations #. Create new quotation. #. Add product without stock available. #. An exception will be displayed.
No ZIP code on destination: #. Go to Contacts. #. Edit or create new contact. #. Set empty zip code. #. Go to Sales \> Orders \> Quotations #. Create new quotation. #. Set delivery address with no zip code. #. An exception will be displayed.
Product warning: #. Go to Sales \> Products \> Products. #. Edit or create new product. #. Go to Sales tab. #. Set your desired warning option under the Warning when Selling this Product group. #. Set some warning message. #. Go to Sales \> Orders \> Quotations #. Create new quotation. #. Add product with warning message. #. An exception will be displayed.
Partner warning: #. Go to Contacts. #. Edit or create new contact.
- Go to Internal notes tab. #. Set warning option according to
Warning on the Sales Order group. #. Set some warning message. #. Go to Sales \> Orders \> Quotations #. Create new quotation. #. Set partner with warning message. #. An exception will be displayed.
No verified information in OCA: Installation.
Installation 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.