Migrazione da Shopify a PrestaShop — Guida completa
Installazione, connessione Shopify, configurazione e procedura completa di migrazione a PrestaShop 8 e 9.
Panoramica
dfmigrateshopify importa un intero negozio Shopify in PrestaShop 8 o 9: prodotti con varianti e immagini, clienti con indirizzi, ordini storici, raccolte convertite in categorie, redirect 301 e recensioni dei clienti. Il modulo è in sola lettura sul lato Shopify: zero scritture, zero modifiche al negozio sorgente.
Installazione
- Back office PrestaShop → Moduli → Gestione moduli → Carica un modulo.
- Seleziona il file
dfmigrateshopify.zipe installa. - Una nuova schermata appare in Parametri avanzati → Migrazione Shopify.
L’installazione crea 4 tabelle con prefisso dfmigshop_: mapping (corrispondenze Shopify ↔ PrestaShop), log, redirect e job.
Creare il token Shopify
Nell’admin del tuo negozio Shopify sorgente:
- Settings → Apps and sales channels → Develop apps → Create an app.
- Scheda Configuration → Admin API integration → Configure.
- Spunta gli scope:
read_products,read_inventory,read_product_listings,read_customers,read_orders,read_content. - Installa l’app nel negozio e copia l’Admin API access token (inizia con
shpat_).
Shopify mostra il token una sola volta. Conservalo in un luogo sicuro.
Connessione
Nella scheda Connessione del modulo: inserisci il dominio (mio-negozio.myshopify.com, senza https://), il token e la versione dell’API (predefinita 2024-10). Fai clic su Testa la connessione: il nome del negozio deve apparire in verde.
Configurazione
- Dimensione del lotto — numero di elementi elaborati per chiamata AJAX (predefinito 50, max 250). Riducilo se il tuo hosting è lento.
- Scaricare le immagini — disattivalo per una migrazione di prova rapida senza immagini.
- Bozze — importare o ignorare i prodotti Shopify in stato draft.
- Categoria padre predefinita — le raccolte Shopify saranno create sotto questa categoria.
- Corriere e modulo di pagamento — assegnati agli ordini importati.
- Mappatura degli stati — associa ogni stato Shopify (pending, paid, fulfilled, delivered, cancelled, refunded) a uno stato ordine PrestaShop.
Avviare la migrazione
Nella scheda Migrazione, rispetta l’ordine:
- Contare — verifica la connessione e mostra i volumi.
- Raccolte custom poi Raccolte smart — crea le categorie.
- Prodotti + varianti + immagini — il passaggio più lungo. Le varianti Shopify diventano combinazioni di attributi; ogni variante riceve la sua immagine; i produttori vengono creati dal campo vendor.
- Clienti — deduplicazione automatica via e-mail. Viene assegnata una password casuale: invita i tuoi clienti a usare «Password dimenticata».
- Ordini — solo dopo prodotti e clienti. Riferimento nel formato
SH-{numero}. - Redirect 301 — recupera gli URL Redirects di Shopify. I redirect di prodotti/raccolte sono già stati creati automaticamente nei passaggi precedenti.
Ogni passaggio può essere rilanciato senza rischi: la tabella di corrispondenza impedisce i duplicati. In caso di interruzione, fai semplicemente di nuovo clic sul pulsante e la migrazione riprende dove si era fermata.
Importare le recensioni
Shopify non ha API nativa per le recensioni. Esporta in CSV dalla tua applicazione (Judge.me, Loox, Yotpo, Product Reviews app…) e importa il file nella scheda Recensioni. Il modulo rileva automaticamente il tuo backend: dfreviews (prioritario) o productcomments.
Colonne attese (senza distinzione maiuscole/minuscole, separatore , o ;): product_handle o shopify_product_id o sku, email, reviewer_name, rating, title, body, created_at, verified.
Redirect 301
Ogni richiesta del front viene intercettata dall’hook actionDispatcherBefore: se l’URL richiesto corrisponde a una sorgente registrata (es. /products/mio-prodotto), il visitatore viene reindirizzato in 301 verso l’URL PrestaShop equivalente. Nessuna configurazione Apache o Nginx necessaria. La scheda Redirect 301 consente di esportare l’elenco completo in CSV.
Corrispondenze e rilancio
La scheda Corrispondenze mostra il numero di elementi importati per tipo di risorsa. Il pulsante Svuota elimina le corrispondenze di un tipo: gli elementi restano in PrestaShop, ma una nuova migrazione li reimporterà come nuovi (possibili duplicati — usare con cognizione di causa).
Risoluzione dei problemi
- Errori 429 o 503 — il modulo gestisce automaticamente il rate limit di Shopify (retry rispettando l’header Retry-After). Nessuna azione richiesta.
- Migrazione lenta — riduci la dimensione del lotto, o disattiva il download delle immagini per un primo passaggio di prova.
- Errori nel log — la scheda Log mostra ogni errore con la risorsa e l’identificatore Shopify interessati. Correggi la causa e rilancia il passaggio: solo gli elementi in errore verranno rielaborati.
- Prezzi degli ordini storici — gli ordini vengono importati come archivio contabile; i totali Shopify vengono conservati così come sono, senza ricalcolo delle tasse PrestaShop.
Disinstallazione
La disinstallazione rimuove le 4 tabelle del modulo e gli hook. I prodotti, clienti, ordini e categorie importati restano al loro posto. I redirect 301 smettono di funzionare (sono serviti dal modulo).