OdooWiki OCA HUB

Expense Report Sub State

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

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.0

Adds 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

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

Confirmation 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.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.

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.