Sales documents permissions by channels (teams)
This module adds a new "Sale" group called "User: Team Documents Only", that includes the proper permissions for showing only the information related to that user sale team (having assigned that team/channel or no team at all, independently from the assigned salesman):
- Contacts.
- Quotations/Sales Orders (implemented in sales_team_security_sale)
- Leads/Opportunities (implemented in sales_team_security_crm)
It also handles the sync (auto-creation and remove) of followers in company partners and childs of them according to salesmans. Any example about it: - Partner company \> Salesman: Admin - Partner company, Contact 1 \> Without salesman - Partner company, Contact 2 \> Salesman: Demo All these partners have these followers: Admin + Demo
And finally, there are rules for partners to be restricted to the own ones for the group "User: Own Documents Only" for being coherent with the permission scheme. Someone with this permission will see:
- Contacts without salesman assigned.
- Contacts with them as salesman.
- Contacts with them as follower.
For keeping consistent accesses, followers of the main and shipping/invoice contacts are synced according the salesman of the children contacts
Additionally, users with the "User: Team Documents Only" group can see contacts created by any salesman that belongs to the same sales team(s), allowing team members to view and access contacts managed by their teammates.
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Adds a new sales permission group, "User: Team Documents Only", so users only see contacts linked to their sales team or with no salesman, and automatically keeps salespeople as followers on company and invoice/delivery contacts.
This module changes how contacts are visible and followed in Odoo Sales.
- A new access group, "User: Team Documents Only", is created under the Sales permissions. Users in this group can only see contacts that belong to their sales team or that have no salesman assigned, instead of seeing every contact.
- The existing "User: Own Documents Only" group is also restricted: users only see contacts they follow, their own contact, contacts with themselves or no salesman, and (for team managers) contacts of salespeople in their teams.
- Followers are kept in sync automatically. When a contact is created or its salesman changes, the salespeople of the company and of its invoice/delivery contacts are added as followers. When the salesman changes, the previous salesman is removed from those key contacts first.
- On installation, existing companies with salespeople are updated so the right followers are added.
- On uninstallation, the group settings are reverted.
The rules apply to res.partner records and are enforced through record rules on ir.rule. The module depends on sales_team and works together with the sales and CRM extensions that apply the same team-based visibility to quotations, sales orders, leads and opportunities.
Depends on
Required by other modules
Models and fields (2)
- ir.rule · extends an existing model
- res.partner · extends an existing modeluser_id
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: 8 confirmed, 1 with no information of 9 versions.
Sources · Odoo 16.0
Confirmed on 2026-11-03 in branch 16.0 of OCA/sale-workflow.
terminal Installation and usage
OCA documentation · Odoo 19.0Installation
Source · Odoo 19.0At installation time, this module syncs followers in parent contacts and invoice/shipping addresses. If you have a lot of contacts, this operation can take a while.
Configuration
Source · Odoo 19.0- Go to Configuration \> Users & Companies \> Users.
- Open or create a user.
- On the section "Sale", select "User: Team Documents Only".
No verified information in OCA: Usage.
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.