Wdrożenie i migracja PrestaShop różnią się nie tylko zakresem prac, ale przede wszystkim liczbą decyzji po Twojej stronie. Wdrożenie od zera to 3–6 tygodni pracy i kilka decyzji o wyglądzie oraz integracjach. Migracja to 2–5 tygodni dla sklepu do ok. 5000 SKU, ale dochodzi do tego przeniesienie danych, mapowanie URL-i i testy porównawcze.
W tym tekście skupiamy się na organizacji: co przygotować, kiedy to sprawdzić i na czym projekty najczęściej się wykładają. Szczegóły samego procesu technicznego opisujemy w sekcji o etapach wdrożenia i migracji.
Zanim ustalisz zakres prac, odpowiedz na jedno pytanie: masz już sklep, czy dopiero go budujesz?
Wdrożenie od zera to nowy sklep — nie ma czego przenosić. Decyzje dotyczą struktury katalogu, wyglądu, metod płatności i wysyłki. Migracja to przeniesienie istniejącego sklepu z WooCommerce, Shoper, IAI, RedCart, Magento 1/2 albo z systemu pisanego na zamówienie — razem z produktami, klientami, zamówieniami, URL-ami i wypracowaną pozycją w Google. Migracją jest też aktualizacja PrestaShop 1.6/1.7 do 8.x, bo wymieniasz bazę, moduły i szablon, a nie tylko numer wersji.
Trzy sygnały, że najwyższy czas na migrację:
Czas: wdrożenie od zera to zwykle 3–6 tygodni. Migracja sklepu do ok. 5000 SKU to 2–5 tygodni, z realnym ryzykiem przesunięcia, jeśli dane są nieuporządkowane.
Linia 1.7 i 8.x różnią się nie tylko numerem. Wersja 8.x jest pisana pod PHP 8.x, a 1.7 obsługuje starsze PHP. Moduły i szablony przygotowane pod 1.6/1.7 trzeba sprawdzić przed decyzją. Konkretne wymagania wersji i zmiany w API weryfikuj w dokumentacji deweloperskiej PrestaShop, a zakres i wycenę po stronie realizacji opisujemy w sekcji o wdrożeniach PrestaShop.
| Kryterium | Wdrożenie od zera | Migracja |
|---|---|---|
| Punkt startowy | Brak sklepu, pusty katalog | Działający sklep na innej platformie lub starszej wersji |
| Główne ryzyko | Opóźnienia decyzyjne i brak treści | Utrata danych, ruchu SEO i zamówień w trakcie przenoszenia |
| Typowy czas | 3–6 tygodni | 2–5 tygodni do ok. 5000 SKU; więcej przy nietypowych danych i Magento |
| Praca po Twojej stronie | Decyzje o wyglądzie, płatnościach, wysyłce, treściach | Dostęp do bazy/API, mapowanie URL-i, testy porównawcze obu sklepów |
| Kiedy wybrać | Start nowego biznesu lub sklep bez historii | Brak wsparcia dla PHP 8.x, martwy moduł płatności, koniec wsparcia wersji |
Wdrożenie dzieli się na sześć etapów. Każdy kończy się czymś, co możesz obejrzeć lub kliknąć — dzięki temu widać, czy projekt idzie zgodnie z planem.
Orientacyjny harmonogram: T+1 brief, T+2 staging, T+3–4 szablon, T+5 integracje, T+6 testy i start. Jeśli decyzja po Twojej stronie spóźnia się o trzy dni, start przesuwa się o trzy dni — to najczęstsza przyczyna poślizgów.
Rzeczy po Twojej stronie: klucze API do płatności i kurierów (sandbox i produkcyjne), dane do faktur, treści regulaminu i polityk, zdjęcia produktów w oryginalnej rozdzielczości, decyzja o metodach płatności i wysyłki, dane firmowe do stopki
Praca bezpośrednio z deweloperem skraca ścieżkę decyzyjną: nie ma przekazywania ustaleń między agencją a podwykonawcą, więc mniej niedomówień i mniej zapytań wracających po dwóch dniach. Jeśli porównujesz oferty, sprawdź, jak wygląda organizacja i koszt wdrożenia PrestaShop w praktyce — łącznie z tym, co jest w cenie, a co nie.
| Etap | Tydzień | Co dostarcza klient |
|---|---|---|
| Analiza i brief | T+1 | Lista funkcji, liczba SKU, języki, integracje |
| Środowisko staging | T+2 | Akceptacja dostępu, uwagi do struktury katalogu |
| Instalacja i konfiguracja | T+2 do T+3 | Dane firmowe, strefy wysyłki, stawki VAT |
| Szablon i UX | T+3 do T+4 | Treści, zdjęcia, akceptacja wyglądu |
| Integracje | T+5 | Klucze API, umowy z operatorem płatności i kurierem |
| Testy i start | T+6 | Testowe zamówienie, akceptacja przekierowań, decyzja o dacie startu |
Każde źródło danych ma inne pułapki. Poniżej to, co realnie robi różnicę w projektach.
WooCommerce. Warianty w WooCommerce to kombinacje atrybutów — w PrestaShop stają się kombinacjami produktu, więc trzeba zmapować atrybuty i ich wartości, a przy dużych katalogach pilnować limitu kombinacji na produkt. Osobno mapuje się hierarchię kategorii i metody dostawy. Klienci przenoszą się z hasłami w formie skrótu, więc po migracji trzeba zaplanować reset hasła.
Shoper, IAI, RedCart. Zwykle pracujesz na eksporcie CSV lub XML i na API. Eksport bywa niekompletny: brakuje wielojęzycznych opisów, części pól SEO albo informacji o wariantach. Limity zapytań API wydłużają pobieranie danych — przy 5000 SKU liczy się to w godzinach, nie minutach.
Magento 1/2. To projekt, nie skrypt. Dochodzą cenniki grupowe, produkty konfigurowalne, wielosklepowość i indeksy. Uczciwie: taka migracja często nie mieści się w 2–5 tygodniach.
System pisany na zamówienie. Często nie ma gotowego eksportu — dane wyciągamy z bazy lub API. Tu sprawdza się przenoszenie etapowe z pracą równoległą obu sklepów: najpierw katalog, potem klienci, na końcu zamówienia i przekierowania 301 z mapowaniem na poziomie identyfikatorów.
Aktualizacja 1.6/1.7 do 8.x. Kopia bazy, test kompatybilności modułów z PHP 8.x, wymiana szablonu i przegląd katalogu /override — nadpisania klas i hooków najczęściej blokują aktualizację. Zmiany w strukturze wersji śledź w dokumentacji PrestaShop. Przykłady organizacji takich projektów znajdziesz w opisie wdrożeń i migracji PrestaShop dla firmy.
| Skąd migrujesz | Co przenosi się wprost | Gdzie są luki i ryzyka |
|---|---|---|
| WooCommerce | Produkty, kategorie, klienci, zamówienia | Mapowanie wariantów i metod dostawy, reset haseł klientów |
| Shoper / IAI / RedCart | Katalog, ceny, stany magazynowe | Niekompletny eksport, limity API, brakujące pola SEO |
| Magento 1/2 | Produkty, kategorie, klienci | Cenniki grupowe, produkty konfigurowalne, indeksy, czas projektu |
| System pisany na zamówienie | Wszystko — zależnie od bazy lub API | Brak gotowego eksportu, konieczna praca równoległa obu sklepów |
| PrestaShop 1.6/1.7 → 8.x | Baza danych, katalog, zamówienia | Niekompatybilne moduły, szablon, nadpisania w /override |
Zanim uruchomisz importer, wypisz dane i przejdź listę punkt po punkcie. Dopiero potem porównaj liczbę rekordów przed i po migracji. Najczęstszy scenariusz to „wszystko jest w eksporcie”: po imporcie brakuje 300–500 kombinacji, a część zdjęć nie ma wariantów miniatur.
Całość zweryfikuj jakościowo na 10 losowych produktach i jednym koncie testowym z historią zamówień. Jeśli robisz wdrożenie PrestaShop od zera, ta lista jest krótsza — ale przy migracji nie wolno jej pominąć.
| Dane | Gdzie sprawdzić po imporcie | Typowy błąd |
|---|---|---|
| Produkty i kombinacje | Liczba wierszy w tabelach produktów i kombinacji vs eksport | Kombinacje bez ceny brutto lub bez stanu |
| Zdjęcia i miniatury | Katalog /img/p/ + regeneracja miniatur | Brak wariantu _large, przez co brak powiększenia |
| Cechy i producenci | Filtry katalogu na stronie frontowej | Cechy zaimportowane, ale nieprzypisane do produktów |
| Klienci i grupy cenowe | Liczba kont + test logowania i resetu hasła | Hasła nie działają, brak mechanizmu resetu |
| Historia zamówień | Zestawienie sum zamówień przed i po imporcie | Zamówienia bez przypisanej płatności i faktury |
| Opinie, rabaty, karty podarunkowe | Podgląd na koncie klienta i w koszyku | Reguły koszyka bez zakresu kategorii |
SEO przy migracji sprowadza się do jednego pytania: czy stary adres nadal prowadzi użytkownika i bota w to samo miejsce. Zacznij od eksportu starych URL-i — linki siedzą w tabelach językowych (produkty, kategorie, CMS, meta) razem z identyfikatorem i językiem. Z tego generujesz mapę „stary adres → nowy adres”.
Realistyczny czas stabilizacji pozycji to 4–12 tygodni od startu. W tym okresie nie zmieniaj struktury URL drugi raz — jeśli planujesz większą przebudowę sklepu, zaplanuj ją razem z PrestaShop od strony konfiguracji, nie „przy okazji” migracji.
Wdrożenie to nie szablon. Sklep, który wygląda dobrze, ale nie domyka płatności albo nie wysyła stanów do ERP, generuje ręczną pracę każdego dnia. Każdą integrację przetestuj na pełnym cyklu, nie na jednym kliknięciu „zapłać”.
Przed decyzją policz koszt i organizację wdrożenia PrestaShop razem z rokiem utrzymania — najdroższe są integracje wracające co miesiąc.
Wycena PrestaShop działa w jednym modelu: liczba godzin razy stawka. Stawki zespołów wdrożeniowych w Polsce mieszczą się zwykle w przedziale 90–200 zł netto za godzinę. Freelancer policzy mniej, ale zwykle nie ma zaplecza do testów wydajnościowych ani do wsparcia po starcie. Pytanie nie brzmi więc „ile kosztuje sklep”, tylko „ile godzin zajmie mój zakres”.
Praktyczne widełki, które spotkasz najczęściej:
Przy stawce 120 zł/h daje to odpowiednio 4 800–9 600 zł, 7 200–14 400 zł i 18 000–36 000 zł. Traktuj to jako punkt odniesienia do rozmowy z wykonawcą, nie jako ofertę.
Co podnosi koszt: moduł pisany pod Twój proces (konfigurator, wycena montażu), dwukierunkowa integracja z ERP, szablon custom z projektu graficznego, import danych w złym stanie — brak SKU, duplikaty, opisy wklejone z Worda. Każda godzina sprzątania danych to godzina, której nie było w ofercie.
Co obniża koszt: gotowy szablon, standardowe moduły, dane przygotowane przed startem (CSV z ustalonymi kolumnami, zdjęcia w jednym formacie), decyzje podjęte przed pierwszym dniem prac, a nie w trakcie.
Osobna kwestia: wtyczki w abonamencie. Pięć modułów po 150–300 zł rocznie to 750–1500 zł co roku i rosnąca lista zależności do aktualizacji. Własny moduł robiący dokładnie to, czego potrzebujesz, kosztuje jednorazowo 3000–8000 zł, ale i tak wymaga utrzymania przy zmianach wersji PrestaShop. Zanim wybierzesz abonament, policz koszt pięciu lat i ryzyko, że dostawca wtyczki zniknie z rynku. Jak dzielimy zakresy, opisujemy w sekcji wdrożenia PrestaShop, a przykład wyceny lokalnej znajdziesz w tekście o koszcie i organizacji wdrożenia w Zamościu.
| Typ projektu | Godziny | Co siedzi w środku |
|---|---|---|
| Proste wdrożenie | 40–80 h | szablon, konfiguracja, płatności i dostawy, podstawowe SEO, testy |
| Migracja do 1000 SKU | 60–120 h | eksport i import danych, mapowanie URL-i, przekierowania 301, testy porównawcze |
| Migracja z Magento lub ERP | 150–300 h | czyszczenie danych, mapowanie atrybutów, integracja, testy end-to-end |
Większość problemów po starcie jest powtarzalna i da się je wykryć przed uruchomieniem. Nie przez „przetestujemy i zobaczymy”, tylko przez konkretne sprawdzenia.
/produkt/ i /produkt.html. Powód to zwykle stara reguła w .htaccess plus nowy wzorzec w Konfiguracja > Ruch > SEO i URL-e. Diagnoza: przejedź 200–500 adresów crawlеrem i sprawdź, czy przy identycznej treści nie ma dwóch odpowiedzi 200. Potem porównaj sitemap.xml z listą adresów zaindeksowanych w Search Console.ps_product_shop.price, a brutto wylicza z grupy reguł podatkowych. Import CSV z pustą kolumną id_tax_rules_group daje ceny bez VAT. Sprawdź: zrzut 20 produktów z bazy i porównanie z frontem dla dwóch krajów dostawy.SELECT id_lang, COUNT(*) FROM ps_product_lang GROUP BY id_lang pokaże od razu, czy migracja przeniosła tłumaczenia. Nowe moduły nie mają polskich tekstów, jeśli nie skopiowano plików z modules/nazwa/translations/.crontab -l, logi w var/logs/ i porównaj trzy SKU z pliku dostawcy z tym, co faktycznie jest w katalogu. Jeśli liczby się nie zgadzają, synchronizacja nie działa.memory_limit 256M pada przy pliku 10 000 wierszy; import z konsoli bywa stabilniejszy niż z panelu. Zamiast zgadywać, czytaj logi błędów.Przed startem zrób pełny test zamówienia end-to-end: koszyk, wybór dostawy i płatności, mail potwierdzający, faktura PDF, potem zwrot i anulowanie. Każdy z tych kroków dotyka innych tabel i modułów. Punkt odniesienia dla modułów i hooków znajdziesz w dokumentacji dla deweloperów PrestaShop.
| Pułapka | Objaw | Szybki test |
|---|---|---|
| Duplikaty URL | dwa adresy, jedna treść, oba z kodem 200 | crawl 200–500 adresów + porównanie z sitemap.xml |
| Ceny netto/brutto | ceny niższe o stawkę VAT po imporcie | zrzut 20 rekordów z bazy i porównanie z frontem |
| Wersje językowe | puste opisy i brak tłumaczeń modułów | COUNT(*) z ps_product_lang pogrupowane po id_lang |
| Płatności | sandbox tak, produkcja nie | zamówienie testowe na 1 zł na produkcji |
| Crony | stany i zamówienia się nie aktualizują | crontab -l, logi w var/logs, porównanie 3 SKU |
Oddanie sklepu to nie to samo co opieka techniczna. Różnicę widać w trzech liczbach i jednym adresie: czas reakcji, zakres wsparcia, godziny dostępności oraz kanał zgłoszeń. Ustal to na piśmie przed startem, bo po awarii nie ma czasu na negocjacje.
Realny zakres SLA obejmuje:
Zespół klienta poradzi sobie sam, gdy katalog jest stabilny, brak integracji z ERP i marketplace, a zmiany to kilka produktów tygodniowo. Przekazanie opieki jest tańsze niż gaszenie pożarów, gdy działa synchronizacja stanów, jest kilka wersji językowych, sklep ma szczyty sezonowe albo nie ma w firmie nikogo, kto odróżni błąd PHP od błędu modułu płatności.
Lista kontrolna startu do odhaczenia:
Następny krok to przegląd zakresów i kolejności prac w naszym hubie wdrożeń PrestaShop.
| Element SLA | Minimum | Standard |
|---|---|---|
| Czas reakcji na błąd krytyczny | 8 h w dni robocze | 2–4 h w dni robocze |
| Backup bazy | raz dziennie, retencja 14 dni | raz dziennie, retencja 30 dni, kopia offsite |
| Monitoring dostępności | co 5 minut, alert mailem | co 1 minutę, alert mail i SMS |
| Aktualizacje | łaty bezpieczeństwa w ciągu 7 dni | test na staging i wdrożenie w ciągu 48 h |
Praca bezpośrednio na produkcji zamiast na środowisku staging.
Jak wykryć: Wystarczy jedno pytanie do wykonawcy: na jakim adresie URL będzie testowany nowy sklep i czy baza jest oddzielona od produkcyjnej?
Jak naprawić: Wymagać stagingu z kopią bazy i plików, osobnymi kluczami API do płatności i wysyłki oraz zasadą: produkcja dotykana dopiero w dniu startu.
Migracja bez mapowania starych URL-i i przekierowań 301.
Jak wykryć: Porównaj listę adresów z Google Search Console przed migracją z listą adresów po starcie. Jeśli stare adresy zwracają 404 zamiast 301, problem jest widoczny od razu.
Jak naprawić: Przygotować mapę 1:1 dla najważniejszych adresów przed startem, wdrożyć przekierowania w .htaccess lub na poziomie serwera i sprawdzić je po zmianie DNS.
Traktowanie migracji z Magento jako prostego skryptu importującego.
Jak wykryć: Jeśli wykonawca mówi o migracji z Magento 1/2 w kilka dni i nie pyta o cenniki grupowe, koszyk ani indeksy, zakres prac jest policzony błędnie.
Jak naprawić: Zaplanować projekt z etapami: analiza struktury, mapowanie cenników i reguł, przeniesienie danych, testy wydajności i tylko wtedy start.
Klient dostarcza treści, zdjęcia i decyzje o płatnościach na końcu projektu.
Jak wykryć: Sprawdź, czy w harmonogramie jest data graniczna na materiały i kto jest za nie odpowiedzialny imiennie.
Jak naprawić: Ustalić listę braków na etapie briefu, wyznaczyć daty dostarczenia treści i zdjęć oraz przyjąć zasadę, że brak materiałów przesuwa tylko etap szablonu, nie cały projekt.
Przekonanie, że hasła klientów przeniosą się 1:1 razem z kontami.
Jak wykryć: Zapytaj wykonawcę, w jakim formacie są przechowywane hasła w starym systemie i czy da się je zweryfikować w PrestaShop.
Jak naprawić: Przyjąć, że hasła nie przenoszą się wprost. Wdrożyć mechanizm resetu hasła lub wysyłkę linków do ustawienia nowego po starcie nowego sklepu.
Aktualizacja PrestaShop z 1.6/1.7 do 8.x bez sprawdzenia modułów, szablonu i nadpisań.
Jak wykryć: Wypisz wszystkie moduły i overrides w katalogu /override oraz sprawdź deklarowaną kompatybilność z docelową wersją PHP i PrestaShop.
Jak naprawić: Zrobić inwentaryzację modułów i nadpisań przed aktualizacją, a moduły bez wsparcia zastąpić lub przepisać. Aktualizację testować na kopii bazy, nie na produkcji.
Migracja i wdrożenie PrestaShop to przede wszystkim projekt organizacyjny. Największe ryzyka to brak stagingu, brak przekierowań 301 i materiały dostarczone za późno przez klienta.
Zanim zaczniesz, zbierz dostępy, zrób kopię i podejmij trzy decyzje: historia zamówień, grupy cenowe i sposób resetu haseł. Dzięki temu migracja z WooCommerce, Shoper czy Magento przestaje być niespodzianką, a staje się przewidywalnym harmonogramem.
Dla sklepu do ok. 5000 SKU realny zakres to 2–5 tygodni. Wdrożenie od zera zajmuje zwykle 3–6 tygodni. Na czas wpływa przede wszystkim liczba integracji i to, jak szybko dostarczysz treści oraz dane dostępowe.
W większości przypadków tak. Hasła w starych systemach są zapisane w innym formacie i nie da się ich przenieść wprost do PrestaShop. Wdraża się wtedy mechanizm resetu hasła lub wysyłkę linków do ustawienia nowego. Zaplanuj to jako część komunikacji przed startem, żeby nie robić tego w dniu premiery.
To decyzja biznesowa, nie techniczna. Pełne przeniesienie bywa kosztowne przy dużej bazie i wydłuża projekt. Często wystarczy archiwum eksportowe w starym systemie plus przeniesienie samych kont klientów. Ustal to na etapie analizy, bo zmiana decyzji w połowie prac oznacza powtórzenie importu.
Tak, jeśli pracujesz na środowisku staging i przełączasz produkcję w zaplanowanym oknie. Najczęściej jest to kilka godzin na zamrożenie danych, ostatni import i zmianę DNS. Przy systemie pisanym na zamówienie rekomendujemy pracę równoległą obu sklepów przez 2–4 tygodnie.
Wtedy, gdy masz moduły i szablon ze wsparciem dla docelowej wersji oraz hosting obsługujący wymaganą wersję PHP. Jeśli kluczowy moduł nie ma aktualizacji, aktualizacja od razu staje się projektem z przepisaniem funkcji. Zacznij od inwentaryzacji modułów i nadpisań, dopiero potem planuj termin.
Najważniejsze są przekierowania 301 ze starych adresów na nowe i utrzymanie tych samych treści na tych samych tematach. Po starcie porównaj dane w Google Search Console i sprawdź, czy kluczowe frazy nie wypadły. Techniczne podstawy znajdziesz w dokumentacji Google o treściach tworzonych dla ludzi i o Core Web Vitals.
Po trzech rzeczach: zamówienie testowe przechodzi całą ścieżkę z płatnością i e-mailem, liczba produktów i kombinacji zgadza się ze stanem przed migracją, a stare adresy zwracają 301. Dodatkowo warto sprawdzić stany magazynowe na próbce i wygenerować fakturę testową.
Dokumentację techniczną PrestaShop znajdziesz pod adresem devdocs.prestashop-project.org.
Jeśli chcesz przejść przez wdrożenie lub migrację PrestaShop z kimś, kto prowadzi to etapami i mówi wprost, co jest po Twojej stronie — napisz do nas. Sprawdzimy Twój przypadek i powiemy, od czego warto zacząć.