This module allows to add a substate to an expense report. For each expense report state you can define a substate. We this module you can define substate which allow you to extend expense report workflow. For example, you can add substate "To Verify" if the order can not be approved without document checked and verified
auto_awesome What this module does
AI-generated from the code · Odoo 15.0Adds a secondary status (sub state) to expense reports, so you can track extra steps like "To Verify" or "Checked" inside the normal expense report workflow.
This module extends expense reports with an additional status layer called a sub state, on top of the standard states (Draft, Submitted, Approved, Posted, Paid, Refused).
- On the expense report form, a clickable status bar shows the sub state, so users can move a report through extra steps such as "To Verify", "Checked" and "Verified".
- The expense report list view can display the sub state as a badge, and the search view adds a "Sub State" filter that lets you group reports by sub state.
- A configuration record is created for the Expense Report model, linking sub states to the standard states: Draft, Submitted, Approved, Posted, Paid and Refused.
- Demo data defines three sub states for the Submitted stage: "To Verify", "Checked" and "Verified". The "Verified" sub state is linked to an email template named "Verified", which sends a message to the expense report's user saying the report was verified by the approver team.
- The module touches the expense report model (
hr.expense.sheet) and the sub state configuration model (base.substate.type), and it depends on the base sub state and expense modules.
Depends on
Models and fields (2)
- hr.expense.sheet · new model
- base.substate.type · extends an existing modelmodel
Text generated by AI (DeepSeek) from reading the Odoo 15.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: 2 confirmed, 7 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
OCA documentation · Odoo 15.0Usage
Source · Odoo 15.0- Go to Settings > Technical > Sub State Configuration > Base Substate and add a "Base Substate". If necessary you can add "target State values" (e.g. define a substate for "cancel" state). Substate sequence is very important.
- Create a expense report and check if the substate are displayed on the header of form view. Check if you can't set substate defined for expense report if sate is a To be approved.
No verified information in OCA: Installation, Configuration.
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.