Sync Etsy dla PrestaShop: dokumentacja
Instalacja i konfiguracja Sync Etsy: połączenie OAuth z Etsy, eksport produktów, synchronizacja stanów magazynowych, import zamówień i cron.
Sync Etsy łączy sklep PrestaShop z Twoim sklepem na Etsy: eksportuje produkty jako oferty, synchronizuje stany magazynowe i automatycznie importuje zamówienia Etsy do PrestaShop. Ten przewodnik obejmuje instalację, połączenie z Etsy, ustawienia i codzienną pracę.
Zgodny z PrestaShop 8.0 do 9.x, tryb wielosklepowy. Moduł korzysta z oficjalnego API Etsy Open v3 oraz połączenia OAuth 2.0 (z PKCE): hasło do Etsy nigdy nie jest wpisywane w PrestaShop.
Wymagania wstępne
- Działający sklep PrestaShop 8 lub 9 z dostępem do panelu administracyjnego.
- Aktywny sklep na Etsy.
- Aplikacja zarejestrowana w portalu deweloperskim Etsy (bezpłatnie), opisana w kolejnym kroku.
- Cron na serwerze (lub zewnętrzna usługa cron) do automatyzacji synchronizacji stanów i importu zamówień.
Instalacja
- W panelu administracyjnym PrestaShop przejdź do Moduły > Menedżer modułów.
- Kliknij Zainstaluj moduł i wskaż plik
dfetsy.zip. - Po instalacji kliknij Konfiguruj. Otworzy się strona administracyjna modułu podzielona na zakładki: Połączenie, Produkty, Zamówienia, Ustawienia, Cron, Logi.
Utworzenie aplikacji Etsy
Moduł łączy się z Etsy przez Twoją własną aplikację deweloperską. Procedura jest bezpłatna i zajmuje kilka minut.
- Wejdź do portalu deweloperskiego Etsy (etsy.com/developers) i utwórz nową aplikację.
- Etsy przekaże Ci klucz API nazywany keystring (to Twój Client ID).
- W konfiguracji aplikacji Etsy podaj adres przekierowania (Callback URL) dokładnie w takiej postaci, w jakiej wyświetla go zakładka Połączenie modułu.
Adres przekierowania musi zostać skopiowany identycznie. Każda różnica (http/https, obecność lub brak końcowego ukośnika) spowoduje niepowodzenie połączenia OAuth.
Połączenie z Etsy
W zakładce Połączenie:
- Wklej swój keystring w przeznaczone pole i kliknij Zapisz.
- Kliknij Połącz mój sklep Etsy. Otworzy się karta Etsy z prośbą o autoryzację aplikacji.
- Po autoryzacji nastąpi przekierowanie na stronę potwierdzenia. Wróć do panelu administracyjnego i odśwież stronę: baner powinien pokazywać status Połączono wraz z nazwą i identyfikatorem Twojego sklepu.
- Użyj przycisku Testuj połączenie, aby sprawdzić poprawność konfiguracji.
Token dostępu jest odświeżany automatycznie przez moduł. Przycisk Rozłącz usuwa tokeny i powiązanie ze sklepem.
Ustawienia
Zakładka Ustawienia zbiera zachowanie synchronizacji oraz domyślne atrybuty Etsy.
Synchronizacja
- Wysyłaj stany magazynowe z PS do Etsy: każda zmiana ilości trafia do kolejki i jest wysyłana przy najbliższym przebiegu crona.
- Aktualizuj ofertę przy każdym zapisie produktu: automatycznie ponawia eksport oferty po modyfikacji powiązanego produktu.
- Importuj zamówienia Etsy: włącza automatyczny import opłaconych zamówień.
- Wysyłaj zdjęcia produktu: dołącza zdjęcia produktu do oferty podczas eksportu.
- Synchronizuj ceny: wysyła cenę z PrestaShop do Etsy.
- Narzut cenowy Etsy (%): dolicza procent do eksportowanej ceny, aby pokryć prowizje Etsy, bez zmiany ceny w PrestaShop.
- Język eksportu: język używany w tytule i opisie ofert.
Domyślne atrybuty Etsy
- Kto wykonał / Kiedy: obowiązkowe wartości Etsy (who_made / when_made) stosowane do nowych ofert.
- Taxonomy ID: domyślna kategoria Etsy dla ofert (patrz Seller Taxonomy w Etsy).
- Profil wysyłki i Zasady zwrotów: listy wczytywane automatycznie z Twojego sklepu Etsy po połączeniu.
- Stan oferty przy eksporcie: Wersja robocza (zalecane, sprawdzasz ofertę przed publikacją) lub Aktywna (natychmiastowa publikacja, naliczana jest opłata Etsy za wystawienie).
Import zamówień
- Status zamówienia: status PrestaShop nadawany importowanym zamówieniom.
- Przewoźnik: domyślnie przypisywany przewoźnik.
- Wysyłaj e-maile PrestaShop przy imporcie: domyślnie wyłączone, ponieważ Etsy już powiadamia kupującego. W większości przypadków należy pozostawić wyłączone.
Eksport produktów do Etsy
W zakładce Produkty wyszukaj artykuł po nazwie, referencji lub identyfikatorze.
- Eksportuj do Etsy tworzy ofertę z tytułem, opisem, tagami, zdjęciami i ceną produktu. Oferta powstaje jako wersja robocza (lub aktywna, zależnie od ustawień), następnie wysyłane są dane magazynowe (SKU, cena, ilość).
- Aktualizuj ponownie wysyła informacje do już powiązanej oferty.
- Powiąż (listing ID) ręcznie łączy produkt PrestaShop z istniejącą ofertą Etsy przez podanie identyfikatora oferty.
- Odłącz usuwa powiązanie (oferta na Etsy nie zostaje usunięta).
W wersji 1.0 produkt jest eksportowany jako pojedyncza referencja: używane są łączna ilość i cena bazowa. Produkty z odmianami są więc obsługiwane w trybie jednego SKU. Natywne wariacje Etsy są przewidziane w kolejnej wersji.
Synchronizacja stanów magazynowych
Gdy ilość powiązanego produktu zmienia się w PrestaShop, zadanie synchronizacji trafia do dedykowanej kolejki bez duplikatów. Podczas przeglądania sklepu nie jest wykonywane żadne wywołanie do Etsy: kolejkę przetwarza cron, co eliminuje spowolnienia witryny i panelu administracyjnego. Przetwarzanie można też uruchomić ręcznie z zakładki Cron.
Import zamówień
Opłacone zamówienia Etsy są importowane jako zamówienia PrestaShop:
- Tworzony jest klient gościnny (lub wykorzystywany istniejący, jeśli ten adres e-mail jest już znany).
- Przejmowany jest adres dostawy z Etsy. Jeśli kraj nie zostanie rozpoznany, zamówienie jest pomijane, a informacja trafia do logów.
- Zapłacona kwota jest odwzorowana co do grosza: suma zamówienia PrestaShop odpowiada kwocie rozliczonej na Etsy.
- Notatka pozostawiona przez kupującego jest dołączana jako wiadomość w wątku obsługi klienta zamówienia.
- Zabezpieczenie przed duplikatami według identyfikatora zamówienia Etsy (receipt) wyklucza podwójny import.
Zamówienie Etsy dotyczące oferty niepowiązanej z produktem PrestaShop jest pomijane (ostrzeżenie zapisywane jest w logach). Upewnij się, że produkty sprzedawane na Etsy są prawidłowo powiązane po stronie PrestaShop.
Konfiguracja crona
Zakładka Cron wyświetla adres URL zabezpieczony tokenem. Wywołuj go co 5 do 15 minut, aby przetworzyć kolejkę (stany magazynowe i produkty) oraz zaimportować nowe zamówienia.
*/10 * * * * curl -s "https://twoj-sklep.pl/index.php?fc=module&module=dfetsy&controller=cron&token=TWOJ_TOKEN" > /dev/null
Przycisk Uruchom kolejkę teraz pozwala wykonać przetwarzanie ręcznie w celu przetestowania.
Bez regularnych przebiegów crona przez kilka tygodni token odświeżania Etsy może wygasnąć. Wystarczy wtedy ponownie połączyć sklep z zakładki Połączenie, aby go odtworzyć.
Logi i diagnostyka
Zakładka Logi pokazuje dziennik zdarzeń (eksport, stany magazynowe, import, błędy). W razie problemu z synchronizacją zajrzyj tam w pierwszej kolejności: każdy błąd Etsy jest zapisywany wraz z komunikatem. Wpisy starsze niż 30 dni są usuwane automatycznie.
Ograniczenia wersji 1.0
- Jeden produkt to jedna oferta w pojedynczej referencji (bez natywnych wariacji Etsy).
- Jeden sklep Etsy naraz.
- Numer śledzenia przesyłki nie jest jeszcze odsyłany do Etsy.
- Szczegółowy rozdział kosztów wysyłki na pozycje nie jest odtwarzany (rozstrzyga łączna kwota zapłacona na Etsy).
Najczęstsze pytania
Czy moje oferty są publikowane automatycznie?
Domyślnie nie: powstają jako wersje robocze, żebyś mógł je sprawdzić przed publikacją na Etsy. W ustawieniach możesz wybrać stan „Aktywna”, aby publikować od razu.
Jak uniknąć sprzedaży towaru niedostępnego w obu kanałach?
Włącz synchronizację stanów magazynowych i regularny cron: każda sprzedaż lub zmiana ilości w PrestaShop aktualizuje ilość na Etsy przy najbliższym przebiegu crona.
Gdzie znajdę kod źródłowy?
Pełny kod jest dołączony do pliku ZIP, bez szyfrowania (PSR-4, autoloader SPL), do audytu lub personalizacji.