OdooWiki OCA HUB

Expense Exception

hr_expense_exception folder_open OCA/hr-expense open_in_new
Human Resources License: AGPL-3

This module allows you attach several customizable exceptions to your expense report in a way that you can filter orders by exceptions type and fix them.

This is especially useful in an scenario for mass expense import, because it's likely some expenses 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 18.0

Adds customizable exception rules to expense reports and expenses, so you can block or flag reports that break your own rules and review them before submitting.

This module lets you define your own exception rules for expense reports and individual expenses. Rules are managed from a new menu under the Expenses configuration, where you can create conditions such as "employee has no work email" or "expense quantity is not positive". Two example rules are included but switched off by default.

When a report is submitted, Odoo checks the rules automatically. If a rule fails, a red warning appears at the top of the expense report showing which exceptions are blocking it. Managers in the exception rule manager group can tick "Ignore Exceptions" to bypass the block, or use the "Ignore Exceptions" button in the warning. A popup wizard asks for confirmation when exceptions are outstanding.

Expense reports can be filtered by "Blocked in Draft" in the search view, and the main exception is shown in the report list. Resetting a report to draft clears its exceptions and the ignore flag. A scheduled job (disabled by default) can test all draft expense reports every 20 minutes for exceptions.

The module extends hr.expense.sheet, hr.expense and exception.rule, and adds a confirmation wizard.

Depends on

hr_expensebase_exception

Menus it adds

menu_expense_sheet_test
Models and fields (4)
  • hr.expense · new modelignore_exception (Ignore Exceptions)
  • exception.rule · extends an existing modelmodel, expense_sheet_ids (Expense Reports)
  • hr.expense.sheet · new model
  • expense.sheet.exception.confirm · new modelrelated_model_id

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-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 3 confirmed, 6 with no information of 9 versions.

Sources · Odoo 15.0

Confirmed on 2026-11-03 in branch 15.0 of OCA/hr-expense.

terminal Installation and usage

No verified information

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.

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.