Skip to Content

Store Import to Odoo — Migration Foundation (free)

Store migration and import to Odoo — Shopify, WooCommerce, PrestaShop, Wix, eBay: products, variants, customers, orders, categories, images. CSV field mapping, trial run rolled back, rejection report with the reason, resume where it stopped, no duplicate on re-run. Migrate your shop catalog, one-off, free base.

0.00 € 0.00 €

Free
Cette application n'est pas vendue ici : utilisez les boutons Odoo Apps Store ou Omnifloo ci-dessous.
Terms and Conditions
30-day money-back guarantee
Shipping: 2-3 Business Days

Store migration and import to Odoo — Shopify, WooCommerce, PrestaShop, Wix, eBay: products, variants, customers, orders, categories, images. CSV field mapping, trial run rolled back, rejection report with the reason, resume where it stopped, no duplicate on re-run. Migrate your shop catalog, one-off, free base.

View on the Odoo Apps StoreTry it on Omnifloo

Overview

Store import to Odoo — the base module

Migrating a catalog from Shopify, WooCommerce, PrestaShop, Wix or eBay almost always goes the same way: a spreadsheet, a sleepless night, and duplicates discovered three weeks later. Existing import modules import — they do not migrate: they cannot resume after an interruption, they do not tell you what they rejected, and re-running them doubles the catalog.

This module sets up the mechanism once, and knows no platform.

Also searched as: Shopify import Odoo, WooCommerce migration Odoo, PrestaShop import Odoo, migrate store to Odoo, CSV product import Odoo, catalog migration Odoo.

Never a duplicate, even when rerun

Every imported record keeps the ID it had in its source store, in a searchable register. A second run finds what already exists and updates it: it recreates nothing. This is the module's first promise, and the first of its tests. Delete a product by hand and run it again: it comes back. Run it again: it is not duplicated.

A migration that really migrates

An import of twenty thousand products interrupted at twelve thousand resumes at twelve thousand. Each step stores its cursor after every page actually written — never before, which would skip records on resume.

Test mode writes for real, then rolls back

Everything is replayed — reading, matching, writing, Odoo's checks — inside a rolled-back transaction. You get the full report without a single line entering the database. A trial run that merely simulated would lie precisely where you rely on it: a missing tax, an unknown currency, a field made mandatory by another module cannot be guessed, they have to be observed. This is the default state of a new migration.

The report, line by line

What went through, what was rejected and why, with the source ID and the offending field. Exportable to CSV, groupable by reason: “412 lines rejected for missing price” can be fixed; “412 lines rejected” cannot. Unchanged records are counted separately from updated records, which makes the second run readable.

Field mapping is data, not code

Which source field maps to which Odoo field, with the conversion to apply and whether it is required. Editable on screen, checked on entry: a non-existent Odoo field is rejected immediately, not at the three-thousandth product of an overnight migration.

No network calls in a process that serves a page

Everything goes through a queue: timestamped batch, manual resume as the only way back, orphaned batches flagged and never restarted on their own. An import therefore never blocks the use of Odoo while it runs.

Useful on its own, with no connector

The foundation reads CSV and JSON files, with encoding and delimiter detection. A merchant who has already exported their catalog needs nothing else: they drop in the file and import it, with the same idempotency, the same dry-run mode and the same report.

What the module does not do

It does not connect to any store on its own: each platform is provided by a satellite module. It does not run a permanent synchronization — it is a migration tool, not a sales connector. It transfers nothing from Odoo to a store: it imports, it does not export.

Specifications

PriceFree
LicenseLGPL-3
Odoo series19.0: published on the Odoo Apps Store; 20.0: published on the Odoo Apps Store
Version1.0.0
EditionOdoo Community / on-premise
Technical namedyo_import_boutique
DomainConnectors and automation

Price excluding VAT as displayed on the Odoo Apps Store; purchase and installation are done on the Store or through your Omnifloo instance.