# DataFirefly Lojalność i polecenia: punkty, poziomy i program poleceń dla PrestaShop

> Instalacja Zainstaluj moduł w Moduły > Menedżer modułów > Załaduj moduł, wysyłając plik ZIP, lub skopiuj folder dfloyalty do katalogu /modules/ sklepu i kliknij Zainstaluj. Podczas instalacji moduł tworzy swoje…

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

## Instalacja

Zainstaluj moduł w **Moduły > Menedżer modułów > Załaduj moduł**, wysyłając plik ZIP, lub skopiuj folder `dfloyalty` do katalogu `/modules/` sklepu i kliknij Zainstaluj.

Podczas instalacji moduł tworzy swoje tabele, zapisuje ustawienia domyślne, tworzy cztery poziomy statusu (Brąz, Srebro, Złoto, Platyna) i dodaje zakładkę **Klienci > Lojalność i polecenia**. Przycisk Konfiguruj w menedżerze modułów otwiera bezpośrednio ekran ustawień.

Zacznij od wyboru **koloru akcentu** w Ustawienia > Ogólne. Barwi on przyciski modułu, paski postępu i e-maile. Domyślnie to ciemna zieleń, która może nie pasować do Twojej marki.

## Pierwsze ustawienia

Ustawienia są pogrupowane w sekcje dostępne z menu po lewej. Zanim udostępnisz program klientom, sprawdź co najmniej:

- **Punkty za każde wydane €**: domyślnie 1, czyli 1 punkt za każde euro. Dozwolone są wartości ułamkowe (0,5 = 1 punkt za każde 2 euro).
- **Statusy zamówień potwierdzające punkty**: domyślnie płatność zaakceptowana, wysłane i dostarczone.
- **Kurs wymiany**: domyślnie 100 pkt = 5 €. Pole po lewej pokazuje na bieżąco procent zwracany klientom po wymianie punktów.
- **Nagrody za polecenia**: domyślnie 10 € dla znajomego i 500 pkt dla polecającego.

## Zdobywanie punktów

### Obliczanie

Punkty są liczone z pozycji produktowych zamówienia, w walucie klienta, a następnie przeliczane na walutę domyślną. Koszty wysyłki nigdy nie dają punktów. Trzy opcje modyfikują podstawę:

- **Obliczaj od cen brutto**: wyłącz, aby liczyć od cen netto.
- **Odejmuj bony i rabaty**: reguły koszyka zamówienia (poza darmową wysyłką) są proporcjonalnie odejmowane od podstawy.
- **Brak punktów za produkty już przecenione**: produkty sprzedane z obniżką są wykluczone.

Następnie stosowany jest mnożnik poziomu klienta i punkty bonusowe produktu. Wynik jest zaokrąglany w dół.

### Cykl życia punktów

- Przy zatwierdzeniu zamówienia punkty są zapisywane jako **oczekujące**. Klient widzi je na koncie, ale nie może ich użyć.
- Gdy zamówienie osiągnie jeden ze statusów potwierdzających punkty, stają się **dostępne**.
- Gdy zamówienie przejdzie do jednego ze statusów anulujących punkty, są usuwane, zarówno oczekujące, jak i dostępne.
- **Częściowa korekta** odejmuje część punktów odpowiadającą kwocie zwróconych produktów.
- Jeśli anulowane zamówienie wróci do statusu potwierdzającego, punkty wracają.

Każda operacja trafia do historii, która nigdy nie jest nadpisywana: zamiast zmieniać istniejący wpis, dodawany jest wpis korygujący.

### Punkty za rejestrację

Ustawienie **Punkty za rejestrację** przyznaje stałą liczbę punktów przy każdym założeniu konta klienta (nie przy zamówieniach gościa). Zostaw 0, aby je wyłączyć.

## Poziomy statusu

Zakładka **Poziomy** wyświetla poziomy według progu. Każdy poziom ma nazwę i opis korzyści z tłumaczeniami, próg w punktach statusowych, mnożnik punktów i kolor używany na karcie członkowskiej klienta.

**Punkty statusowe** to zdobyte punkty pomniejszone o anulowania i zwroty. Wymiana punktów na bony ani ich wygaśnięcie nie obniżają statusu. Ustawienie **Okres statusu** ogranicza obliczenia do ostatnich N miesięcy; zostaw 0, aby liczyć od rejestracji.

Pierwszy poziom powinien mieć próg 0, aby każdy klient miał status od pierwszego zamówienia. Gdy klient osiągnie nowy poziom, przy następnej wizycie na stronie lojalnościowej zobaczy gratulacje.

Opis korzyści ma charakter informacyjny. Aby korzyść faktycznie działała, powiąż poziom z grupą klientów (patrz niżej).

### Grupa klientów poziomu

W formularzu poziomu pole **Grupa klientów tego poziomu** wiąże poziom z grupą PrestaShop. Moduł dodaje do tej grupy klientów, którzy osiągną poziom, i usuwa ich, gdy go opuszczą. Ustaw dla grupy rabat (Klienci > Grupy), regułę koszyka z darmową dostawą zarezerwowaną dla grupy lub ceny specjalne: korzyść działa bez ręcznej pracy.

- Utwórz osobną grupę dla każdego poziomu. Klient dodany ręcznie do tej grupy zostałby z niej usunięty, jeśli nie ma poziomu.
- Domyślna grupa klienta nigdy nie jest zmieniana.
- Synchronizacja odbywa się przy każdej operacji punktowej, przy zapisie poziomu i codziennie w ramach zaplanowanego zadania.

## Punkty bonusowe za produkty

Zakładka **Produkty z bonusem** pozwala przyznać więcej punktów za wybrane produkty. Wyszukaj produkt po nazwie lub indeksie i wybierz:

- **Mnożnik**: 2 podwaja punkty za ten produkt.
- **Stałe punkty za sztukę**: liczba punktów dodawana za każdą sztukę, oprócz punktów standardowych.

Daty początku i końca są opcjonalne. Bez dat bonus jest stały. Strona produktu pokazuje plakietkę (x2, +50) i punkty do zdobycia, przeliczane po zmianie ilości. Bonus łączy się z mnożnikiem poziomu.

## Wymiana punktów na bony

### Na koncie klienta

W zakładce Nagrody strony lojalnościowej klient wybiera suwakiem, ile punktów wymienić, w wielokrotnościach liczby punktów z kursu wymiany. Otrzymuje osobisty bon z kodem `DFPTS-XXXXXXXX`, wyświetlany w oknie z przyciskiem kopiowania i, jeśli opcja jest włączona, wysłany e-mailem.

### Bezpośrednio w koszyku

Gdy opcja **Pozwól klientom wykorzystywać punkty bezpośrednio w koszyku** jest włączona, blok lojalnościowy w koszyku pokazuje suwak. Bon jest tworzony i stosowany jednym kliknięciem, nigdy powyżej wartości produktów. Z tego bloku można zastosować jeden bon z punktów na koszyk. Wygenerowane wcześniej, niewykorzystane bony również pojawiają się z przyciskiem Zastosuj.

### Ustawienia bonów

- **Minimalna liczba punktów do wymiany**: poniżej klient widzi pasek postępu do pierwszego bonu.
- **Ważność bonu**: w dniach, domyślnie 365.
- **Minimalny koszyk do wykorzystania**: 0 oznacza brak minimum.
- **Łączenie z innymi regułami koszyka**: wyłącz, jeśli bony lojalnościowe nie mogą się sumować z kodami promocyjnymi.

Bony to standardowe reguły koszyka PrestaShop, widoczne w Katalog > Rabaty, przypisane do klienta i jednorazowe.

## Program poleceń

### Link polecającego

Każdy klient ma kod i link polecający (parametr `?dfref=KOD` na stronie głównej), widoczne w zakładce Polecenia strony lojalnościowej. Może skopiować link, udostępnić go przez WhatsApp, e-mail, Facebook lub X albo przez natywne udostępnianie w telefonie, a także wysłać zaproszenia e-mailem z formularza.

### Przybycie znajomego

Odwiedzający, który kliknie link, jest zapamiętywany na czas ustawiony w **Pamięć linku** (domyślnie 30 dni). Dyskretny baner przedstawia mu prezent, a komunikat towarzyszy formularzowi rejestracji. Przy zakładaniu konta, także w trakcie składania zamówienia:

- jeśli nagrodą znajomego jest **kwota** lub **procent**, tworzony jest bon bez kodu i automatycznie dodawany do koszyka, z ustawionym minimalnym zakupem i ważnością;
- jeśli są to **punkty**, zostaną przyznane po zatwierdzeniu pierwszego zamówienia.

### Kod wpisany przy rejestracji

Opcja **Dodaj opcjonalne pole „Kod polecający” w formularzu rejestracji** pozwala znajomemu, który dostał kod ustnie, wpisać go przy zakładaniu konta. Nieznany kod jest odrzucany z komunikatem o błędzie. Pole nie pojawia się, jeśli odwiedzający trafił już przez link polecający.

### Nagroda polecającego

Polecający otrzymuje nagrodę, gdy pierwsze zamówienie znajomego osiągnie status potwierdzający punkty, a suma produktów brutto osiągnie **Minimalne pierwsze zamówienie znajomego**. Dostaje punkty lub bon z kodem `DFREF-XXXXXXXX` oraz e-mail z podziękowaniem.

### Zabezpieczenia

- Klient nie może polecić samego siebie, również z tym samym adresem e-mail.
- Adres e-mail, z którego już zamawiano w sklepie, nie jest przypisywany do polecającego.
- Liczy się tylko pierwsze zatwierdzone zamówienie znajomego. Jeśli jest poniżej minimum, polecenie otrzymuje status Nie kwalifikuje się.
- Zaproszenia e-mail mają dzienny limit na klienta, a ten sam adres nie może zostać zaproszony dwa razy w ciągu 7 dni.

### Statusy polecenia

**Zaproszony**: e-mail wysłany przez klienta. **Zarejestrowany**: konto założone przez link. **Nagrodzony**: pierwsze zamówienie zatwierdzone, nagrody przyznane. **Nie kwalifikuje się**: pierwsze zamówienie poniżej minimum.

## Wygasanie i zaplanowane zadanie

Ustawienie **Wygaśnięcie po okresie bezczynności** powoduje wygaśnięcie salda klienta, gdy przez podaną liczbę miesięcy nie zdobył punktów. Każde zamówienie przesuwa termin, a klient widzi go na koncie. Zostaw 0, aby punkty nigdy nie wygasały.

Wygasanie jest stosowane przy otwarciu strony lojalnościowej przez klienta oraz przez codzienne zadanie, którego adres URL znajduje się w Ustawienia > Konserwacja. Zaplanuj je raz dziennie w menedżerze cron lub w module zadań PrestaShop. Zadanie wysyła też przypomnienia o wygaśnięciu, przyznaje punkty urodzinowe i aktualizuje grupy poziomów. Przycisk **Uruchom teraz codzienne zadanie** w zakładce Konserwacja robi to samo.

Ustawienie **Przypomnienie przed wygaśnięciem** (domyślnie 30 dni) wysyła klientowi e-mail z saldem, jego wartością i datą wygaśnięcia. Na jeden termin wysyłane jest jedno przypomnienie; jeśli klient w międzyczasie złoży zamówienie, termin się przesuwa, a nowe przypomnienie przyjdzie w swoim czasie.

Dodaj `&resync=1` do adresu, aby ponownie przetworzyć także statusy zamówień z ostatnich 7 dni.

## Urodziny, newsletter i kampanie

### Punkty urodzinowe

Ustawienie **Punkty urodzinowe** przyznaje punkty raz w roku w dniu urodzin podanym na koncie klienta, wraz z e-mailem z życzeniami. Punkty przyznaje codzienne zadanie, a także logowanie klienta lub otwarcie jego strony lojalnościowej. Osoby urodzone 29 lutego otrzymują je 28 lutego w latach nieprzestępnych. Domyślnie korzystają z nich tylko klienci z zatwierdzonym zamówieniem, aby uniknąć kont zakładanych tylko dla prezentu.

Pole daty urodzenia musi być widoczne w formularzu klienta: Parametry sklepu > Ustawienia klientów, opcja daty urodzenia.

### Punkty za zapis do newslettera

Ustawienie **Punkty za zapis do newslettera** przyznaje punkty tylko raz na klienta: przy rejestracji z zaznaczonym polem newslettera, przy późniejszym zapisie z poziomu konta lub przez blok newslettera w stopce dla adresu, który odpowiada kontu klienta. Subskrybenci sprzed włączenia opcji nie otrzymują punktów wstecz.

### Kampanie punktowe

Sekcja **Kampania punktowa** mnoży wszystkie punkty zdobyte między dwiema datami: 2 oznacza podwójne punkty. Mnożnik sumuje się z mnożnikiem poziomu i bonusami produktów. W trakcie kampanii na stronach produktów, w bloku koszyka i na stronie lojalnościowej pojawia się plakietka. Decyduje data zamówienia: zamówienie złożone w trakcie kampanii zachowuje zwiększone punkty, nawet jeśli zostanie zatwierdzone po jej zakończeniu.

## Wykluczanie grup klientów

W Ustawienia > Ogólne zaznacz **grupy klientów wyłączone z programu**, na przykład konta firmowe lub personel. Klient z jednej z tych grup nie zdobywa punktów, nie widzi kafelka, strony lojalnościowej ani bloków produktu i koszyka, a jego link polecający nie daje nagrody.

## Co widzi klient

- **Moje konto**: kafelek z nazwą programu i saldem oraz link w bloku Moje konto w stopce.
- **Strona lojalnościowa**: karta członkowska w kolorach poziomu, postęp, zakładki Nagrody, Polecenia, Historia i Statusy.
- **Strona produktu**: punkty do zdobycia, wartość w walucie, plakietka bonusu. Opcja **Pokazuj punkty do zdobycia na stronach produktów**.
- **Koszyk**: punkty za zamówienie, saldo, wykorzystanie punktów i dostępne bony. Opcja **Pokazuj blok punktów w koszyku**. Blok odświeża się przy każdej zmianie koszyka.
- **Potwierdzenie zamówienia**: zdobyte punkty, oczekujące lub już przyznane.

## Panel administracyjny

### Panel

Punkty w obiegu i ich wartość (zobowiązanie, jakie stanowią salda), punkty oczekujące, liczba członków, punkty zdobyte i wymienione w ciągu 30 dni z wykresem, członkowie według poziomu, utworzone i wykorzystane bony, lejek poleceń, najlepsi polecający i ostatnia aktywność.

### Członkowie i karta członka

Zakładka **Członkowie** wyświetla klientów z punktami, posortowanych według salda. Wyszukiwanie obejmuje imię, e-mail, ID klienta lub kod polecający i uwzględnia klientów bez punktów, aby można było im je przyznać. Karta członka pokazuje saldo, poziom, historię, bony i poleconych znajomych oraz pozwala na **ręczną korektę**: wpisz liczbę dodatnią lub ujemną i powód, który klient zobaczy w historii.

Natywna karta klienta w PrestaShop również pokazuje blok z saldem, poziomem, kodem polecającym i linkiem do karty członka.

### Strona zamówienia i eksporty

Na stronie zamówienia w panelu blok pokazuje punkty zamówienia i ich stan, zastosowane bonusy i mnożniki, wykorzystane bony lojalnościowe oraz informację, czy to pierwsze zamówienie poleconego klienta. Zakładka Członkowie oferuje dwa eksporty CSV: listę członków (saldo, poziom, punkty statusu, kod polecający) i wszystkie operacje punktowe. Pliki otwierają się bezpośrednio w Excelu lub LibreOffice.

## E-maile

Moduł wysyła sześć e-maili w języku odbiorcy: zaproszenie od znajomego, prezent powitalny znajomego, nagrodę polecającego, bon utworzony z punktów, życzenia urodzinowe i przypomnienie o wygaśnięciu. Korzystają z jednego szablonu w kolorze akcentu z logo sklepu. Teksty pochodzą z tłumaczeń modułu, szablon znajduje się w `mails/`.

## Dane i odinstalowanie

Domyślnie opcja **Zachowaj salda i ustawienia przy odinstalowaniu modułu** jest włączona: odinstalowanie i ponowna instalacja niczego nie usuwają. Wyłącz ją przed odinstalowaniem, jeśli chcesz usunąć wszystkie dane. Gdy klient zostanie usunięty w PrestaShop, jego punkty, zapisane bony i polecenia są usuwane razem z nim.

Moduł współpracuje z oficjalnym modułem RODO PrestaShop: eksport danych klienta obejmuje historię punktów i kod polecający, a usunięcie klienta z poziomu tego modułu kasuje jego dane lojalnościowe.

## Rozwiązywanie problemów

### Punkty pozostają oczekujące

Sprawdź, czy bieżący status zamówienia jest zaznaczony w **Statusy zamówień potwierdzające punkty**. Jeśli status zmienił pracownik, którego profil nie ma uprawnienia Wyświetl dla modułu (Zaawansowane > Zespół > Uprawnienia), PrestaShop nie uruchomił modułu: użyj **Ponownie zsynchronizuj zamówienia z ostatnich 90 dni** w Ustawienia > Konserwacja. Operację można powtórzyć bez ryzyka podwójnego naliczenia.

### Blok lojalnościowy nie pojawia się w koszyku

Blok jest wyświetlany przez hook `displayShoppingCart`, obecny w motywie Classic. Jeśli Twój motyw go nie wywołuje, dodaj `{hook h='displayShoppingCart'}` w szablonie koszyka lub skontaktuj się z nami, podając nazwę motywu.

### Baner poleceń się nie wyświetla

Jest pokazywany tylko niezalogowanym odwiedzającym, którzy trafili przez ważny link, i pozostaje ukryty przez 3 dni po zamknięciu. Przetestuj w oknie prywatnym przeglądarki.

### Niektóre teksty pozostają po angielsku

Moduł jest dostarczany w 8 językach. Dla innego języka lub zmiany tekstu użyj Międzynarodowe > Tłumaczenia > Tłumaczenia zainstalowanych modułów.

## Zgodność

- PrestaShop od 8.0 do 9.x, ten sam plik ZIP obsługuje obie wersje.
- Wielojęzyczność i wiele walut. W trybie multistore saldo klienta jest wspólne dla wszystkich sklepów.
- Architektura ModuleAdminController, bez zależności Composer.
- Moduł i e-maile przetłumaczone na angielski, francuski, hiszpański, niemiecki, włoski, niderlandzki, polski i portugalski.
