Se rendre au contenu
Icône de Import PrestaShop vers Odoo — reprise de catalogue

Import PrestaShop vers Odoo — reprise de catalogue

par Dyonysos
Gratuit Odoo 20 Connecteur Contrôle qualité : Vérifiée OPL-1 (propriétaire Odoo)

PrestaShop to Odoo Migration — import products, combinations, categories, customers and orders from a PrestaShop store into Odoo through the Webservice API, in JSON. Reprise de catalogue PrestaShop, sans doublon et avec rapport de rejets.

Captures d'écran

Import PrestaShop vers Odoo

Reprendre son catalogue PrestaShop par le Webservice, en JSON.

Reprendre une boutique PrestaShop dans Odoo, avec la mécanique du socle : jamais de doublon si l'on relance, reprise là où l'import s'est arrêté, mode essai, et un rapport qui dit ce qui a été refusé et pourquoi.

Le Webservice, activé en deux minutes

PrestaShop 9 expose deux API ; la nouvelle ne couvre pas encore le catalogue. Le module interroge donc le Webservice historique — produits, combinaisons, catégories, clients et commandes. Activez-le dans Paramètres avancés, générez une clé avec le droit de lecture, et collez-la dans l'écran. Le Webservice rend du XML par défaut : le module demande le JSON explicitement.

Réglages des plateformes d'origine

Chaque plateforme dit si son connecteur a été éprouvé contre un vrai service.

Trois pièges de cette API, traités

L'authentification n'a pas de mot de passe : la clé de trente-deux caractères tient lieu d'identifiant. Les champs multilingues changent de forme — une chaîne sur une boutique monolingue, une liste de traductions sur une boutique bilingue ; le module accepte les deux, sans quoi il marcherait chez le premier client et tomberait chez le second. Le prix d'une combinaison est un écart, pas un prix : une déclinaison à 2,00 € sur un article à 11,20 € coûte 13,20 €. Le module nomme ce champ « écart de prix » pour que personne ne le prenne pour autre chose — l'erreur inverse importerait un catalogue à des prix dérisoires, et resterait invisible puisque les valeurs restent plausibles.

Jamais de doublon, et un rapport qui se lit

Toute la mécanique vient du socle gratuit dyo_import_boutique : chaque enregistrement garde l'identifiant de sa boutique d'origine, un second passage met à jour au lieu de recréer, un import interrompu repart où il s'est arrêté, et le mode essai rejoue tout — contrôles d'Odoo compris — sans rien écrire.

Second passage d'une migration : aucun enregistrement créé

Le second passage ne crée rien : il reconnaît ce qui est déjà là.

Rapport de migration ligne par ligne avec le motif de chaque rejet

Ce qui est passé, ce qui a été rejeté, et pourquoi — exportable en CSV.

Éprouvé contre un vrai PrestaShop

Aucune démonstration publique de PrestaShop n'expose son Webservice. L'éditeur a donc monté une instance PrestaShop 8 complète, Webservice activé et seconde langue installée, et y a fait tourner le module le 14 septembre 2026 : lecture du catalogue de démonstration, champs multilingues sous leur forme de liste, combinaisons rattachées à leur produit, pagination, et un import complet relancé deux fois sans produire un seul doublon.

L’application en mouvement

Le module en marche, enregistré dans le vrai client Odoo 19 : dyo import ligne (fiche), dyo import ligne, dyo import empreinte puis dyo import tache. Ce n’est pas un montage — ce sont les trames du navigateur sur le module livré, pris sur sa propre base.

Vidéo MP4 — 129 ko, 1280 px, 3.3 s, 4 écrans. Une amorce animée est aussi livrée en GIF (74 ko, 560 px) pour les contextes qui n’affichent pas la balise vidéo.

Amorce animée du parcours de dyo_import_prestashop
Amorce GIF — 74 ko. Enregistrement réel du client Odoo 19 sur une base dédiée à ce module, avec les données de démonstration livrées avec lui.

Ce que le module ne fait pas

  • Il ne synchronise rien en continu : c'est un outil de reprise, pas un connecteur de vente.
  • Il n'écrit rien dans PrestaShop.
  • Il ne reprend pas les images, qui sont un flux binaire distinct chez PrestaShop.

DYONYSOS — Odoo 20 Community — exige le socle gratuit dyo_import_boutique

Import PrestaShop vers Odoo — reprise de catalogue — capture 1
Import PrestaShop vers Odoo — reprise de catalogue — capture 1
Import PrestaShop vers Odoo — reprise de catalogue — capture 2
Import PrestaShop vers Odoo — reprise de catalogue — capture 2
Import PrestaShop vers Odoo — reprise de catalogue — capture 3
Import PrestaShop vers Odoo — reprise de catalogue — capture 3
Import PrestaShop vers Odoo — reprise de catalogue — capture 4
Import PrestaShop vers Odoo — reprise de catalogue — capture 4
Import PrestaShop vers Odoo — reprise de catalogue — capture 5
Import PrestaShop vers Odoo — reprise de catalogue — capture 5

Ce que l'application ne fait pas

  • Il ne synchronise rien en continu : c'est un outil de reprise, pas un connecteur de vente.
  • Il n'écrit rien dans PrestaShop.
  • Il ne reprend pas les images, qui sont un flux binaire distinct chez PrestaShop.

Applications du magasin nécessaires

Modules Odoo Community utilisés

Aucun.

SérieVersionÉtatPubliée le
20.020.0.1.0.0 Disponible 02/10/2026
19.019.0.1.0.0 Disponible

Fiche générée depuis le code de l'éditeur (dépôt privé, branche 20.0) : le code source n'est pas publié.

Contrôle automatique du magasin (distinct de l'éditeur), appliqué à toutes les applications. Conforme.

ContrôleRésultatEffet si absent
Manifeste lisible sans exécution conforme bloquant
Licence reconnue (OPL-1) conforme bloquant
Aucune dépendance vers Odoo Enterprise conforme bloquant
Aucun import de code Enterprise conforme bloquant
Aucun en-tête de licence Enterprise conforme bloquant
Icône static/description/icon.png conforme déclasse
Description (static/description/index.html ou README) conforme déclasse
Tests automatisés (tests/test_*.py) conforme déclasse
Traduction française (i18n/fr.po) conforme info
Section « Ce que le module ne fait pas » conforme info
Titre de 70 caractères au plus (50 actuellement) conforme info
Résumé en français conforme info

Guide utilisateur — Import PrestaShop vers Odoo

Ce module ajoute PrestaShop à la liste des boutiques d'origine du socle dyo_import_boutique. Toute la conduite d'une migration — périmètre, correspondance des champs, mode essai, rapport, reprise — est décrite dans le guide du socle. Ce document ne traite que ce qui est propre à PrestaShop.

1. Brancher la boutique

Migration de boutique → Configuration → Plateformes → PrestaShop.

Dans PrestaShop : Paramètres avancés → Webservice, activez le Webservice, puis Ajouter une nouvelle clé → Générer, et cochez le droit GET sur products, combinations, categories, customers et orders.

Dans Odoo, renseignez l'adresse de la boutique (la racine, le module ajoute /api lui-même) et collez la clé dans le champ Secret / jeton d'accès. Il n'y a pas de mot de passe : la clé tient lieu d'identifiant, c'est ainsi que PrestaShop fonctionne.

Cliquez Vérifier l'accès avant de lancer quoi que ce soit. Un appel léger vaut mieux qu'une migration de vingt mille produits qui échoue à la première page parce qu'un jeton a expiré la veille.

2. Ce que le connecteur sait lire

Catégories, produits, combinaisons, clients et commandes. Les images ne sont pas reprises : ce sont un flux binaire distinct chez PrestaShop.

3. Ce qu'il faut savoir sur cette plateforme

Le prix d'une combinaison est un écart, pas un prix. Une déclinaison à 2,00 € sur un article à 11,20 € coûte 13,20 €. Le module nomme ce champ « écart de prix » : ne l'associez pas au prix de vente d'Odoo sans y réfléchir.

Les champs traduits changent de forme. Sur une boutique à une seule langue, le nom d'un produit est une chaîne ; dès qu'il y en a deux, c'est une liste de traductions. Le module prend la première langue déclarée par la boutique.

display=full est gourmand. Si la boutique répond par une erreur 500, réduisez le nombre d'enregistrements par appel : c'est la mémoire de PHP qui sature, pas le module.

4. Quand cela ne marche pas

« Le Webservice a refusé la clé » : le Webservice n'est pas activé, la clé est inactive, ou elle n'a pas le droit GET sur la ressource demandée.

« Aucun Webservice à cette adresse » : l'adresse doit être la racine de la boutique, sans /api.

« La réponse ne se décode pas en JSON » : un cache ou un pare-feu filtre le paramètre de format, et la boutique répond en XML.

5. Éprouvé ou non

Ce connecteur a été éprouvé par appel réel le 14 septembre 2026 contre une instance PrestaShop 8 montée pour l'occasion, Webservice activé et seconde langue installée : catalogue de démonstration, champs multilingues, combinaisons, pagination, et un import complet relancé deux fois sans produire un seul doublon.

Dans tous les cas : lancez d'abord un essai, lisez le rapport, et ne décochez le mode essai qu'ensuite. C'est vrai de toute migration, et davantage encore d'un connecteur que l'éditeur n'a pas pu exécuter contre un vrai service.

Avis des clients connectés. Un avis noté par client ; l'éditeur peut y répondre. Connectez-vous pour laisser un avis.

Éditeur
DYONYSOS
E-mail
contact@omnifloo.com
Clients Omnifloo
Support inclus selon votre formule : centre d'aide.