Per-user journal access control for accounting teams
Assign which accounting journals each user can see and use. Invoices, bills, and payments filter automatically — built natively on Odoo Accounting.
Odoo has no built-in mechanism to restrict which accounting journals a user can access. Any user with Accounting rights can post to any journal — bank, cash, or otherwise — regardless of their role.
Assign allowed users directly on each journal or allowed journals directly on each user. Invoice, bill, and payment journal dropdowns filter automatically. ERP Managers always retain full access.
Everything access control needs
Every capability below is implemented in the module.
Per-Journal User Assignment
Open any journal form and assign one or more users in the Access Restrictions tab. Only those users will see and use that journal.
Per-User Journal Assignment
Open any user form and assign allowed journals from the Journal Access tab. Both directions of the relation stay in sync automatically.
Journal Access Matrix
A dedicated matrix view lists every journal with its allowed users and access status. Filter by restricted or open journals; edit allowed users inline.
Invoice & Bill Filtering
The journal dropdown on customer invoices and vendor bills shows only the journals the current user is allowed to use. Restricted journals are never offered.
Payment Journal Filtering
The bank and cash journal selector on payment forms is also filtered. Users can only register payments against journals they have access to.
ERP Manager Bypass
Users in the Accounting Manager group always retain access to every journal, regardless of the allowed users list. No configuration required.
Default-Open Behaviour
A journal with no users assigned remains open to everyone. Restrictions only apply once you add at least one user. No big-bang configuration needed on install.
Access Badge in Journal List
The journal list view shows an Access Status badge on every row: "Open to all", "Restricted to 1 user", or "Restricted to N users" at a glance.
Post-Time Enforcement
Access is also checked when an entry is confirmed. If a user attempts to post to a restricted journal via the API or a custom button, a named denial message is shown.
How it works
Restrict a Journal
Open a journal form, go to the Access Restrictions tab, and add the users who should have access.
Or Configure the User
Open a user form and assign journals from the Journal Access tab. Both sides stay in sync.
Filters Apply Automatically
Invoice, bill, and payment journal selectors show only permitted journals for the current user.
Managers Stay Unrestricted
ERP Managers retain full journal access at all times, no extra configuration required.
See it in action
Real screens from the module, captured on Odoo 17.
Journal list with the Access Status badge showing open and restricted journals at a glance.
All journals listed under Accounting › Configuration, with access status visible on each row.
Journal form with the Access Restrictions tab open, showing the list of allowed users for that journal.
Vendor Bills journal restricted to specific AP team members — only those users can post bills to this journal.
Journal Access Matrix: every journal on one screen with its access status and allowed users, editable inline.
Access matrix filtered to show only restricted journals, for a quick audit of which journals have user restrictions active.
Invoice form with the journal dropdown filtered to only show journals the current user is permitted to use.
Vendor Bills form with the journal field restricted to only the journals accessible to the AP clerk.
Customer invoice form: the journal selector lists only the journals the logged-in user is allowed to access.
Frequently asked
What happens if no users are assigned to a journal?
A journal with an empty allowed-users list remains open to all accounting users. Restrictions only activate once you add at least one user, so you can roll out access control gradually journal by journal.
Can an ERP Manager bypass the restriction?
Yes. Users in the Accounting Manager group are always allowed on every journal, regardless of the allowed-users configuration. Technical administrators (System) are also unaffected by restrictions.
Is access enforced only in the UI or also at post time?
Both. The journal dropdown is filtered in the form view, and access is rechecked when an entry is confirmed. If a user attempts to post to a restricted journal through the API or a custom workflow, a named denial error is raised.
Can I manage access from the journal or the user record?
Yes, both directions work. Adding a user to a journal’s Access Restrictions tab is the same as adding that journal to the user’s Journal Access tab. The relation is bidirectional and always in sync.
Get in Touch
Have questions or need customization? Every purchase includes 30 days of free support — we are here to help.
Visit Our Website
www.cerevantix.comExplore our apps, services, and portfolio.
Empowering growth through technology.
Fine-grained journal access control built natively on Odoo Accounting.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Lines of code | 280 |
| Technical Name |
cerevantix_journal_restriction_on_users |
| License | OPL-1 |
| Website | https://www.cerevantix.com |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module