Email Validation & DuplicatesEmail Validation & Duplicates

Live on the Odoo App Store

Email Validation and Duplicate Contacts for Odoo

Find unusable contacts before they cost you an invoice.

  • Odoo 16, 17, 18 and 19. Community or Enterprise, on Odoo.sh or self-hosted.
  • USD 19, one-time purchase. OPL-1, published by Tripster Developers.
Email Validation and Duplicates for Odoo by Tripster Developers

Features

What it checks

Contact data fails quietly. A malformed email address does not announce itself; it just means an invoice never arrives and nobody finds out until the account is overdue. Two contacts sharing an address means the follow-up went to the wrong person.

This audits your contacts for exactly those faults: the ones that silently break invoicing, delivery and follow-up.

Malformed email addresses

The ones that look fine at a glance and bounce. Each is named: no @ sign, more than one @, a space, a comma instead of a dot, a domain with no dot, misplaced dots, a suspicious ending, illegal characters or too long.

Contacts sharing an email address

So a follow-up cannot reach the wrong person unnoticed. Matched across every active contact, whatever the capitals or stray spaces.

The fields an invoice cannot be issued without

Flagged before you try to issue one. A company with no country counts as an issue, because it drives tax and reporting. A missing email, phone, street or city is shown for visibility, never counted.

No false alarms on valid addresses

Plus addressing, subdomains, long modern domain endings and internationalised addresses are accepted, because they are valid.

Tidy Email Addresses

An action on the contacts list trims stray spaces and lowercases the domain on the contacts you select. The part before the @ is never changed.

An issue count on every contact

The audit list opens worst first and is editable in place, so a fix is one click from the problem.

How it works

Three steps to contacts you can reach.

Every check is done on the address as stored. Nothing is sent to a mail server or a verification service.

  1. 01

    Install it

    Add the module to your addons path or your Odoo.sh branch and install it from the Apps menu. It adds its own Contact Health menu.

  2. 02

    Rescan contacts once

    Run Contact Health > Rescan Contacts so contacts that existed before the install are checked. After that, a contact is re-checked whenever its email, phone, address, country or company flag changes.

  3. 03

    Fix the worst first

    Contact Health > Audit opens on contacts with issues, most issues first. Filter to Unusable Email, Shared Email or Company Without Country and correct them in place. Merging stays with you.

Technical Edge

What it installs, and what it touches.

A small module that reads your contacts: one dependency, one menu, and a handful of stored audit fields on the contact.

Technical Stack

Checked in the module source and the live Odoo App Store listing, September 2026

Odoo versions
16.0 to 19.0Four series, each certified with 17 automated tests on a real Odoo image before it is listed.
Editions
Community and EnterpriseOn Odoo.sh or self-hosted. Not Odoo Online, which cannot run third-party Python modules.
Depends on
Base (standard)Odoo's core module only. No external Python libraries.
Adds
Contact Health menuAn Audit list with filters for each fault, a Rescan Contacts action, and Tidy Email Addresses on contact lists.
Fields
Five stored audit fieldsEmail check, what is wrong, not filled in, issue count and contact OK, computed on the contact.
Scheduled actions
NoneChecks recompute when a contact changes. The one-off rescan covers contacts created before install.
Reads and writes
Reads your contactsIt writes only its own audit fields, plus Tidy Email Addresses when you run it on contacts you select.
Network
Never contacts a mail serverNo DNS lookup, no SMTP probe and no verification API. Every check is done on the address text in your database.

Pricing

One price, paid once.

Bought on the Odoo App Store under OPL-1, for the Odoo version you run.

Email Validation & Duplicates

USD 19

One-time purchase · OPL-1 · Odoo 16.0 to 19.0

  • Every check on this page
  • Community and Enterprise
  • Odoo.sh and self-hosted
  • Email support from the people who wrote it
View on the Odoo App Store ↗

Custom work

On quote

Scoped with you before any work starts

  • Changes to fit how your contacts are run
  • Built by the team that wrote the module
  • Separate from module support
Talk to us

Built For

Who this is for

Teams whose contact database has been added to by more than one person, or imported at least once. Both are enough to produce duplicates that nobody knowingly created. It is worth running before any bulk email or invoicing run rather than after.

  • Why these three faults specifically.They share a property: nothing tells you. A malformed address produces a bounce that lands in a mailbox nobody reads. Two contacts on one address means half your follow-up reaches the wrong person and the other half looks like it worked. A missing invoicing field only surfaces when someone tries to invoice, which is usually the moment you least want a blocker.
  • None of them fix themselves.None of them are visible in the contacts list, and none of them get better on their own.

FAQ

Questions

What exactly does it check?

Malformed email addresses, contacts sharing one address, and the fields an invoice cannot be issued without. All three are flagged before you try to issue anything.

Why those three faults and not a longer list?

They share one property: nothing tells you. A malformed address bounces into a mailbox nobody reads, two contacts on one address send the follow-up to the wrong person, and none of it is visible in the contacts list or improves on its own.

Does it delete or merge duplicates automatically?

No. It reports what it finds. Merging contacts is a judgement call about which record is the real one, and that stays with you.

Which Odoo versions are supported?

Every listed Odoo version is certified on each release by installing the module into a real Odoo image of that series and running the full test suite. A version is only listed once it passes.

Does it work on Odoo Online?

Odoo Online cannot run third-party modules that contain Python, which is Odoo's rule rather than ours. Odoo.sh and self-hosted installs are both fine.

How do I get help?

Email hello@tripsterdevelopers.com with your Odoo version, the module version and what you did. If a contact is reported in a way you do not expect, include the email address exactly as it is stored, which answers most questions immediately.

Does it work on Community as well as Enterprise?

Yes. Odoo 16, 17, 18 or 19, Community or Enterprise. The same build installs on either edition.

How do I install it?

Download the module from its Odoo Apps Store page, place the folder in your addons path, restart Odoo, then update the apps list and install it from the Apps menu. Odoo.sh users add it to the repository branch instead.

Will it survive an Odoo upgrade?

Each listed Odoo version has its own build. When you move to a new major version, install the build for that version. There is no configuration to carry over, and Rescan Contacts checks every contact again.

Where is my data processed?

Inside your own Odoo instance. The module runs on your server and talks to your own systems. We do not host your records and we do not receive a copy of them.

Can I read and adapt the source?

Yes. Odoo modules are distributed as readable Python and XML, so your own developer can review exactly what runs and extend it under the license the module ships with.

What should I send when something is wrong?

Your Odoo version, the module version from the Apps screen, and the contact and address involved. Those three together are usually enough to answer in one reply rather than four.

Do you take feature requests?

Yes, at the same support address. Say what you are trying to achieve rather than the field you want added; it is often already possible, and when it is not, the underlying goal is what shapes the change.

Is there a public changelog?

Each release note is published on the module's Odoo Apps Store page, against the version number shown on the Apps screen in your own database.

Who builds and maintains these modules?

Tripster Developers, a Shopify Partner and Odoo module publisher based in Auckland, New Zealand. The same team writes the code and answers the support mail.

Miko Apps

Find unusable contacts before they cost you an invoice.

Email Validation & Duplicates is live on the Odoo App Store, published by Tripster Developers.

Miko for Odoo

Other Miko apps for Odoo

Published and maintained by Tripster Developers on the Odoo App Store. See all Odoo apps.

Not on Shopify yet?

Start a free Shopify trial, then add Miko apps when you are ready.

Set up your store in minutes and try it with your own products. Loyalty, wholesale pricing, AI descriptions and the rest of the Miko apps install in one click once your store is live.