Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
•
Contacts (contacts)
• Discuss (mail) |
Lines of code | 134 |
Technical Name |
restrict_duplicate_contacts_h |
License | AGPL-3 |
Website | http://heosnetperu.com |
Versions | 16.0 17.0 18.0 |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
•
Contacts (contacts)
• Discuss (mail) |
Lines of code | 134 |
Technical Name |
restrict_duplicate_contacts_h |
License | AGPL-3 |
Website | http://heosnetperu.com |
Versions | 16.0 17.0 18.0 |
Restrict Duplicate Contacts
Prevent duplicate contacts per company across create, quick create, and edit flows.
Per company Quick create safe Multi-create awareWhat does this module do?
>Restrict Duplicate Contacts enforces uniqueness of selected contact fields per company.
It validates on standard create/write, on quick create from Many2one fields, and during multi-create operations in Odoo 17.
Choose which fields (e.g., name
, email
, phone
, vat
) must be unique, and keep your partner data clean across companies.
Key features
Per-company uniqueness
The scope of validation is restricted to the current company and includes shared contacts.

Configurable fields
Select any res.partner
char/binary fields via Settings → Contacts (many2many to ir.model.fields
).
Quick create protection
Blocks duplicates when using Many2one → “Create and edit” (overrides name_create
).

Native Odoo integration
Works seamlessly with Contacts and any app using partners (Sales, Accounting, etc.).

Setup (2 minutes)
Enable
- Go to Settings → Contacts.
- Turn on Unique Contacts (per company).
- Select the fields to enforce (e.g.,
name
,email
,phone
,vat
). - Save.
Behavior
- Blocks duplicates on create and quick create.
- Skips the same record and contacts under the same commercial partner.
- Search scope defaults to the current company; you can include shared contacts (
company_id=False
) if needed.
Benefits
- 🔒 Data integrity: no duplicates creeping into your companies.
- ⚡ Operational efficiency: clean partner records, fewer corrections.
- 🌐 Multi-company ready: rules are company-scoped and configurable.
- 🧩 Zero friction: works with quick create and standard flows out of the box.
Keep your contacts clean
Enforce per-company uniqueness and stop duplicates at the source.
Get the module
Please log in to comment on this module