POS User Restrict
Limit each cashier to the shops they are allowed to work in
Assign allowed Points of Sale per user and enforce access across POS configurations, sessions, orders, and payments. POS Users see only their assigned shops; POS Managers keep full visibility across the business.
Key Features
Per-User POS Access
Set Allowed POS on each user. Staff with the Point of Sale / User role can open and work only in the shops you assign.
Record-Level Security
Record rules filter POS configurations, sessions, orders, and payments so users cannot browse data from shops outside their assignment.
Managers Unrestricted
Users with the Point of Sale / Manager role retain full access to all points of sale and related records for supervision and reporting.
How It Works
Configure on the user, enforce everywhere POS data is listed
Set allowed shops on the user
Go to Settings → Users & Companies → Users, open a cashier account, and on the Access Rights tab set Point of Sale to User. Under Points of Sale, pick the permitted registers in Allowed POS and save.
Restricted user sees only assigned shops
When that user logs in, the Point of Sale dashboard and menus list only their allowed registers. Sessions, orders, and payments follow the same rules — no access to other shops’ data.
Configuration
One field on the user form — no extra menus
- Install the module (requires
point_of_sale). - Ensure the user has the Point of Sale / User role under Access Rights → Sales.
- Go to Settings → Users & Companies → Users and open the user.
- On Access Rights, set Allowed POS to the permitted points of sale.
- Save. The user immediately sees only assigned shops and related POS data.
Benefits
Separation by location
Multi-shop retailers can give each branch team access only to their own register and orders, without creating duplicate user accounts.
Less data exposure
Cashiers cannot open sessions, orders, or payments from shops they are not assigned to, reducing accidental or intentional cross-shop browsing.
Immediate updates
Changing allowed POS on a user takes effect as soon as you save — no server restart required.
Managers stay in control
POS Managers are unaffected by the restriction rules and can supervise all locations from a single account.
Feature Summary
For POS users
Allowed POS field on the user form.
Filtered access to POS configurations.
Filtered sessions, orders, and payments by assigned shop.
Empty assignment blocks all POS access.
Behind the scenes
res.users.pos_config_ids Many2many to pos.config.
ir.rule on config, session, order, and payment models.
Registry cache cleared on user write when allowed POS change.
Manager group rules allow all records.
Technical Details
Server side
-
res.users — adds
pos_config_idsand clears the registry cache when allowed POS are updated. -
ir.rule — domain filters on
pos.config,pos.session,pos.order, andpos.paymentforpoint_of_sale.group_pos_user. -
Manager rules — unrestricted domains for
point_of_sale.group_pos_manager.
Front end
- No POS frontend assets — enforcement is entirely server-side via record rules.
- User form extension on the Access Rights tab with a many2many tags widget.
Compatibility & Dependencies
Version
Built for Odoo 19.0, compatible with Community and Enterprise.
Dependencies
Requires point_of_sale only.
Support
Brought to you by Crowe Maldives LLP
Author
Crowe Maldives LLP
Website
www.crowe.mv
Licensed under LGPL-3.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Point of Sale (point_of_sale)
• Discuss (mail) • Inventory (stock) • Invoicing (account) |
| Lines of code | 80 |
| Technical Name |
crowe_pos_user_restrict |
| License | LGPL-3 |
| Website | https://www.crowe.mv |
Please log in to comment on this module