Cyfrowy paszport produktu (DPP): kompletny przewodnik
Instalacja i konfiguracja modułu Cyfrowy paszport produktu: kod QR dla każdego produktu, rejestr komponentów, śledzenie cyklu życia i zgodność z ESPR 2027.
Moduł DataFirefly Digital Product Passport (dfdpp) dodaje do sklepu PrestaShop 8 lub 9 kompletny system cyfrowego paszportu produktu zgodny z europejskim rozporządzeniem ESPR (Ecodesign for Sustainable Products Regulation), stosowanym stopniowo od 2027 roku do tekstyliów, baterii i elektroniki.
Każdy produkt otrzymuje paszport z unikalnym identyfikatorem (UUID), publiczną wielojęzyczną stronę dostępną przez kod QR, rejestr komponentów (nomenklatura BOM), dziennik zdarzeń cyklu życia oraz zarządzanie certyfikatami zgodności.
Wymagania
- PrestaShop 8.0.0 do 9.x
- PHP minimum 7.4 (zalecane 8.1 i nowsze)
- Włączone rozszerzenie GD (awaryjne generowanie kodów QR, gdy Endroid nie jest dostępny)
- Zgodny z trybem wielosklepowym i wielojęzycznym (FR, EN, ES, DE, IT w zestawie)
Instalacja
- W panelu administracyjnym otwórz Moduły > Menedżer modułów.
- Kliknij Zainstaluj moduł i wgraj plik
dfdpp.zip. - Moduł automatycznie tworzy swoje tabele, menu Paszporty produktów w sekcji Katalog oraz rejestruje publiczne trasy.
Żadna zewnętrzna biblioteka nie jest dołączana: moduł korzysta z Endroid QR Code dostarczanego przez rdzeń PrestaShop (wersja v3, v4 lub v5 wykrywana automatycznie), z awaryjnym renderowaniem przez GD.
Konfiguracja
Otwórz Moduły > dfdpp > Konfiguruj. Dostępne są trzy bloki:
Ustawienia ogólne
- Włącz moduł: przełącznik globalny.
- Tworzenie automatyczne: generuje paszport w wersji roboczej przy każdym zapisie produktu.
- Domyślna kategoria ESPR: tekstylia, baterie, elektronika, meble, obuwie albo kategoria ogólna.
- Wyświetlanie publiczne: włącza publiczną stronę
/dpp/{uuid}. - Zakładka na karcie produktu: pokazuje paszport w zakładce karty produktu.
- Publiczny eksport JSON: zezwala na pobranie paszportu w formacie JSON.
Kod QR
- Rozmiar (domyślnie 220 px) i margines (10 px).
- Poziom korekcji błędów: zalecany M (równowaga między gęstością a odpornością).
Dane firmy
Nazwa, numer VAT, adres i kraj odpowiedzialnego podmiotu gospodarczego. Te informacje pojawiają się na publicznej stronie paszportu, zgodnie z wymogami ESPR.
Tworzenie paszportu
Tworzenie automatyczne
Przy włączonej opcji paszport o statusie wersja robocza powstaje przy każdym zapisie produktu, z domyślną kategorią ESPR. Staje się widoczny publicznie dopiero po ręcznym opublikowaniu.
Tworzenie ręczne
- Otwórz Katalog > Paszporty produktów > Paszporty.
- Kliknij Dodaj i wybierz produkt (oraz wariant, jeśli to potrzebne).
- Uzupełnij pola i zapisz: unikalny UUID v4 zostanie wygenerowany automatycznie.
Na karcie produktu w panelu administracyjnym zakładka Paszport cyfrowy pozwala utworzyć albo otworzyć paszport edytowanego właśnie produktu.
Dane paszportu
Formularz jest podzielony na pięć bloków:
- Identyfikacja: produkt, wariant, kategoria ESPR, GTIN, producent, kraj pochodzenia, data produkcji, numer partii.
- Trwałość: ślad węglowy (kg CO₂e), wskaźnik przydatności do recyklingu, udział materiałów z recyklingu, indeks naprawialności, przewidywana żywotność, gwarancja.
- Treści wielojęzyczne: skład materiałowy, instrukcje pielęgnacji, zasady segregacji i postępowania po zakończeniu użytkowania, informacje o naprawie, informacje bezpieczeństwa, certyfikaty zgodności (sześć pól tekstu formatowanego, tłumaczonych na każdy język sklepu).
- Komponenty, zdarzenia i dokumenty: obsługiwane przez AJAX bezpośrednio w karcie paszportu (opisane niżej).
- Pola własne: dowolny obiekt JSON na dodatkowe dane branżowe.
Rejestr komponentów (BOM)
Każdy paszport może zawierać pełną nomenklaturę: nazwa komponentu, materiał, masa (g), udział procentowy w produkcie, udział materiału z recyklingu, przydatność do recyklingu, klasyfikacja jako niebezpieczny, numer CAS, dostawca i kraj. Komponenty mogą być zagnieżdżane (komponent nadrzędny i podkomponenty), co pozwala odwzorować złożone zespoły.
Menu Katalog > Paszporty produktów > Rejestr daje przekrojowy widok wszystkich komponentów w sklepie, z filtrowaniem po materiale, klasyfikacji niebezpieczeństwa lub dostawcy, co jest wygodne przy audytach REACH.
Zdarzenia cyklu życia
Dziennik odtwarza życie produktu: projektowanie, surowiec, produkcja, kontrola jakości, dystrybucja, pierwsza sprzedaż, odsprzedaż, naprawa, regeneracja, recykling, koniec życia. Każde zdarzenie ma datę, miejsce, podmiot (nazwa i rola), opis oraz opcjonalny adres URL dowodu.
Widok Katalog > Paszporty produktów > Zdarzenia gromadzi wszystkie zdarzenia z filtrem według typu.
Dokumenty i certyfikaty
Do każdego paszportu dołączysz wymagane certyfikaty: deklarację CE, REACH, RoHS, WEEE, unijne rozporządzenie bateryjne, OEKO-TEX, GOTS, Ecolabel, FSC, ISO 14001 i 9001, PEF, EPD albo inny. Każdy dokument ma numer, wystawcę, daty ważności i adres URL pliku.
Certyfikat po terminie ważności jest oznaczany przez mechanizm zgodności jako punkt blokujący i obniża wynik paszportu.
Wynik zgodności ESPR
Moduł ocenia każdy paszport według reguł właściwych dla jego kategorii ESPR i wyświetla wynik w skali do 100 wraz z poziomem:
- Zgodny: wynik co najmniej 90 i brak punktów blokujących.
- Częściowy: wynik co najmniej 60.
- Wersja robocza: dane niekompletne.
- Niezgodny: obecne punkty blokujące.
Lista weryfikacji i punktów blokujących jest szczegółowo opisana w karcie paszportu, a przycisk Przelicz odświeża wynik po zmianach.
Strona publiczna i kod QR
Każdy opublikowany paszport jest dostępny pod adresem https://twoj-sklep.pl/dpp/{uuid}, a jego kod QR w formacie PNG pod /dpp/{uuid}/qr.png (parametr ?size= przyjmuje wartości od 80 do 800 px, cache przeglądarki 24 godziny).
Strona publiczna prezentuje: zdjęcie i tożsamość produktu, kod QR, wskaźniki trwałości, skład, tabelę komponentów, pielęgnację i naprawę, zasady segregacji, oś czasu cyklu życia, certyfikaty, informacje bezpieczeństwa oraz dane odpowiedzialnego podmiotu. Zawiera także znaczniki JSON-LD schema.org na potrzeby pozycjonowania.
Umieść kod QR na etykiecie, instrukcji albo opakowaniu produktu: to droga dostępu przewidziana przez ESPR dla konsumenta końcowego, serwisantów i recyklerów.
Prezentacja na karcie produktu
Przy włączonej opcji na karcie produktu w sklepie pojawia się zakładka Paszport cyfrowy z kodem QR, kluczowymi wskaźnikami i odnośnikiem do strony publicznej. Awaryjnie blok może też wyświetlić się pod opisem.
RODO i dziennik dostępu
Publiczne odsłony mogą być rejestrowane w sposób zanonimizowany: adres IP jest haszowany algorytmem SHA-256 z dzienną solą i tajnym kluczem sklepu, więc żadne użyteczne dane osobowe nie są przechowywane. Opcję można wyłączyć w konfiguracji.
Wielosklepowość i wielojęzyczność
Paszporty są przypisane do sklepu (kontekst multishop jest respektowany), a wszystkie treści redakcyjne istnieją w każdym aktywnym języku. Moduł dostarczany jest z tłumaczeniami na francuski, angielski, hiszpański, niemiecki i włoski (format XLIFF, edytowalny w Międzynarodowe > Tłumaczenia).
Deinstalacja i zachowanie danych
Przy deinstalacji usuwana jest konfiguracja i zakładki administracyjne, ale tabele z danymi pozostają: rozporządzenie ESPR wymaga dostępności paszportu przez cały okres życia produktu. Aby usunąć dane trwale, skasuj ręcznie tabele ps_dfdpp_*.
Rozwiązywanie problemów
Strona /dpp/{uuid} zwraca błąd 404
- Sprawdź, czy paszport jest faktycznie opublikowany i czy wyświetlanie publiczne jest włączone.
- Wyczyść cache PrestaShop (Ustawienia zaawansowane > Wydajność), aby odtworzyć trasy.
- Zweryfikuj przepisywanie adresów URL (włączone przyjazne adresy).
Kod QR się nie wyświetla
- Sprawdź, czy rozszerzenie PHP GD jest aktywne, jeśli Twoja instalacja nie dostarcza Endroid QR Code.
Zakładka nie pojawia się na karcie produktu
- Włącz opcję Zakładka na karcie produktu w konfiguracji i sprawdź, czy Twój motyw obsługuje hook
displayProductExtraContent.
Historia wersji
- 1.0.0: wersja pierwsza, czyli paszporty UUID, publiczna strona wielojęzyczna, kody QR, zagnieżdżone komponenty, zdarzenia cyklu życia, dokumenty, wynik zgodności ESPR według kategorii, eksport JSON i JSON-LD, dziennik dostępu zgodny z RODO, wielosklepowość.