# Migracja Shopify do PrestaShop: pełny przewodnik

> Prezentacja dfmigrateshopify importuje całą zawartość sklepu Shopify do PrestaShop 8 lub 9: produkty z wariantami i zdjęciami, klientów z adresami, historyczne zamówienia, kolekcje konwertowane na kategorie, przekierowania 301 i opinie…

- Strona: <https://www.datafirefly.com/pl/documentation/migration-shopify-prestashop/>
- Język: pl
- Zaktualizowano: 2026-08-01
- Inne języki: [fr](https://www.datafirefly.com/documentation/migration-shopify-prestashop/index.md), [en](https://www.datafirefly.com/en/documentation/migration-shopify-prestashop/index.md), [es](https://www.datafirefly.com/es/documentation/migration-shopify-prestashop/index.md), [de](https://www.datafirefly.com/de/documentation/migration-shopify-prestashop/index.md), [it](https://www.datafirefly.com/it/documentation/migration-shopify-prestashop/index.md), [pt](https://www.datafirefly.com/pt/documentation/migration-shopify-prestashop/index.md), [nl](https://www.datafirefly.com/nl/documentation/migration-shopify-prestashop/index.md)
- Indeks: <https://www.datafirefly.com/pl/documentation/llms.txt>

## Prezentacja

dfmigrateshopify importuje całą zawartość sklepu Shopify do PrestaShop 8 lub 9: produkty z wariantami i zdjęciami, klientów z adresami, historyczne zamówienia, kolekcje konwertowane na kategorie, przekierowania 301 i opinie klientów. Moduł pracuje **w trybie tylko do odczytu po stronie Shopify**: żadnego zapisu, żadnej modyfikacji sklepu źródłowego.

## Instalacja

1. Back office PrestaShop → **Moduły → Menedżer modułów → Wgraj moduł**.
2. Wybierz plik `dfmigrateshopify.zip` i zainstaluj.
3. Nowy ekran pojawia się w **Ustawienia zaawansowane → Migracja Shopify**.

Instalacja tworzy 4 tabele z prefiksem `dfmigshop_`: mapping (odpowiedniki Shopify ↔ PrestaShop), log, redirect i job.

## Utworzenie tokenu Shopify

W panelu administracyjnym źródłowego sklepu Shopify:

1. **Settings → Apps and sales channels → Develop apps → Create an app**.
2. Zakładka **Configuration → Admin API integration → Configure**.
3. Zaznacz zakresy: `read_products`, `read_inventory`, `read_product_listings`, `read_customers`, `read_orders`, `read_content`.
4. Zainstaluj aplikację w sklepie i skopiuj **Admin API access token** (zaczyna się od `shpat_`).

Shopify wyświetla token tylko raz. Zachowaj go w bezpiecznym miejscu.

## Połączenie

Zakładka **Połączenie** w module: podaj domenę (`moj-sklep.myshopify.com`, bez https://), token oraz wersję API (domyślnie `2024-10`). Kliknij **Testuj połączenie**: nazwa sklepu powinna wyświetlić się na zielono.

## Konfiguracja

- **Wielkość partii**: liczba elementów przetwarzanych w jednym wywołaniu AJAX (domyślnie 50, maksymalnie 250). Zmniejsz ją, jeśli Twój hosting jest wolny.
- **Pobieranie zdjęć**: wyłącz, aby szybko wykonać migrację testową bez zdjęć.
- **Wersje robocze**: importuj lub pomijaj produkty Shopify o statusie draft.
- **Domyślna kategoria nadrzędna**: kolekcje Shopify zostaną utworzone pod tą kategorią.
- **Przewoźnik i moduł płatności**: przypisywane do zaimportowanych zamówień.
- **Mapowanie statusów**: przypisz każdy status Shopify (pending, paid, fulfilled, delivered, cancelled, refunded) do statusu zamówienia PrestaShop.

## Uruchomienie migracji

Zakładka **Migracja**, zachowaj kolejność:

1. **Zliczanie**: weryfikuje połączenie i pokazuje wolumeny.
2. **Kolekcje custom**, następnie **kolekcje smart**: tworzy kategorie.
3. **Produkty, warianty i zdjęcia**: najdłuższy etap. Warianty Shopify stają się kombinacjami atrybutów, każdy wariant otrzymuje własne zdjęcie, marki są tworzone na podstawie pola vendor.
4. **Klienci**: automatyczna deduplikacja po adresie e-mail. Przypisywane jest losowe hasło, więc zaproś klientów do skorzystania z linku „Nie pamiętam hasła".
5. **Zamówienia**: wyłącznie po produktach i klientach. Referencja w formacie `SH-{numer}`.
6. **Przekierowania 301**: pobiera Shopify URL Redirects. Przekierowania produktów i kolekcji zostały już utworzone automatycznie na wcześniejszych etapach.

Każdy etap można bezpiecznie uruchomić ponownie: tabela odpowiedników zapobiega duplikatom. W razie przerwania wystarczy kliknąć przycisk ponownie, a migracja wznowi się w miejscu, w którym się zatrzymała.

## Import opinii

Shopify nie ma natywnego API do opinii. Wyeksportuj plik CSV ze swojej aplikacji (Judge.me, Loox, Yotpo, Product Reviews app), a następnie zaimportuj go w zakładce **Opinie**. Moduł automatycznie wykrywa Twój backend: `dfreviews` (priorytetowo) albo `productcomments`.

Oczekiwane kolumny (bez rozróżniania wielkości liter, separator `,` lub `;`): `product_handle` albo `shopify_product_id` albo `sku`, `email`, `reviewer_name`, `rating`, `title`, `body`, `created_at`, `verified`.

## Przekierowania 301

Każde żądanie na froncie jest przechwytywane przez hook `actionDispatcherBefore`: jeśli żądany adres odpowiada zarejestrowanemu źródłu (na przykład `/products/moj-produkt`), odwiedzający jest przekierowywany kodem 301 na odpowiadający mu adres PrestaShop. Żadna konfiguracja Apache ani Nginx nie jest potrzebna. Zakładka **Przekierowania 301** pozwala wyeksportować pełną listę do CSV.

## Odpowiedniki i ponowne uruchomienie

Zakładka **Odpowiedniki** pokazuje liczbę zaimportowanych elementów według typu zasobu. Przycisk **Wyczyść** usuwa odpowiedniki danego typu: elementy pozostają w PrestaShop, ale kolejna migracja zaimportuje je ponownie jako nowe (możliwe duplikaty, używaj z pełną świadomością konsekwencji).

## Rozwiązywanie problemów

- **Błąd 429 lub 503**: moduł automatycznie obsługuje limit zapytań Shopify (ponowienie z poszanowaniem nagłówka Retry-After). Żadne działanie nie jest wymagane.
- **Wolna migracja**: zmniejsz wielkość partii albo wyłącz pobieranie zdjęć przy pierwszym przebiegu testowym.
- **Błędy w dzienniku**: zakładka **Dzienniki** pokazuje każdy błąd wraz z zasobem i identyfikatorem Shopify, którego dotyczy. Usuń przyczynę i uruchom etap ponownie, przetworzone zostaną wyłącznie elementy z błędem.
- **Ceny w historycznych zamówieniach**: zamówienia są importowane jako archiwum księgowe, sumy z Shopify są zachowywane bez zmian, bez przeliczania podatków PrestaShop.

## Deinstalacja

Deinstalacja usuwa 4 tabele modułu i hooki. Zaimportowane produkty, klienci, zamówienia i kategorie pozostają na miejscu. Przekierowania 301 przestają działać (są obsługiwane przez moduł).
