This module allows you to add a substate to a journal entry. For each journal entry state you can define a substate. With this module, you can define substates which allow you to extend the accounting workflow.
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Adds a secondary status (substate) to journal entries and invoices, so you can track extra steps like 'To Verify', 'Checked' or 'Verified' on top of the standard Draft/Posted status.
This module extends the accounting workflow by letting you attach an extra status, called a substate, to journal entries and invoices. Each substate is linked to a main status (for example Draft or Posted), so you can define your own intermediate steps such as 'To Verify', 'Checked' or 'Verified'.
Where you see it in Odoo: - On the journal entry / invoice form, a new status bar appears in the header showing the substate and letting you click to change it. - In the invoice list, the substate is shown as a small badge next to each line. - In the invoice search filters, you can filter by substate and group entries by substate.
Automatic behaviour: - A substate can be linked to an email template. The module ships a sample 'Verified' template that emails the entry's responsible user to say their journal entry was verified by the accounting manager. - Substate types are configured for the account.move model, with target states Draft and Posted.
It touches the journal entry / invoice model (account.move) and the substate configuration model (base.substate.type). Substate records themselves are managed through the base substate configuration, where you set the name, order and, optionally, the email template.
Depends on
Models and fields (2)
- account.move · new model
- base.substate.type · extends an existing modelmodel
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: 4 confirmed, 5 with no information of 9 versions.
Sources · Odoo 16.0
Confirmed on 2026-11-03 in branch 16.0 of OCA/account-invoicing.
terminal Installation and usage
OCA documentation · Odoo 19.0Usage
Source · Odoo 19.0- Go to Settings \> Technical \> Database Structure and Add "Base substate". If necessary you can add "target State values" (ex define a substate for "cancel" state). Substate sequence is very important.
- Create a journal entry and check if the substate are displayed on the header of form view. Check if you can't set substate defined for journal entry if state is a draft.
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.