# Digital Product Passport (DPP): guia completo

> O módulo DataFirefly Digital Product Passport (dfdpp) acrescenta à sua loja PrestaShop 8 ou 9 um sistema completo de passaporte digital de produto conforme ao regulamento europeu ESPR (Ecodesign for…

- Página: <https://www.datafirefly.com/pt/documentation/dfdpp/>
- Idioma: pt
- Atualizado em: 2026-09-02
- Outros idiomas: [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), [nl](https://www.datafirefly.com/nl/documentation/dfdpp/index.md)
- Índice: <https://www.datafirefly.com/pt/documentation/llms.txt>

O módulo **DataFirefly Digital Product Passport (dfdpp)** acrescenta à sua loja PrestaShop 8 ou 9 um sistema completo de passaporte digital de produto conforme ao regulamento europeu **ESPR** (Ecodesign for Sustainable Products Regulation), aplicável progressivamente a partir de 2027 ao têxtil, às baterias e à eletrónica.

Cada produto recebe um passaporte com identificador único (UUID), uma página pública multilingue acessível por código QR, um registo de componentes (nomenclatura / BOM), um diário dos eventos do ciclo de vida e uma gestão dos certificados de conformidade.

O ESPR é um regulamento europeu de aplicação direta: as mesmas obrigações valem para uma loja portuguesa e para uma loja francesa. Os campos « índice de reparabilidade » e « garantia » não têm equivalente nacional específico em Portugal; a garantia legal de conformidade é de 3 anos (Decreto-Lei n.º 84/2021), valor a indicar no campo correspondente.

## Pré-requisitos

- PrestaShop **8.0.0 a 9.x**
- PHP 7.4 no mínimo (8.1+ recomendado)
- Extensão GD ativada (geração dos códigos QR de recurso se o Endroid não estiver disponível)
- Compatível com multiloja e multilingue (FR / EN / ES / DE / IT incluídos; o português traduz-se em Internacional > Traduções)

## Instalação

1. No back-office, abra **Módulos > Gestor de módulos**.
2. Clique em **Instalar um módulo** e carregue `dfdpp.zip`.
3. O módulo cria automaticamente as suas tabelas, o seu menu **Passaportes de produto** em _Catálogo_ e regista as suas rotas públicas.

Nenhuma biblioteca externa é incorporada: o módulo usa o Endroid QR Code fornecido pelo núcleo do PrestaShop (v3, v4 ou v5 detetada automaticamente), com uma renderização GD de recurso.

## Configuração

Abra **Módulos > dfdpp > Configurar**. Estão disponíveis três blocos:

### Parâmetros gerais

- **Ativar o módulo**: interruptor global.
- **Criação automática**: gera um passaporte em rascunho a cada gravação de produto.
- **Categoria ESPR por defeito**: têxtil, bateria, eletrónica, mobiliário, calçado ou geral.
- **Apresentação pública**: ativa a página pública `/dpp/{uuid}`.
- **Separador na ficha de produto**: mostra o passaporte num separador da ficha de produto.
- **Exportação JSON pública**: autoriza o descarregamento do passaporte em formato JSON.

### Código QR

- **Tamanho** (por defeito 220 px) e **margem** (10 px).
- **Nível de correção de erros**: M recomendado (equilíbrio densidade / robustez).

### Informações da empresa

Nome, número de IVA (NIF), morada e país do operador económico responsável: estas informações aparecem na página pública do passaporte, como exige o ESPR.

## Criar um passaporte

### Criação automática

Se a opção estiver ativada, é criado um passaporte em estado de _rascunho_ a cada gravação de produto, com a categoria ESPR por defeito. Só se torna visível publicamente depois de **publicado** manualmente.

### Criação manual

1. Abra **Catálogo > Passaportes de produto > Passaportes**.
2. Clique em **Adicionar**, selecione o produto (e a declinação se necessário).
3. Preencha os campos e guarde: é gerado automaticamente um UUID v4 único.

A partir da ficha de produto do back-office, o separador **Passaporte digital** permite criar ou abrir diretamente o passaporte do produto em edição.

## Dados do passaporte

O formulário está organizado em cinco blocos:

- **Identificação**: produto, declinação, categoria ESPR, GTIN, fabricante, país de origem, data de produção, número de lote.
- **Sustentabilidade**: pegada de carbono (kg CO₂e), pontuação de reciclabilidade, percentagem de conteúdo reciclado, índice de reparabilidade, duração de vida esperada, garantia.
- **Conteúdos multilingues**: composição dos materiais, instruções de conservação, instruções de triagem e de fim de vida, informações de reparação, informações de segurança, certificados de conformidade (seis campos de texto rico, traduzíveis em cada idioma da loja).
- **Componentes, eventos e documentos**: geridos em AJAX diretamente na ficha do passaporte (ver abaixo).
- **Campos personalizados**: um objeto JSON livre para qualquer dado setorial suplementar.

## Registo de componentes (BOM)

Cada passaporte pode recensear a sua nomenclatura completa: nome do componente, material, peso (g), percentagem do produto, parte reciclada, caráter reciclável, perigosidade, número CAS, fornecedor e país. Os componentes podem ser **aninhados** (componente pai / subcomponente) para modelar montagens.

O menu **Catálogo > Passaportes de produto > Registo** oferece uma vista transversal de todos os componentes da loja, filtrável por material, perigosidade ou fornecedor, prática para as auditorias REACH.

## Eventos do ciclo de vida

O diário retraça a vida do produto: conceção, matéria-prima, fabrico, controlo de qualidade, distribuição, primeira venda, revenda, reparação, recondicionamento, reciclagem, fim de vida. Cada evento tem uma data, um local, um ator (nome + papel), uma descrição e um URL de prova facultativo.

A vista **Catálogo > Passaportes de produto > Eventos** centraliza todos os eventos com filtro por tipo.

## Documentos e certificados

Anexe a cada passaporte os certificados exigidos: declaração CE, REACH, RoHS, REEE, regulamento europeu das baterias, OEKO-TEX, GOTS, Rótulo Ecológico, FSC, ISO 14001 / 9001, PEF, EPD ou outro. Cada documento tem um número, um emissor, datas de validade e um URL de ficheiro.

Um certificado expirado é assinalado como _blocker_ pelo motor de conformidade e faz cair a pontuação do passaporte.

## Pontuação de conformidade ESPR

O módulo avalia cada passaporte segundo regras próprias da sua categoria ESPR e mostra uma pontuação em 100 acompanhada de um nível:

- **Conforme**: pontuação ≥ 90 sem ponto bloqueante.
- **Parcial**: pontuação ≥ 60.
- **Rascunho**: dados incompletos.
- **Não conforme**: pontos bloqueantes presentes.

A lista das verificações e dos pontos bloqueantes é detalhada na ficha do passaporte; o botão **Recalcular** atualiza a pontuação depois de uma alteração.

## Página pública e código QR

Cada passaporte publicado está acessível no endereço `https://a-sua-loja.pt/dpp/{uuid}` e o seu código QR em PNG em `/dpp/{uuid}/qr.png` (parâmetro `?size=` aceite de 80 a 800 px, cache do navegador de 24 h).

A página pública apresenta: visual e identidade do produto, código QR, indicadores de sustentabilidade, composição, tabela dos componentes, conservação e reparação, instruções de triagem, cronologia do ciclo de vida, certificados, informações de segurança e contactos do operador responsável. Incorpora uma marcação **JSON-LD schema.org** para o posicionamento.

Imprima o código QR na etiqueta, no folheto ou na embalagem do produto: é o modo de acesso previsto pelo ESPR para o consumidor final, os reparadores e os recicladores.

## Apresentação na ficha de produto

Se a opção estiver ativada, aparece um separador **Passaporte digital** na ficha de produto do front-office com o código QR, os indicadores-chave e a ligação para a página pública. Um bloco de recurso pode também aparecer sob a descrição.

## RGPD e diário de acessos

As consultas públicas podem ser registadas de forma anonimizada: o endereço IP é transformado em hash SHA-256 com um salt diário e a chave secreta da loja; não é conservado nenhum dado pessoal explorável. A opção pode ser desativada na configuração.

## Multiloja e multilingue

Os passaportes estão associados a uma loja (contexto multishop respeitado) e todos os conteúdos editoriais existem em cada idioma ativo. O módulo é entregue traduzido em francês, inglês, espanhol, alemão e italiano (formato XLIFF, modificável via **Internacional > Traduções**); é por aí que se acrescenta o português.

## Desinstalação e conservação dos dados

Na desinstalação, a configuração e os separadores de administração são eliminados, mas **as tabelas de dados são conservadas**: o regulamento ESPR impõe a disponibilidade do passaporte durante toda a vida do produto. Para uma eliminação definitiva, elimine manualmente as tabelas `ps_dfdpp_*`.

## Resolução de problemas

### A página /dpp/{uuid} devolve um 404

- Verifique que o passaporte está **publicado** e que a apresentação pública está ativada.
- Limpe a cache do PrestaShop (_Parâmetros avançados > Desempenho_) para regenerar as rotas.
- Verifique a reescrita de URL (URLs amigáveis ativados).

### O código QR não aparece

- Verifique que a extensão PHP GD está ativa se a sua instalação não fornecer o Endroid QR Code.

### O separador não aparece na ficha de produto

- Ative a opção **Separador na ficha de produto** na configuração e verifique que o seu tema suporta o hook `displayProductExtraContent`.

## Histórico de versões

- **1.0.0**: versão inicial: passaportes UUID, página pública multilingue, códigos QR, componentes aninhados, eventos do ciclo de vida, documentos, pontuação de conformidade ESPR por categoria, exportação JSON / JSON-LD, diário de acessos RGPD, multiloja.
