# Digitaal Productpaspoort (DPP): volledige gids

> De module DataFirefly Digital Product Passport (dfdpp) voegt aan uw PrestaShop 8- of 9-winkel een volledig systeem voor het digitale productpaspoort toe, conform de Europese verordening ESPR (Ecodesign for Sustainable…

- Pagina: <https://www.datafirefly.com/nl/documentation/dfdpp/>
- Taal: nl
- Bijgewerkt op: 2026-09-09
- Andere talen: [fr](https://www.datafirefly.com/documentation/dfdpp/index.md), [en](https://www.datafirefly.com/en/documentation/dfdpp/index.md), [es](https://www.datafirefly.com/es/documentation/dfdpp/index.md), [de](https://www.datafirefly.com/de/documentation/dfdpp/index.md), [it](https://www.datafirefly.com/it/documentation/dfdpp/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfdpp/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfdpp/index.md)
- Index: <https://www.datafirefly.com/nl/documentation/llms.txt>

De module **DataFirefly Digital Product Passport (dfdpp)** voegt aan uw PrestaShop 8- of 9-winkel een volledig systeem voor het digitale productpaspoort toe, conform de Europese verordening **ESPR** (Ecodesign for Sustainable Products Regulation), die vanaf 2027 stapsgewijs geldt voor textiel, batterijen en elektronica.

Elk product krijgt een paspoort met een unieke identificatie (UUID), een meertalige publieke pagina die via een QR-code bereikbaar is, een componentenregister (stuklijst of BOM), een logboek met gebeurtenissen uit de levenscyclus en een beheer van de conformiteitscertificaten.

## Vereisten

- PrestaShop **8.0.0 tot 9.x**
- PHP 7.4 minimaal (8.1+ aanbevolen)
- De GD-extensie ingeschakeld (voor het genereren van de QR-codes als terugval wanneer Endroid niet beschikbaar is)
- Geschikt voor multistore en meertaligheid (FR / EN / ES / DE / IT inbegrepen)

## Installatie

1. Open in de backoffice **Modules > Modulebeheer**.
2. Klik op **Een module installeren** en upload `dfdpp.zip`.
3. De module maakt automatisch zijn tabellen en zijn menu **Productpaspoorten** onder _Catalogus_ aan, en registreert zijn publieke routes.

Er zit geen enkele externe bibliotheek in de module: hij gebruikt Endroid QR Code uit de kern van PrestaShop (v3, v4 of v5 wordt automatisch herkend), met een GD-weergave als terugval.

## Configuratie

Open **Modules > dfdpp > Configureren**. Er zijn drie blokken:

### Algemene parameters

- **De module inschakelen**: de hoofdschakelaar.
- **Automatisch aanmaken**: maakt bij elke bewaring van een product een conceptpaspoort aan.
- **Standaard ESPR-categorie**: textiel, batterij, elektronica, meubilair, schoeisel of algemeen.
- **Publieke weergave**: schakelt de publieke pagina `/dpp/{uuid}` in.
- **Tabblad op de productfiche**: toont het paspoort in een tabblad van de productfiche.
- **Publieke JSON-export**: staat het downloaden van het paspoort in JSON-formaat toe.

### QR-code

- **Grootte** (standaard 220 px) en **marge** (10 px).
- **Niveau van foutcorrectie**: M aanbevolen (evenwicht tussen dichtheid en robuustheid).

### Bedrijfsgegevens

Naam, btw-nummer, adres en land van de verantwoordelijke marktdeelnemer. Die gegevens verschijnen op de publieke pagina van het paspoort, zoals de ESPR vereist.

## Een paspoort aanmaken

### Automatisch aanmaken

Staat de optie aan, dan ontstaat bij elke bewaring van een product een paspoort met de status _concept_ en de standaard ESPR-categorie. Het wordt pas publiek zichtbaar zodra u het handmatig **publiceert**.

### Handmatig aanmaken

1. Open **Catalogus > Productpaspoorten > Paspoorten**.
2. Klik op **Toevoegen** en kies het product (en zo nodig de variant).
3. Vul de velden in en sla op: er wordt automatisch een unieke UUID v4 aangemaakt.

Vanaf de productfiche in de backoffice kunt u met het tabblad **Digitaal paspoort** het paspoort van het product dat u bewerkt meteen aanmaken of openen.

## Gegevens van het paspoort

Het formulier bestaat uit vijf blokken:

- **Identificatie**: product, variant, ESPR-categorie, GTIN, fabrikant, land van herkomst, productiedatum en partijnummer.
- **Duurzaamheid**: koolstofvoetafdruk (kg CO₂e), recycleerbaarheidsscore, percentage gerecycleerde inhoud, repareerbaarheidsindex, verwachte levensduur en garantie.
- **Meertalige inhoud**: materiaalsamenstelling, onderhoudsinstructies, richtlijnen voor sortering en einde levensduur, reparatie-informatie, veiligheidsinformatie en conformiteitscertificaten (zes velden met rijke tekst, vertaalbaar in elke taal van de winkel).
- **Componenten, gebeurtenissen en documenten**: rechtstreeks in de paspoortfiche via AJAX beheerd (zie hieronder).
- **Eigen velden**: een vrij JSON-object voor alle bijkomende sectorspecifieke gegevens.

## Componentenregister (BOM)

Elk paspoort kan zijn volledige stuklijst bevatten: naam van het component, materiaal, gewicht (g), percentage van het product, gerecycleerd aandeel, recycleerbaarheid, gevaarlijkheid, CAS-nummer, leverancier en land. De componenten kunnen **genest** worden (bovenliggend component en subcomponent) om samenstellingen te modelleren.

Het menu **Catalogus > Productpaspoorten > Register** biedt een overkoepelende weergave van alle componenten van de winkel, te filteren op materiaal, gevaarlijkheid of leverancier, wat handig is bij REACH-audits.

## Gebeurtenissen uit de levenscyclus

Het logboek volgt het leven van het product: ontwerp, grondstof, productie, kwaliteitscontrole, distributie, eerste verkoop, doorverkoop, reparatie, revisie, recyclage en einde levensduur. Elke gebeurtenis draagt een datum, een plaats, een betrokkene (naam en rol), een omschrijving en een optionele bewijs-URL.

De weergave **Catalogus > Productpaspoorten > Gebeurtenissen** bundelt alle gebeurtenissen, met een filter op type.

## Documenten en certificaten

Voeg aan elk paspoort de vereiste certificaten toe: CE-verklaring, REACH, RoHS, AEEA, de EU-batterijverordening, OEKO-TEX, GOTS, Ecolabel, FSC, ISO 14001 of 9001, PEF, EPD of andere. Elk document draagt een nummer, een uitgever, geldigheidsdatums en een bestands-URL.

Een verlopen certificaat wordt door de conformiteitsmotor als _blokkerend_ gemarkeerd en doet de score van het paspoort dalen.

## ESPR-conformiteitsscore

De module beoordeelt elk paspoort volgens regels die eigen zijn aan zijn ESPR-categorie en toont een score op 100 met een bijbehorend niveau:

- **Conform**: score van 90 of hoger, zonder blokkerend punt.
- **Gedeeltelijk**: score van 60 of hoger.
- **Concept**: onvolledige gegevens.
- **Niet conform**: er zijn blokkerende punten.

De lijst met controles en blokkerende punten staat uitgewerkt in de paspoortfiche; de knop **Opnieuw berekenen** werkt de score na een wijziging bij.

## Publieke pagina en QR-code

Elk gepubliceerd paspoort is bereikbaar op `https://uw-winkel.nl/dpp/{uuid}` en de QR-code in PNG op `/dpp/{uuid}/qr.png` (de parameter `?size=` wordt aanvaard van 80 tot 800 px, met een browsercache van 24 uur).

De publieke pagina toont: het beeld en de identiteit van het product, de QR-code, de duurzaamheidsindicatoren, de samenstelling, de componententabel, onderhoud en reparatie, de sorteerrichtlijnen, de tijdlijn van de levenscyclus, de certificaten, de veiligheidsinformatie en de gegevens van de verantwoordelijke marktdeelnemer. Zij bevat een **JSON-LD schema.org**-opmaak voor de vindbaarheid.

Druk de QR-code af op het etiket, de handleiding of de verpakking van het product: dat is de toegangsweg die de ESPR voorziet voor de eindconsument, herstellers en recycleerders.

## Weergave op de productfiche

Staat de optie aan, dan verschijnt op de productfiche aan de frontzijde een tabblad **Digitaal paspoort** met de QR-code, de kernindicatoren en de link naar de publieke pagina. Er kan ook een terugvalblok onder de beschrijving verschijnen.

## AVG en toegangslogboek

De publieke raadplegingen kunnen anoniem worden gelogd: het IP-adres wordt met SHA-256 gehasht met een dagelijks zout en de geheime sleutel van de winkel, waardoor er geen bruikbare persoonsgegevens worden bewaard. De optie is in de configuratie uit te schakelen.

## Multistore en meertaligheid

De paspoorten hangen aan een winkel (de multistorecontext wordt gerespecteerd) en alle redactionele inhoud bestaat in elke actieve taal. De module wordt vertaald geleverd in het Frans, Engels, Spaans, Duits en Italiaans (XLIFF-formaat, aan te passen via **Internationaal > Vertalingen**).

## Verwijderen en gegevensbehoud

Bij het verwijderen worden de configuratie en de beheertabbladen gewist, maar **de gegevenstabellen blijven staan**: de ESPR eist dat het paspoort gedurende de hele levensduur van het product beschikbaar blijft. Voor een definitieve verwijdering wist u de tabellen `ps_dfdpp_*` handmatig.

## Problemen oplossen

### De pagina /dpp/{uuid} geeft een 404

- Controleer of het paspoort wel is **gepubliceerd** en of de publieke weergave aanstaat.
- Leeg de PrestaShop-cache (_Geavanceerde parameters > Prestaties_) om de routes opnieuw op te bouwen.
- Controleer de URL-herschrijving (vereenvoudigde URL's ingeschakeld).

### De QR-code verschijnt niet

- Controleer of de PHP-extensie GD actief is wanneer uw installatie geen Endroid QR Code meelevert.

### Het tabblad verschijnt niet op de productfiche

- Schakel de optie **Tabblad op de productfiche** in de configuratie in en controleer of uw thema de hook `displayProductExtraContent` ondersteunt.

## Versieoverzicht

- **1.0.0**: eerste versie met paspoorten op UUID, een meertalige publieke pagina, QR-codes, geneste componenten, gebeurtenissen uit de levenscyclus, documenten, een ESPR-conformiteitsscore per categorie, JSON- en JSON-LD-export, een AVG-conform toegangslogboek en multistore.
