1. O ustawie
KS SOR to profesjonalny moduł dla PrestaShop 8.x i 9.x, który zapewnia zgodność sklepów internetowych z ustawą o środkach ochrony roślin (Dz.U.2024.630 z nowelizacją Dz.U.2025.1709).
Od tego dnia sklepy internetowe sprzedające środki ochrony roślin muszą weryfikować zaświadczenia kupujących i prowadzić ewidencję transakcji.
Co wymaga ustawa?
-
Weryfikacja zaświadczeń Każdy nabywca ŚOR dla profesjonalistów musi posiadać ważne zaświadczenie
-
Ewidencja sprzedaży Obowiązek prowadzenia rejestru wszystkich transakcji przez 5 lat
-
Zakaz wysyłki do paczkomatów ŚOR nie mogą być dostarczane do automatów paczkowych
-
Raporty dla PIORiN Na żądanie inspekcji — eksport danych w wymaganym formacie
2. Funkcjonalności
Weryfikacja certyfikatów
-
Formularz w procesie zamówienia Klient wprowadza dane certyfikatu podczas checkout
-
Pełna walidacja Sprawdzenie numeru, wydawcy i daty ważności certyfikatu
-
Automatyczne sprawdzanie wygaśnięcia Blokada zamówienia gdy certyfikat jest przeterminowany
-
Zapis na koncie klienta Certyfikat zapisany — nie trzeba wpisywać przy każdym zamówieniu
-
Nieusuwalna historia Pełna historia wszystkich zmian certyfikatów klienta
Blokady bezpieczeństwa
-
Blokada zakupu bez certyfikatu Automatyczne zatrzymanie zamówienia przy braku ważnego certyfikatu
-
Całkowita blokada fumigantów Wymóg prawny — fumiganty nie mogą być sprzedawane przez internet
-
Blokada paczkomatów i punktów odbioru Ukrycie niedozwolonych metod dostawy dla produktów SOR
-
Ostrzeżenia w koszyku Informacja o wymaganiach gdy koszyk zawiera produkty SOR
Zarządzanie produktami SOR
-
Oznaczanie pojedynczych produktów Każdy produkt można oznaczyć jako środek ochrony roślin
-
Oznaczanie całych kategorii Wszystkie produkty w kategorii automatycznie jako SOR
-
Fumiganty (całkowity zakaz) Osobne oznaczenie produktów zabronionych do sprzedaży online
-
Informacja na karcie produktu Widoczna informacja o wymaganiu certyfikatu
Panel administracyjny
| Moduł | Funkcje |
|---|---|
| Dashboard | Podsumowanie: liczba klientów, certyfikatów, zamówień. Statystyki miesięczne. |
| Klienci SOR | Lista klientów, status certyfikatu, weryfikacja manualna, notatki, eksport CSV |
| Ewidencja zamówień | Snapshot certyfikatu przy zamówieniu, 5-letnia retencja, eksport CSV |
| Produkty SOR | Oznaczanie produktów, kategorii, fumigantów |
| Raporty | Wygasające certyfikaty (30 dni), wygasłe, pełny log audytu |
| Konfiguracja | Włączanie modułu, blokowane przewoźniki, powiadomienia, komunikaty |
Powiadomienia e-mail
-
Alert o wygasającym certyfikacie Automatyczne powiadomienie gdy certyfikat wkrótce wygaśnie
-
Konfigurowalna liczba dni Np. 30 dni przed wygaśnięciem — do ustawienia w konfiguracji
-
Szablony po polsku Gotowe szablony e-mail w języku polskim
Zgodność prawna
Dz.U.2025.1709 • Ewidencja sprzedaży zgodna z wymogami • 5-letnia retencja danych • Niemodyfikowalna historia certyfikatów (audit trail) • Przygotowanie na datę wejścia w życie: 6 marca 2026
Szczegóły techniczne
-
Responsywne szablony Pełna obsługa desktop + mobile, zoptymalizowane formularze
-
AJAX walidacja formularzy Błyskawiczna walidacja bez przeładowania strony
-
Wielojęzyczność Polski w zestawie, łatwe dodawanie nowych tłumaczeń
-
Pliki bezpieczeństwa Pliki index.php we wszystkich katalogach, zabezpieczenie przed listowaniem
Kompatybilność
3. Wymagania systemowe
| Komponent | Wymagana wersja |
|---|---|
| PrestaShop | 8.0.0 — 9.x |
| PHP | 8.1 lub nowszy |
| MySQL | 5.7 / MariaDB 10.3 |
KS SOR to pierwszy stabilny moduł do obsługi ustawy o ŚOR, który jest w pełni kompatybilny z PrestaShop 9.x.
4. Instalacja
Prześlij pliki modułu
# Przez SCP
scp -r ks_sor/ user@server:/var/www/prestashop/modules/
# Lub przez FTP - prześlij folder ks_sor do /modules/
Zainstaluj moduł
Panel Admina → Moduły → Menedżer modułów → Wyszukaj "KS SOR" → Zainstaluj
Wyczyść cache PrestaShop
Panel Admina → Zaawansowane → Wydajność → Wyczyść cache
Skonfiguruj moduł
Panel Admina → KamikStudio → KS SOR → Konfiguracja
5. Konfiguracja
Ustawienia podstawowe
| Opcja | Domyślnie | Opis |
|---|---|---|
| Moduł aktywny | ✅ | Włącz/wyłącz weryfikację zaświadczeń |
| Data wejścia w życie | 2026-03-06 | Data, od której moduł blokuje zamówienia |
| Tryb weryfikacji | Wymagany | Certyfikat wymagany lub opcjonalny |
| Wymagaj deklaracji | ✅ | Klient musi potwierdzić zgodność danych |
| Guest checkout | ❌ | Zablokuj zakupy ŚOR dla gości |
| Powiadomienia email | ✅ | Alerty o wygasających zaświadczeniach |
| Dni przed wygaśnięciem | 30 | Kiedy wysłać przypomnienie |
| Własne komunikaty | — | Edytowalne teksty wyświetlane klientom |
| Informacje prawne | ✅ | Pokazuj/ukryj informacje prawne na stronie |
Blokowane przewoźniki
Ustawa zabrania wysyłki ŚOR do automatów paczkowych. W konfiguracji wybierz przewoźników, którzy mają być zablokowani dla zamówień zawierających produkty SOR:
- InPost Paczkomaty
- DPD Pickup
- Allegro Automaty
- Orlen Paczka
6. Produkty SOR
Oznaczanie produktów
Istnieją dwa sposoby oznaczenia produktów jako ŚOR:
Metoda 1: Pojedynczy produkt
- Edytuj produkt w panelu admina
- Przejdź do zakładki "SOR"
- Zaznacz "Produkt jest środkiem ochrony roślin"
- Zapisz
Metoda 2: Cała kategoria
- Przejdź do KamikStudio → KS SOR → Konfiguracja
- W sekcji "Kategorie SOR" wybierz kategorie
- Wszystkie produkty z wybranych kategorii będą traktowane jako ŚOR
Metoda 3: Cecha produktu
- Utwórz cechę "Produkt SOR" (tak/nie)
- W konfiguracji modułu wybierz ID tej cechy
- Produkty z tą cechą będą automatycznie oznaczone
Fumiganty — całkowity zakaz
Fumiganty (środki gazowe do zwalczania szkodników) mogą być sprzedawane wyłącznie w punktach stacjonarnych. Moduł pozwala oznaczyć produkty jako fumiganty, które zostaną całkowicie zablokowane do sprzedaży online.
Oznaczanie fumigantów
- Edytuj produkt w panelu admina
- Przejdź do zakładki "SOR"
- Zaznacz "Produkt jest środkiem ochrony roślin"
- Dodatkowo zaznacz "Fumigant (zakaz sprzedaży online)"
- Zapisz
Produkt oznaczony jako fumigant:
- Nie może być dodany do koszyka
- Wyświetla komunikat o zakazie sprzedaży online
- Może być widoczny na stronie (do celów informacyjnych) lub ukryty
Oznaczenie na karcie produktu
Produkty SOR wyświetlają specjalny komunikat informujący klienta o wymaganiach:
⚠️ Ten produkt jest środkiem ochrony roślin.
Zakup wymaga ważnego zaświadczenia o ukończeniu szkolenia
w zakresie stosowania środków ochrony roślin.
7. Klienci i zaświadczenia
Formularz zaświadczenia
Klient wprowadza dane zaświadczenia podczas checkout lub w panelu "Moje konto":
| Pole | Format | Walidacja |
|---|---|---|
| Numer zaświadczenia | Tekst | Wymagane, min. 5 znaków |
| Data wydania | YYYY-MM-DD | Wymagane, nie może być z przyszłości |
| Data ważności | YYYY-MM-DD | Wymagane, musi być w przyszłości |
| Organ wydający | Tekst | Opcjonalne |
Weryfikacja przez admina
W panelu "Klienci SOR" administrator może:
- Przeglądać zaświadczenia klientów
- Ręcznie zweryfikować zaświadczenie
- Dodać notatki
- Zablokować klienta
- Przeglądać historię zmian certyfikatów
8. Proces zakupowy
Jak działa blokada?
Integracja z TheCheckout
Moduł automatycznie wykrywa TheCheckout i wyświetla formularz weryfikacji w odpowiednim miejscu. Nie wymaga dodatkowej konfiguracji.
9. Scenariusze UX
Moduł obsługuje różne scenariusze zakupowe, zapewniając intuicyjny proces dla klienta końcowego.
Flow zakupowy
Koszyk z SOR → Checkout (adres) → Metoda dostawy*
↓
★ WERYFIKACJA SOR (formularz/modal)
↓
┌────┴────┐
▼ ▼
Ma zaświad. Brak zaświadczenia
↓ ↓
Walidacja Usuń produkty SOR
↓ ↓
└──────┬───────┘
▼
Płatność → Potwierdzenie
* Blokada paczkomatów dla produktów SOR
Stany formularza weryfikacji
| Stan | Opis | Akcja klienta |
|---|---|---|
| Początkowy | Formularz pusty, przycisk "Kontynuuj" nieaktywny | Wypełnij dane zaświadczenia lub zaznacz "Nie posiadam" |
| Wypełniony | Wszystkie pola poprawne, oświadczenie zaznaczone | Kliknij "Kontynuuj" aby przejść dalej |
| Błąd walidacji | Np. zaświadczenie wygasło, puste pole | Popraw dane zgodnie z komunikatem błędu |
| Brak zaświadczenia | Klient zaznaczył "Nie posiadam zaświadczenia" | Usuń produkty SOR z koszyka lub podaj dane |
Komunikaty błędów
| Pole | Błąd | Komunikat |
|---|---|---|
| Imię i nazwisko | Puste | "Pole imię i nazwisko jest wymagane" |
| Imię i nazwisko | Za krótkie | "Imię i nazwisko musi mieć min. 3 znaki" |
| Nr zaświadczenia | Puste | "Numer zaświadczenia jest wymagany" |
| Podmiot wydający | Pusty | "Wybierz lub wpisz podmiot wydający" |
| Data ważności | Przeszła | "Zaświadczenie utraciło ważność!" |
| Oświadczenie | Niezaznaczone | "Musisz potwierdzić prawdziwość danych" |
Blokady systemowe
| Sytuacja | Komunikat dla klienta |
|---|---|
| Wybór paczkomatu | "Środki ochrony roślin nie mogą być dostarczone do paczkomatów. Wybierz inną metodę dostawy." |
| Brak zaświadczenia + produkty SOR | "Twój koszyk zawiera produkty wymagające zaświadczenia. Usuń te produkty lub podaj dane zaświadczenia." |
| Fumigant online | "Ten produkt nie może być zakupiony przez internet. Skontaktuj się z nami." |
Elementy UI
-
Badge na karcie produktu Zielona etykieta "SOR" + info "Wymaga zaświadczenia o ukończeniu szkolenia"
-
Alert w koszyku Żółte ostrzeżenie z informacją o wymaganych dokumentach
-
Potwierdzenie zamówienia Sekcja z danymi zaświadczenia i listą produktów SOR
10. Ewidencja
Każde zamówienie zawierające produkty SOR jest automatycznie zapisywane w ewidencji:
| Pole | Opis |
|---|---|
| ID zamówienia | Numer zamówienia PrestaShop |
| Data zamówienia | Data i godzina złożenia |
| Klient | Imię, nazwisko, email |
| Numer zaświadczenia | Numer z formularza |
| Data ważności | Data ważności zaświadczenia |
| Produkty SOR | Lista produktów z ilościami |
| Wartość SOR | Wartość produktów SOR |
Zgodnie z ustawą, ewidencja musi być przechowywana przez 5 lat. Moduł NIE usuwa danych przy deinstalacji!
11. Raporty PIORiN
Na żądanie Państwowej Inspekcji Ochrony Roślin i Nasiennictwa możesz wygenerować raport:
- Przejdź do KamikStudio → KS SOR → Raporty PIORiN
- Wybierz zakres dat
- Kliknij "Generuj raport"
- Pobierz plik CSV lub PDF
Format raportu
Raport zawiera wszystkie wymagane przez ustawę dane:
- Dane nabywcy
- Numer i data ważności zaświadczenia
- Nazwa i ilość produktów
- Data transakcji
12. Baza danych
Tabele modułu
ps_ks_sor_customers # Klienci z zaświadczeniami
ps_ks_sor_certificate_history # Historia zmian certyfikatów
ps_ks_sor_orders # Ewidencja zamówień SOR
ps_ks_sor_products # Produkty oznaczone jako SOR
ps_ks_sor_audit_log # Log audytowy zmian
Szczegółowa struktura dostępna w pliku /sql/install.sql.
13. Hooki i API dla deweloperów
Hooki PrestaShop
Moduł wykorzystuje następujące hooki:
| Hook | Opis |
|---|---|
displayCustomerAccount | Sekcja "Moje zaświadczenie" w koncie klienta |
displayPaymentTop | Formularz weryfikacji przed płatnością |
actionCarrierProcess | Blokada paczkomatów dla produktów SOR |
displayProductAdditionalInfo | Informacja o wymaganiach na karcie produktu |
displayShoppingCartFooter | Alert w koszyku o produktach SOR |
actionValidateOrder | Zapis do ewidencji przy składaniu zamówienia |
actionAdminProductsControllerSaveBefore | Zapis oznaczenia SOR przy edycji produktu |
Własne hooki modułu
Moduł udostępnia własne hooki do integracji:
// Przed walidacją certyfikatu
Hook::exec('actionKsSorBeforeCertificateValidation', [
'customer_id' => $customerId,
'certificate_data' => $data
]);
// Po zapisie certyfikatu
Hook::exec('actionKsSorAfterCertificateSave', [
'customer_id' => $customerId,
'certificate' => $certificate
]);
// Przed blokadą zamówienia
Hook::exec('actionKsSorBeforeOrderBlock', [
'cart' => $cart,
'reason' => $blockReason
]);
Metody publiczne
// Sprawdź czy klient ma ważny certyfikat
$ksSor = Module::getInstanceByName('ks_sor');
$isValid = $ksSor->isCustomerCertificateValid($customerId);
// Pobierz dane certyfikatu klienta
$certificate = $ksSor->getCustomerCertificate($customerId);
// Sprawdź czy produkt jest SOR
$isSor = $ksSor->isProductSor($productId);
// Sprawdź czy koszyk zawiera produkty SOR
$hasSor = $ksSor->cartHasSorProducts($cartId);
// Pobierz listę zablokowanych przewoźników
$blocked = $ksSor->getBlockedCarriers();
Overridowanie szablonów
Szablony modułu można nadpisać w motywie:
themes/twoj_motyw/modules/ks_sor/views/templates/hook/
├── displayCustomerAccount.tpl # Panel klienta
├── displayPaymentTop.tpl # Formularz checkout
├── displayProductAdditionalInfo.tpl # Info na karcie produktu
└── displayShoppingCartFooter.tpl # Alert w koszyku
14. Rozwiązywanie problemów
Formularz zaświadczenia się nie wyświetla
Przyczyna: Brak produktów SOR w koszyku lub moduł nieaktywny.
Rozwiązanie:
- Sprawdź czy moduł jest aktywny
- Sprawdź czy produkty są oznaczone jako SOR
- Wyczyść cache PrestaShop
Zakładka KamikStudio nie pojawia się
Rozwiązanie: Odinstaluj i zainstaluj moduł ponownie, lub:
rm -f var/cache/prod/class_index.php
rm -f var/cache/dev/class_index.php
Paczkomaty nie są blokowane
Rozwiązanie:
- Przejdź do Konfiguracja → Blokowane przewoźniki
- Wybierz wszystkich przewoźników z automatami
- Zapisz konfigurację
Błąd "Class KsSorCustomer not found"
Przyczyna: Uszkodzony cache klas PrestaShop.
Rozwiązanie:
rm -rf var/cache/*
php bin/console cache:clear
Klient może kupić bez certyfikatu
Przyczyna: Moduł nieaktywny lub data wejścia w życie w przyszłości.
Rozwiązanie:
- Sprawdź czy moduł jest aktywny w konfiguracji
- Sprawdź datę wejścia w życie (domyślnie: 2026-03-06)
- Dla testów ustaw datę na wczorajszą
Produkty z kategorii SOR nie są rozpoznawane
Przyczyna: Kategoria nie została zapisana w konfiguracji.
Rozwiązanie:
- KamikStudio → KS SOR → Konfiguracja
- Sekcja "Kategorie SOR"
- Wybierz kategorie i kliknij "Zapisz"
- Wyczyść cache sklepu
Email o wygasającym certyfikacie nie dochodzi
Rozwiązanie:
- Sprawdź czy włączone są powiadomienia w konfiguracji modułu
- Sprawdź konfigurację SMTP w PrestaShop
- Sprawdź folder SPAM
- Uruchom cronjob ręcznie:
php modules/ks_sor/cron.php
Konflikt z innym modułem checkout
Rozwiązanie: Moduł jest testowany z TheCheckout i standardowym checkout. Dla innych modułów:
- Skontaktuj się z nami — sprawdzimy kompatybilność
- Możliwe dostosowanie za dodatkową opłatą
15. FAQ
Czy moduł działa z PrestaShop 9?
Tak! KS SOR to pierwszy stabilny moduł do obsługi ŚOR dla PrestaShop 9.x w Polsce. Jest w pełni kompatybilny z wersjami 8.0+ i 9.x.
Od kiedy obowiązuje ustawa?
Ustawa wchodzi w życie 6 marca 2026 r. Od tego dnia sklepy internetowe muszą weryfikować zaświadczenia i prowadzić ewidencję.
Jak długo przechowywane są dane?
Zgodnie z wymogami prawa, ewidencja jest przechowywana przez 5 lat. Moduł celowo nie usuwa danych przy deinstalacji.
Czy moduł blokuje paczkomaty?
Tak. Ustawa zabrania wysyłki ŚOR do automatów paczkowych. Moduł automatycznie ukrywa wybranych przewoźników dla zamówień z produktami SOR.
Co jeśli klient ma przeterminowane zaświadczenie?
Klient nie będzie mógł złożyć zamówienia zawierającego produkty SOR. Musi najpierw zaktualizować dane zaświadczenia.
Czy mogę sprzedawać fumiganty online?
Nie. Ustawa całkowicie zabrania sprzedaży fumigantów przez internet. Moduł pozwala oznaczyć takie produkty, aby były zablokowane do zakupu online.
Czy moduł współpracuje z TheCheckout?
Tak, moduł automatycznie wykrywa TheCheckout i wyświetla formularz weryfikacji w odpowiednim miejscu. Nie wymaga dodatkowej konfiguracji.
Czy klient musi wpisywać certyfikat przy każdym zamówieniu?
Nie. Certyfikat jest zapisywany na koncie klienta. Przy kolejnych zamówieniach dane są automatycznie pobierane. Klient może je zaktualizować w panelu "Moje konto".
Co się stanie po odinstalowaniu modułu?
Tabele z ewidencją NIE są usuwane — to wymóg prawny (5 lat przechowywania). Usuwane są tylko tabele konfiguracyjne i produktów SOR.
Czy moduł sprawdza certyfikat w zewnętrznej bazie?
Nie, moduł nie łączy się z zewnętrznymi bazami. Weryfikacja polega na sprawdzeniu daty ważności wprowadzonej przez klienta. Administrator może ręcznie zweryfikować certyfikat.
Ile kosztują aktualizacje po 12 miesiącach?
Po wygaśnięciu okresu aktualizacji, przedłużenie na kolejne 12 miesięcy kosztuje 300 zł netto. Moduł będzie działał bez aktualizacji, ale nie otrzymasz nowych funkcji i poprawek kompatybilności.
Czy mogę używać modułu na wielu sklepach?
Licencja jest na 1 domenę produkcyjną. Dla każdego dodatkowego sklepu potrzebna jest osobna licencja. Domeny dev/staging są nielimitowane.
16. Licencja i ceny
Opcje zakupu
| Opcja | Cena netto | Co zawiera |
|---|---|---|
| Moduł | 1700 zł | Pliki modułu, dokumentacja, 12 miesięcy aktualizacji. Instalacja po stronie klienta. |
| Moduł + Pełne wdrożenie | 3500 zł | Wszystko powyżej + instalacja na serwerze, pełna konfiguracja, dostosowanie stylów do szablonu klienta, szkolenie. |
Licencja Komercyjna KamikStudio
Udzielenie licencji
Licencja uprawnia do instalacji i użytkowania modułu na:
- 1 (jednej) domenie produkcyjnej
- Nieograniczonej liczbie domen deweloperskich/testowych/stagingowych
Ograniczenia
- Zabroniona jest odsprzedaż, dystrybucja lub udostępnianie modułu
- Zabronione jest usuwanie informacji o autorze
- Zabroniona jest dekompilacja i modyfikacja kodu źródłowego w celu powielenia
Wsparcie i aktualizacje
- 12 miesięcy bezpłatnych aktualizacji od daty zakupu
- Wsparcie techniczne przez email (czas reakcji do 48h)
- Aktualizacje zgodności z nowymi wersjami PrestaShop
17. Wsparcie
Zgłaszanie błędów
Przy zgłaszaniu problemu podaj:
- Wersję PrestaShop
- Wersję PHP
- Opis problemu
- Kroki do odtworzenia
- Logi błędów (jeśli są)
Płatne wsparcie
Oferujemy:
- Instalację i konfigurację modułu
- Dostosowanie do indywidualnych potrzeb
- Integrację z innymi modułami
- Szkolenie dla pracowników
Stawka: 200 zł netto / godzina