PS PrestaShop Intermédiaire

Migration Shopify vers PrestaShop — Guide complet

Installation, connexion Shopify, configuration et procédure complète de migration vers PrestaShop 8 et 9.

Mis à jour Version du module 1.0.0

Présentation

dfmigrateshopify importe l’intégralité d’une boutique Shopify dans PrestaShop 8 ou 9 : produits avec variantes et images, clients avec adresses, commandes historiques, collections converties en catégories, redirections 301 et avis clients. Le module est en lecture seule côté Shopify : aucune écriture, aucune modification de la boutique source.

Installation

  1. Back-office PrestaShop → Modules → Module Manager → Téléverser un module.
  2. Sélectionnez le fichier dfmigrateshopify.zip et installez.
  3. Un nouvel écran apparaît dans Paramètres avancés → Migration Shopify.

L’installation crée 4 tables préfixées dfmigshop_ : mapping (correspondances Shopify ↔ PrestaShop), log, redirect et job.

Créer le token Shopify

Dans l’admin de votre boutique Shopify source :

  1. Settings → Apps and sales channels → Develop apps → Create an app.
  2. Onglet Configuration → Admin API integration → Configure.
  3. Cochez les scopes : read_products, read_inventory, read_product_listings, read_customers, read_orders, read_content.
  4. Installez l’app dans la boutique et copiez le Admin API access token (il commence par shpat_).

Le token n’est affiché qu’une seule fois par Shopify. Conservez-le en lieu sûr.

Connexion

Onglet Connexion du module : renseignez le domaine (ma-boutique.myshopify.com, sans https://), le token, et la version d’API (par défaut 2024-10). Cliquez sur Tester la connexion : le nom de la boutique doit s’afficher en vert.

Configuration

  • Taille de lot — nombre d’éléments traités par appel AJAX (défaut 50, max 250). Réduisez si votre hébergement est lent.
  • Télécharger les images — désactivez pour une migration de test rapide sans images.
  • Brouillons — importer ou ignorer les produits Shopify au statut draft.
  • Catégorie parente par défaut — les collections Shopify seront créées sous cette catégorie.
  • Transporteur et module de paiement — affectés aux commandes importées.
  • Correspondance des statuts — mappez chaque statut Shopify (pending, paid, fulfilled, delivered, cancelled, refunded) vers un statut de commande PrestaShop.

Lancer la migration

Onglet Migration, respectez l’ordre :

  1. Compter — vérifie la connexion et affiche les volumes.
  2. Collections custom puis Collections smart — crée les catégories.
  3. Produits + variantes + images — l’étape la plus longue. Les variantes Shopify deviennent des combinaisons d’attributs ; chaque variante reçoit son image ; les marques sont créées depuis le champ vendor.
  4. Clients — dédoublonnage automatique par e-mail. Un mot de passe aléatoire est attribué : invitez vos clients à utiliser « Mot de passe oublié ».
  5. Commandes — uniquement après produits et clients. Référence au format SH-{numéro}.
  6. Redirections 301 — récupère les URL Redirects Shopify. Les redirections produits/collections ont déjà été créées automatiquement aux étapes précédentes.

Chaque étape peut être relancée sans risque : la table de correspondance empêche les doublons. En cas d’interruption, recliquez simplement sur le bouton, la migration reprend où elle s’était arrêtée.

Importer les avis

Shopify n’a pas d’API native pour les avis. Exportez en CSV depuis votre application (Judge.me, Loox, Yotpo, Product Reviews app…) puis importez le fichier dans l’onglet Avis. Le module détecte automatiquement votre backend : dfreviews (prioritaire) ou productcomments.

Colonnes attendues (insensibles à la casse, séparateur , ou ;) : product_handle ou shopify_product_id ou sku, email, reviewer_name, rating, title, body, created_at, verified.

Redirections 301

Chaque requête front est interceptée par le hook actionDispatcherBefore : si l’URL demandée correspond à une source enregistrée (ex. /products/mon-produit), le visiteur est redirigé en 301 vers l’URL PrestaShop équivalente. Aucune configuration Apache ou Nginx nécessaire. L’onglet Redirections 301 permet d’exporter la liste complète en CSV.

Correspondances et relance

L’onglet Correspondances affiche le nombre d’éléments importés par type de ressource. Le bouton Vider supprime les correspondances d’un type : les éléments restent dans PrestaShop, mais une nouvelle migration les réimportera comme neufs (doublons possibles — à utiliser en connaissance de cause).

Dépannage

  • Erreur 429 ou 503 — le module gère automatiquement le rate limit Shopify (retry avec respect du header Retry-After). Aucune action requise.
  • Migration lente — réduisez la taille de lot, ou désactivez le téléchargement d’images pour un premier passage de test.
  • Erreurs dans le journal — l’onglet Journaux affiche chaque erreur avec la ressource et l’identifiant Shopify concernés. Corrigez la cause puis relancez l’étape : seuls les éléments en erreur seront retraités.
  • Prix des commandes historiques — les commandes sont importées à titre d’archive comptable ; les totaux Shopify sont conservés tels quels, sans recalcul de taxes PrestaShop.

Désinstallation

La désinstallation supprime les 4 tables du module et les hooks. Les produits, clients, commandes et catégories importés restent en place. Les redirections 301 cessent de fonctionner (elles sont servies par le module).

Cette page vous a-t-elle été utile ?

Toujours bloqué ? Contactez le support