Kod rabatowy PrestaShop nie działa? 8 przyczyn i jak je sprawdzić
Kod rabatowy w PrestaShop nie działa najczęściej z jednego z ośmiu powodów: jest wyłączony, poza datami ważności, wyczerpał limit użyć, ogranicza go grupa klientów, koszyk nie spełnia minimalnej kwoty albo warunku produktów, koliduje z innym kodem albo obejmuje tylko produkty, które są już w promocji. Sprawdzaj w tej kolejności.
Autor: Sani. Sani buduje moduł TellMyShop i na co dzień pracuje z zapleczem sklepów PrestaShop.
Aktualizacja: · 4 min czytania
Co PrestaShop sprawdza, zanim przyjmie kod?
Każdy kod rabatowy to w PrestaShop reguła koszyka. Kiedy klient wpisuje kod, sklep przechodzi przez listę warunków i odrzuca kod przy pierwszym, który nie jest spełniony. Klient widzi wtedy ogólny komunikat, a ty nie wiesz, który warunek zawiódł.
Reguła koszyka ma w panelu trzy zakładki: Informacje, Warunki i Akcje. Większość problemów siedzi w Warunkach, ale najbardziej podstępne w Akcjach.
| Zakładka | Co ustawiasz | Typowy błąd |
|---|---|---|
| Informacje | nazwa, kod, opis, priorytet, status, częściowe użycie | kod wyłączony albo literówka w kodzie |
| Warunki | klient, daty, minimalna kwota, limity, przewoźnicy, grupy, łączenie z innymi regułami, wybór produktów | data końca minęła, grupa Gość nie zaznaczona, minimalna kwota liczona z podatkiem albo bez |
| Akcje | darmowa dostawa, rabat procentowy albo kwotowy, na co działa, wykluczenie przecenionych | rabat tylko na produkty z promocją, które są wykluczone |
Jak znaleźć przyczynę krok po kroku?
Weź kod, który nie działa, i koszyk, w którym nie działa. Potem idź po kolei.
- Status. Czy przełącznik w zakładce Informacje jest włączony?
- Daty. Czy data i godzina początku już minęły, a końca jeszcze nie? Kod ważny „od dziś” z godziną 23:59 działa dopiero wieczorem.
- Limity. Ile razy kod został już użyty łącznie i ile razy może go użyć jeden klient?
- Klient i grupy. Czy kod jest przypisany do konkretnego klienta? Czy grupa, w której jest kupujący, jest zaznaczona? Gość to osobna grupa.
- Minimalna kwota. Czy koszyk ją przekracza, licząc tak, jak ustawiłeś: z podatkiem albo bez, z dostawą albo bez?
- Wybór produktów. Jeśli kod dotyczy kategorii albo producenta, czy koszyk zawiera takie produkty w wymaganej ilości?
- Łączenie z innymi kodami. Czy w koszyku jest już inny kod, z którym ten się nie łączy? Przy kilku regułach liczy się też priorytet: niższa liczba oznacza wcześniejsze sprawdzenie.
- Produkty w promocji. Czy w Akcjach jest wykluczenie przecenionych produktów, a w koszyku są tylko takie? Rabat wynosi wtedy zero.
Ósmy punkt jest najczęstszym źródłem zgłoszeń typu „kod przyjęty, a rabatu nie ma”. Że kilka reguł koszyka naraz potrafi dać nieoczekiwany wynik, widać też w zgłoszeniach w projekcie PrestaShop na GitHubie, a podstawy ustawiania kuponów omawia wątek „Kupony rabatowe, jak?”. O łączeniu kodów z promocjami właściciele sklepów dyskutują na forum PrestaShop i w wątku o kodzie łączonym z cenami specyficznymi.
Dlaczego testowy zakup działa, a klient zgłasza błąd?
Bo test robisz w innych warunkach niż klient. Logujesz się na swoje konto, które jest w innej grupie albo ma już historię zamówień. Masz w koszyku inny zestaw produktów. Sprawdzasz po południu, a klient wpisał kod rano, zanim zaczął obowiązywać.
Najpewniejszy test to okno prywatne przeglądarki, zakup jako gość i dokładnie ten koszyk, który miał klient. Jeśli wtedy działa, różnica leży w koncie klienta: grupie, limicie na klienta albo przypisaniu kodu do konkretnej osoby.
Pamiętaj też o pamięci podręcznej. Rzadko, ale zdarza się, że motyw albo moduł koszyka pokazuje stary stan. Jak to rozpoznać, opisujemy w tekście PrestaShop nie widać zmian.
Jak sprawdzić kody rabatowe z Claude?
Prosisz o przegląd kodów albo podajesz jeden, który nie działa. Claude czyta reguły koszyka ze wszystkimi ograniczeniami i liczbą użyć, porównuje je z opisem sytuacji i wskazuje warunek, który blokuje kod.
Klient pisze, że kod JESIEN15 nie daje rabatu. W koszyku ma dwa lampiony z kategorii Lampiony.
Kod JESIEN15 jest włączony, ważny do 2026-10-31, użyty 37 razy z limitu 200.
Przyczyna: rabat 15% działa tylko na produkty niebędące w promocji, a oba lampiony w koszyku mają obecnie cenę promocyjną. Kod jest przyjmowany, ale rabat wynosi 0 zł.
Masz dwie drogi: zostawić tak, jak jest, i odpisać klientowi, albo wyłączyć wykluczenie przecenionych produktów dla tego kodu.
Zostawiamy. Pokaż jeszcze, które kody są nieaktualne.
Wygasłe albo wyczerpane: 9 kodów. Proponuję je wyłączyć:
było: LATO10 włączony
będzie: LATO10 wyłączony
Pozostałe 8 w tym samym podglądzie. Zapiszę po twojej zgodzie.
Kody rabatowe należą do grupy Handel, którą po instalacji modułu włączasz sam w panelu. Nowe kody tworzone przez Claude startują wyłączone, dopóki nie poprosisz o ich włączenie. Kod, który był użyty w zamówieniu, można tylko wyłączyć, nie usunąć, żeby historia zamówień się zgadzała.
Przykłady próśb: przegląd aktywnych kodów i promocji, kod rabatowy do newslettera i wyłączenie wygasłych kodów. Jeśli przygotowujesz większą akcję cenową, przeczytaj też o masowej zmianie cen. Kody rabatowe obsługuje wersja płatna, opisana w cenniku.
Jak ustawić kod, żeby nie było kolejnych zgłoszeń?
Kilka zasad oszczędza większość pytań od klientów.
- W opisie kodu w newsletterze podaj warunki: minimalną kwotę, datę końca i to, czy działa na produkty w promocji.
- Ustaw datę końca z godziną 23:59, a początek z godziną 00:00.
- Zaznacz grupę Gość, jeśli kod ma działać bez logowania.
- Do newslettera generuj kody jednorazowe zamiast jednego wspólnego, który krąży po serwisach z kuponami.
- Raz w miesiącu wyłącz kody, które wygasły.
Pytania i odpowiedzi
Dlaczego kod rabatowy działa u mnie, a u klienta nie?
Najczęściej dlatego, że testujesz zalogowany, a klient kupuje jako gość albo należy do innej grupy klientów. Druga częsta przyczyna to wykorzystany limit na klienta: ty użyłeś kodu raz w teście, klient dwa razy. Sprawdź ograniczenia grup w zakładce Warunki i limity użyć.
Jak sprawić, żeby kod rabatowy nie łączył się z promocją?
W zakładce Akcje reguły koszyka zaznacz wykluczenie produktów już przecenionych. Wtedy rabat nie obejmie produktów z ceną specjalną. Jeśli chcesz, żeby kod nie łączył się z innymi kodami, ustaw ograniczenie łączenia z innymi regułami koszyka w zakładce Warunki.
Czy kod rabatowy może obejmować tylko jedną kategorię?
Tak. W zakładce Warunki dodajesz ograniczenie wyboru produktów, na przykład do kategorii albo producenta. Pamiętaj, że to warunek: koszyk musi zawierać takie produkty. Żeby rabat liczył się tylko od nich, w zakładce Akcje ustaw rabat na wybrane produkty, a nie na całe zamówienie.
Dlaczego nowy kod rabatowy od razu nie działa?
Sprawdź przełącznik statusu i datę początku. Kod z datą rozpoczęcia w przyszłości albo z godziną późniejszą niż teraz jeszcze nie działa. Kody tworzone przez Claude zaczynają jako wyłączone, dopóki wyraźnie nie poprosisz o włączenie, więc jeden kod może czekać na twoją decyzję.
Czy Claude może sprawdzić wszystkie moje kody naraz?
Tak, w wersji płatnej z włączoną grupą Handel. Claude pokaże listę kodów z liczbą użyć, datami i ograniczeniami oraz wskaże te, które wygasły albo wyczerpały limit. Wyłączenie starych kodów robisz w tej samej rozmowie, z podglądem przed zapisem. Użytego kodu nie da się usunąć, tylko wyłączyć.
PrestaShop jest zastrzeżonym znakiem towarowym PrestaShop SA. Claude jest znakiem towarowym Anthropic. TellMyShop nie jest powiązany z żadną z tych firm.