Odoo import troubleshooting ยท External ID preflight
Duplicate External IDs in one CSV are a collision risk worth fixing before Import.
Odoo uses External IDs to identify records across imports and updates. If the same External ID appears on multiple rows that are supposed to represent different records, stop and review the file before importing.
External ID values that are blank where you expected stable identifiers, or the same value repeated on multiple rows unexpectedly.
Why duplicates deserve review
Odoo documents External IDs as stable identifiers used to recreate or update records and relations. A repeated External ID can therefore mean multiple rows are pointing at the same logical record rather than distinct records. Whether a duplicate is intentional depends on the import you are trying to perform, so the safe action is to inspect it rather than silently treating every repeated value as a new record.
Three checks before Import
- Confirm the duplicate is real. Make sure it is not whitespace, quoting, encoding, or delimiter damage making two different values look the same.
- Decide what the rows represent. If they are distinct records, give them distinct identifiers. If they intentionally target one record, verify that behavior against the target database.
- Use Odoo's Test step. A browser preflight can catch file-level duplicate IDs, but only the target Odoo instance can validate database-specific mappings, permissions, relations, modules, and existing records.
What Odoo Import Doctor can do
The free browser-local Odoo Import Doctor checks for duplicate or blank External IDs along with delimiter/row-width consistency, malformed quoting, encoding problems, blank headers, and optional header comparison against an Odoo export or template.
It does not inspect your private Odoo database. Database-specific validity remains UNKNOWN until Odoo tests the file against the real target instance.
Preflight the CSVOfficial Odoo 18 import/export documentation
This page is an independent troubleshooting guide and is not affiliated with or endorsed by Odoo. It does not guarantee a successful import.