PS PrestaShop Średnio zaawansowany

Wieloetapowe Odzyskiwanie Porzuconych Koszyków: kompletny przewodnik

Instalacja, konfiguracja i obsługa odzyskiwania porzuconych koszyków: automatyczne wykrywanie, wieloetapowe sekwencje e-maili, eskalowane kupony rabatowe, przywracanie koszyka jednym kliknięciem, śledzenie i statystyki odzyskiwania dla PrestaShop 8 i 9.

Zaktualizowano Wersja modułu 1.0.0

Prezentacja

Moduł Wieloetapowe Odzyskiwanie Porzuconych Koszyków (datafireflycartrecovery) automatycznie wykrywa porzucone koszyki i przypomina o nich klientom przez sekwencję zaplanowanych e-maili. Każdy etap ma własne opóźnienie, treść per język i opcjonalny kupon rabatowy, którego zachęta może nasilać się w czasie. Podpisany link pozwala klientowi odzyskać koszyk jednym kliknięciem, a pulpit mierzy realnie odzyskany przychód.

Średnio blisko 7 na 10 koszyków jest porzucanych przed płatnością. Dobrze ustawiona sekwencja przypomnień (proste przypomnienie, potem umiarkowany rabat, potem mocniejsza oferta z darmową dostawą) odzyskuje znaczącą część tego przychodu bez ręcznego wysiłku.

Zgodność

  • PrestaShop 8.0 do 9.x
  • PHP 8.1 do 8.3
  • Pojedynczy sklep i multisklep (kampanie i statystyki segmentowane per sklep)
  • 5 języków: FR, EN, ES, DE, IT
  • Architektura PSR-4 bez Composera, jedna klasa na plik, brak zależności zewnętrznych

Instalacja

  1. W zapleczu otwórz Moduły > Menedżer modułów.
  2. Kliknij Zainstaluj moduł i wybierz plik datafireflycartrecovery.zip.
  3. Po instalacji kliknij Konfiguruj.

Podczas instalacji moduł tworzy swoje tabele (śledzone koszyki, kolejka wysyłki, zdarzenia, lista wykluczeń), rejestruje hooki, dodaje zakładkę Odzyskiwanie koszyków w menu Klienci i tworzy domyślną kampanię trójetapową gotową do użycia: +1 h (proste przypomnienie, bez kuponu), +24 h (kupon -5%) i +72 h (kupon -10% + darmowa dostawa).

Konfiguracja CRON-a

Moduł opiera się na dwóch zaplanowanych procesach, wykonywanych przez jeden adres URL zabezpieczony tokenem: skan (oznacza nieaktywne koszyki jako porzucone i planuje etapy) oraz przetwarzanie (wysyła należne e-maile z poszanowaniem zabezpieczeń). Dokładny adres URL, wraz z tokenem, jest wyświetlany na stronie konfiguracji modułu.

https://TWOJ-SKLEP/index.php?fc=module&module=datafireflycartrecovery&controller=cron&token=TWOJ_TOKEN

Zaplanuj zadanie mniej więcej co 15 minut, na przykład:

*/15 * * * * wget -q -O /dev/null "https://TWOJ-SKLEP/index.php?fc=module&module=datafireflycartrecovery&controller=cron&token=TWOJ_TOKEN"

Bez aktywnego zadania cron żaden koszyk nie zostanie oznaczony jako porzucony i żadne przypomnienie nie wyjdzie. Token chroni adres URL przed nieautoryzowanymi wywołaniami: nie udostępniaj go publicznie. Jeśli go zregenerujesz, pamiętaj o aktualizacji linii crona.

Ustawienia ogólne

Ze strony konfiguracji dostosuj globalne zachowanie wykrywania i wysyłki:

  • Czas porzucenia (domyślnie 60 min): okres nieaktywności koszyka, po którym jest uznawany za porzucony.
  • Rozmiar partii (domyślnie 50): liczba e-maili przetwarzanych przy każdym przebiegu crona, aby wygładzić obciążenie serwera i wysyłkę SMTP.
  • Maksymalna liczba e-maili na koszyk (domyślnie 3): limit e-maili wysyłanych dla jednego koszyka, łącznie ze wszystkich etapów.
  • Czas śledzenia (domyślnie 30 dni): po jego upływie nieskonwertowany koszyk przestaje być przypominany i jest archiwizowany.
  • Automatyczne logowanie (domyślnie włączone): loguje klienta, gdy kliknie link przywracania (zobacz niżej).
  • Nadawca: adres i nazwa nadawcy e-maili. Pozostaw puste, aby użyć adresu i nazwy sklepu.

Kampanie i sekwencje

Ustawienia kampanii

Kampania grupuje sekwencję etapów i jej reguły targetowania:

  • Minimalna kwota koszyka: przypomina tylko o koszykach powyżej progu (0 = brak minimum).
  • Okno wysyłki: przedział godzinowy (np. 8:00–21:00), poza którym należne e-maile są odkładane, aby uniknąć nocnych wysyłek. Okno obsługuje przejście przez północ.
  • Anty-powtórzenia (cooldown): minimalny odstęp między dwiema sekwencjami dla tego samego klienta, aby go nie przeciążać.
  • Targetuj gości: włącza lub wyłącza koszyki gości (koszyki bez konta klienta).
  • Wyklucz konta B2B: wyklucza klientów, którzy mają wypełnioną firmę, numer rejestrowy lub numer VAT.

Etapy sekwencji

Każdy etap określa, kiedy i co wysłać:

  • Pozycja: kolejność etapu w sekwencji.
  • Opóźnienie po porzuceniu (w minutach): np. 60 = 1 h, 1440 = 24 h, 4320 = 72 h.
  • Temat i treść HTML per język: treść marketingowa, tłumaczona dla każdego aktywnego języka.
  • Etap aktywny: pozwala aktywować lub zawiesić etap bez jego usuwania.

Wpisywana treść HTML jest osadzana w responsywnym szablonie e-mail dostarczonym w pięciu językach: nagłówek, przycisk akcji, tabela podsumowania koszyka, blok kuponu rabatowego i stopka (w tym link wypisania) są dodawane automatycznie. W tekście dostępne są trzy zmienne: {firstname}, {shop_name} i {voucher_code}.

Kupony rabatowe

Każdy etap może generować imienny kupon, tworzony w locie dla danego klienta:

  • Typ: procent lub kwota stała.
  • Wartość i minimalna kwota zastosowania.
  • Ważność w dniach.
  • Darmowa dostawa (łączy się z rabatem).
  • Rabat brutto lub netto.

Kupony są imienne, jednorazowe i ograniczone w czasie: nie mogą być udostępniane ani używane ponownie. Dobra praktyka to nie oferować żadnego rabatu na pierwszym etapie (proste przypomnienie), a potem stopniowo eskalować (-5%, potem -10% + darmowa dostawa), aby udzielać rabatu tylko tym klientom, którzy potrzebują go do konwersji.

Przywracanie koszyka jednym kliknięciem

Każdy e-mail zawiera podpisany link przywracania (HMAC), który odtwarza dokładnie koszyk klienta i, jeśli opcja jest włączona, automatycznie loguje go na jego konto. Jedno kliknięcie sprowadza go z powrotem na stronę koszyka, gotowego do płatności, z kuponem rabatowym danego etapu już przypisanym.

Link jest podpisany: każda modyfikacja jego parametrów go unieważnia. Automatyczne logowanie można wyłączyć w ustawieniach ogólnych, jeśli wolisz, aby klient logował się ręcznie.

Śledzenie i przypisywanie przychodu

  • Otwarcia: niewidoczny piksel rejestruje otwarcie każdego e-maila.
  • Kliknięcia: kliknięcie linku przywracania jest zliczane.
  • Konwersja: przy zatwierdzeniu zamówienia moduł automatycznie łączy zamówienie z przypominanym koszykiem, oznacza koszyk jako odzyskany, przypisuje przychód i anuluje pozostałe przypomnienia sekwencji.

Zgodność z RODO

Każdy e-mail zawiera link wypisania. Gdy klient się wypisuje, jego adres trafia na trwałą listę wykluczeń: nigdy więcej nie otrzyma przypomnienia, a oczekujące wysyłki dotyczące go są anulowane. Koszyki bez użytecznego adresu e-mail nigdy nie są śledzone. Odinstalowanie modułu usuwa tabele, konfigurację i zakładkę administracyjną.

Pulpit i statystyki

Zakładka Odzyskiwanie koszyków wyświetla kluczowe wskaźniki z 30 dni: wykryte koszyki i porzuconą wartość, odzyskane koszyki i współczynnik odzyskania, wysłane e-maile, współczynniki otwarć i kliknięć oraz odzyskany przychód. Wykres porównuje dzień po dniu wykrycia z odzyskaniami, a tabela szczegółowo pokazuje wydajność każdego etapu aktywnej kampanii (wysłane, otwarte, kliknięte, współczynnik kliknięć). Zakładka Koszyki wyświetla ostatnie śledzone koszyki wraz z ich statusem.

FAQ i rozwiązywanie problemów

Żadne przypomnienie nie wychodzi

Sprawdź w pierwszej kolejności, czy zadanie cron jest aktywne i wywołuje adres URL z właściwym tokenem. Bez crona nic nie jest wykrywane ani wysyłane. Następnie sprawdź, czy kampania jest aktywna, czy co najmniej jeden etap jest aktywny i czy bieżąca godzina mieści się w oknie wysyłki.

Jak wykrywane są porzucone koszyki?

Moduł rejestruje koszyki przez hook PrestaShop, a następnie skan crona oznacza jako porzucone te, które pozostały nieaktywne dłużej niż skonfigurowany czas porzucenia, pod warunkiem że dostępny jest użyteczny adres e-mail.

Czy klient może otrzymać za dużo e-maili?

Nie: maksymalna liczba e-maili na koszyk, anty-powtórzenia między sekwencjami i okno wysyłki ściśle ograniczają częstotliwość. Gdy tylko koszyk zostanie skonwertowany lub klient się wypisze, pozostałe przypomnienia są anulowane.

Czy kupony rabatowe są bezpieczne?

Tak. Każdy kupon jest imienny, jednorazowy i ograniczony w czasie; jest generowany dla konkretnego klienta i nie może być użyty przez osobę trzecią.

Czy moduł jest zgodny z multisklepem?

Tak. Kampanie, śledzone koszyki i statystyki są segmentowane per sklep.

Czy jest zgodny z PrestaShop 9?

Tak. Moduł jest testowany na PrestaShop 8 i 9 i podąża za zmianami API PS9 (formatowanie cen przez API Locale, kontrolery itd.).

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia