Data migration · Browser-local relation graph

Odoo Relational CSV Import Preflight

Inspect a bundle of Odoo import files before IDs, relationships or import order create failures. Declare models and relation rules, add local current exports/templates, then inspect conditional order and update identity risks.

Files stay in this browser memory. No source upload or retention, Odoo login, API, live import, database write or external automation. Local matches cannot prove live tenant state or model-specific requirements.

Examples are synthetic. Maximum eight files, 10 MB/file, 10,000 records/worksheet, 200 columns, 20 relationships/file and 100 members/list. The graph is capped at 100,000 edges.

Local file 1

No file selected.

What local evidence can establish

External IDs are exact and global across models. Name and database-ID relations are scoped to the explicitly declared target model. A current export plus a same-identity update represents one entity, but an old name changed by the import is not promised to remain usable. Update identity correlation requires an explicit prior ID or unique declared stable key.

Templates supply local structure, not records. One2many continuation is checked only with explicit compatible parent/child fields and models. Original within-file order is retained; the manifest suggests file order only where the resolved local graph permits it. Missing target snapshots, hidden schema and live changes remain unresolved or unknown.

CSV must be UTF-8. XLSX formulas/errors are rejected. Typed workbook dates preserve their complete time in ISO UTC; typed numbers record their original number format. Identifier precision/formatting risk requires a text-cell export. No type, locale, ID or tenant fact is invented.

Official Odoo import guidance