Installation
What Approval Matrix Pro requires, how to install it, and how to check the install worked.
Requirements
- Odoo 18.0, Community or Enterprise
- Sales (sale) and Invoicing (account) — the two models this module approves
No external service, no API key, no outbound connection of any kind.
Install
- Put technovision_approval_matrix in your addons path.
- Update the apps list and install Approval Matrix Pro.
It adds an Approvals menu, three security groups, and an approval state to sales orders and customer invoices.
What installing it does not do
Nothing changes until you create a matrix, and nothing is intercepted even then. This module does not silently take over Confirm or Post. A record that matches a matrix shows a Request Approval button, and somebody presses it. Records only lock once a request is actually pending, and only if the matrix says to lock them.
That is a deliberate choice. A module that started blocking confirmations the moment it was installed would be a very unwelcome surprise on a Friday afternoon, and a workflow people cannot see the edge of is a workflow they route around.
What approval does drive, once the last level says yes:
- a sales order is confirmed, because one left in draft after being approved just confuses everyone;
- an invoice is not posted. Posting has period and sequence consequences; an approval says spend this, not book it. The accountant posts.
Give somebody the groups
Installation puts nobody in the new groups except the installing administrator. Until you assign them, only that person can design a matrix or decide on a request. Settings → Users & Companies → Users, then the Approvals section:
| Group | What it is for |
|---|---|
| Approval User | Everyone who raises requests, and anyone named as an approver |
| Approval Manager | The people who design matrices |
| Approval Administrator | Override, which is a separate power on purpose |
Assign Approval User widely — an approver who is not in it cannot see the request they are meant to decide on.
Check the install worked
- Approvals → Matrices → New. Pick Sales Order, add one level, name yourself as the approver, save and activate it.
- Open a sales order that matches the matrix's conditions. A Request Approval button appears on it.
- Press it. The order is now waiting, and — if the matrix has Lock during approval set — editing it raises an error saying so.
- Approvals → Requests. Yours is there, waiting on you.
If no button appears in step 2, the matrix is inactive or its conditions did not match that record. Open the matrix and check both; conditions are ANDed, so one that does not match is enough to rule the matrix out.
Upgrading
Upgrade the module in the usual way. Requests in flight keep their state and their history: the decision table is append-only and no upgrade rewrites it.
Uninstalling
Uninstalling removes the matrices, the requests and the decision history with them. Export the history first if you need to keep it — an approval trail is often the thing an auditor asks for, and it is gone once the tables are dropped. Records that were locked pending a decision are released.