v1.0.0 PrestaShop 8.x / 9.x

KS SOR - Środki Ochrony Roślin

Pierwszy stabilny moduł w Polsce do obsługi ustawy o ŚOR dla PrestaShop 8+ i 9+

Autor: KamikStudio
Ustawa od: 6 marca 2026
Licencja: 1 domena + dev/staging

Zobacz moduł w akcji

Sprawdź jak KS SOR działa na żywo w prawdziwym sklepie internetowym. Zobacz formularz certyfikatu, informacje na karcie produktu i cały proces zakupowy.

Odwiedź sklep.agropunkt.eu

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).

Ważna data: 6 marca 2026 r.

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

Pełna zgodność z Ustawą o środkach ochrony roślin

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ść

✅ PrestaShop 8.x ✅ PrestaShop 9.x ✅ PHP 8.1+ ✅ TheCheckout ✅ Standardowy checkout ✅ Responsywność ✅ AJAX walidacja ✅ Wielojęzyczność

3. Wymagania systemowe

Komponent Wymagana wersja
PrestaShop 8.0.09.x
PHP 8.1 lub nowszy
MySQL 5.7 / MariaDB 10.3
Pierwszy moduł dla PrestaShop 9!

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

1

Prześlij pliki modułu

Terminal / SCP
# Przez SCP
scp -r ks_sor/ user@server:/var/www/prestashop/modules/

# Lub przez FTP - prześlij folder ks_sor do /modules/
2

Zainstaluj moduł

Panel Admina → ModułyMenedżer modułów → Wyszukaj "KS SOR" → Zainstaluj

3

Wyczyść cache PrestaShop

Panel Admina → ZaawansowaneWydajnośćWyczyść cache

4

Skonfiguruj moduł

Panel Admina → KamikStudioKS SORKonfiguracja

5. Konfiguracja

Ustawienia podstawowe

Opcja Domyślnie Opis
Moduł aktywnyWłącz/wyłącz weryfikację zaświadczeń
Data wejścia w życie2026-03-06Data, od której moduł blokuje zamówienia
Tryb weryfikacjiWymaganyCertyfikat wymagany lub opcjonalny
Wymagaj deklaracjiKlient musi potwierdzić zgodność danych
Guest checkoutZablokuj zakupy ŚOR dla gości
Powiadomienia emailAlerty o wygasających zaświadczeniach
Dni przed wygaśnięciem30Kiedy wysłać przypomnienie
Własne komunikatyEdytowalne teksty wyświetlane klientom
Informacje prawnePokazuj/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

  1. Edytuj produkt w panelu admina
  2. Przejdź do zakładki "SOR"
  3. Zaznacz "Produkt jest środkiem ochrony roślin"
  4. Zapisz

Metoda 2: Cała kategoria

  1. Przejdź do KamikStudio → KS SOR → Konfiguracja
  2. W sekcji "Kategorie SOR" wybierz kategorie
  3. Wszystkie produkty z wybranych kategorii będą traktowane jako ŚOR

Metoda 3: Cecha produktu

  1. Utwórz cechę "Produkt SOR" (tak/nie)
  2. W konfiguracji modułu wybierz ID tej cechy
  3. Produkty z tą cechą będą automatycznie oznaczone

Fumiganty — całkowity zakaz

Sprzedaż fumigantów przez internet jest całkowicie zakazana!

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

  1. Edytuj produkt w panelu admina
  2. Przejdź do zakładki "SOR"
  3. Zaznacz "Produkt jest środkiem ochrony roślin"
  4. Dodatkowo zaznacz "Fumigant (zakaz sprzedaży online)"
  5. 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:

Przykładowy komunikat
⚠️ 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?

Klient dodaje produkt SOR do koszyka
Alert: "Zakup wymaga ważnego zaświadczenia"
Klient wypełnia formularz zaświadczenia
Walidacja: data ważności > dziś
Blokada paczkomatów dla tego zamówienia
Zamówienie złożone + zapis w ewidencji

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 nazwiskoPuste"Pole imię i nazwisko jest wymagane"
Imię i nazwiskoZa krótkie"Imię i nazwisko musi mieć min. 3 znaki"
Nr zaświadczeniaPuste"Numer zaświadczenia jest wymagany"
Podmiot wydającyPusty"Wybierz lub wpisz podmiot wydający"
Data ważnościPrzeszła"Zaświadczenie utraciło ważność!"
OświadczenieNiezaznaczone"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ówieniaNumer zamówienia PrestaShop
Data zamówieniaData i godzina złożenia
KlientImię, nazwisko, email
Numer zaświadczeniaNumer z formularza
Data ważnościData ważności zaświadczenia
Produkty SORLista produktów z ilościami
Wartość SORWartość produktów SOR
5 lat przechowywania

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:

  1. Przejdź do KamikStudio → KS SOR → Raporty PIORiN
  2. Wybierz zakres dat
  3. Kliknij "Generuj raport"
  4. 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

Struktura
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
displayCustomerAccountSekcja "Moje zaświadczenie" w koncie klienta
displayPaymentTopFormularz weryfikacji przed płatnością
actionCarrierProcessBlokada paczkomatów dla produktów SOR
displayProductAdditionalInfoInformacja o wymaganiach na karcie produktu
displayShoppingCartFooterAlert w koszyku o produktach SOR
actionValidateOrderZapis do ewidencji przy składaniu zamówienia
actionAdminProductsControllerSaveBeforeZapis oznaczenia SOR przy edycji produktu

Własne hooki modułu

Moduł udostępnia własne hooki do integracji:

PHP - Własne hooki KS SOR
// 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

PHP - API modułu
// 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:

Ścieżki szablonów
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:

  1. Sprawdź czy moduł jest aktywny
  2. Sprawdź czy produkty są oznaczone jako SOR
  3. 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:

  1. Przejdź do Konfiguracja → Blokowane przewoźniki
  2. Wybierz wszystkich przewoźników z automatami
  3. 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:

  1. Sprawdź czy moduł jest aktywny w konfiguracji
  2. Sprawdź datę wejścia w życie (domyślnie: 2026-03-06)
  3. Dla testów ustaw datę na wczorajszą
Produkty z kategorii SOR nie są rozpoznawane

Przyczyna: Kategoria nie została zapisana w konfiguracji.

Rozwiązanie:

  1. KamikStudio → KS SOR → Konfiguracja
  2. Sekcja "Kategorie SOR"
  3. Wybierz kategorie i kliknij "Zapisz"
  4. Wyczyść cache sklepu
Email o wygasającym certyfikacie nie dochodzi

Rozwiązanie:

  1. Sprawdź czy włączone są powiadomienia w konfiguracji modułu
  2. Sprawdź konfigurację SMTP w PrestaShop
  3. Sprawdź folder SPAM
  4. 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:

  1. Skontaktuj się z nami — sprawdzimy kompatybilność
  2. 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:

  1. Wersję PrestaShop
  2. Wersję PHP
  3. Opis problemu
  4. Kroki do odtworzenia
  5. 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