# Cookie Manager Tarteaucitron: guia completo

> Apresentação O Cookie Manager Tarteaucitron é um módulo de gestão do consentimento de cookies para PrestaShop 8.0+ e 9.x. Combina o motor de código aberto tarteaucitron.js, que bloqueia efetivamente os…

- Página: <https://www.datafirefly.com/pt/documentation/cookie-manager-tarteaucitron/>
- Idioma: pt
- Atualizado em: 2026-09-13
- Outros idiomas: [fr](https://www.datafirefly.com/documentation/cookie-manager-tarteaucitron/index.md), [en](https://www.datafirefly.com/en/documentation/cookie-manager-tarteaucitron/index.md), [es](https://www.datafirefly.com/es/documentation/cookie-manager-tarteaucitron/index.md), [de](https://www.datafirefly.com/de/documentation/cookie-manager-tarteaucitron/index.md), [it](https://www.datafirefly.com/it/documentation/cookie-manager-tarteaucitron/index.md), [pl](https://www.datafirefly.com/pl/documentation/cookie-manager-tarteaucitron/index.md), [nl](https://www.datafirefly.com/nl/documentation/cookie-manager-tarteaucitron/index.md)
- Índice: <https://www.datafirefly.com/pt/documentation/llms.txt>

## Apresentação

O Cookie Manager Tarteaucitron é um módulo de gestão do consentimento de cookies para PrestaShop 8.0+ e 9.x. Combina o motor de código aberto tarteaucitron.js, que bloqueia efetivamente os serviços antes do consentimento, com uma interface moderna: cartão flutuante animado, interruptores por categoria e pastilha de reabertura. Inclui o Google Consent Mode v2, um scanner de rastreadores com ativação num clique e um registo de consentimento exportável.

Desde a versão 1.2.0 os ficheiros do tarteaucitron são servidos a partir do seu próprio domínio: nenhum pedido é enviado a um CDN externo antes do consentimento do visitante.

## Instalação

1. Vá a **Módulos → Gestor de módulos → Carregar um módulo**.
2. Carregue o ficheiro `datafirefly_tarteaucitron.zip`.
3. Clique em **Instalar** e depois em **Configurar**.

O ecrã de configuração é acessível de duas formas, ambas mostram a mesma página: o botão **Configurar** do gestor de módulos, ou a entrada de menu **Cookie Manager** adicionada na instalação.

Após cada atualização, limpe a cache do PrestaShop em **Parâmetros avançados → Desempenho**. O script de atualização limpa também o OPcache do PHP quando lhe é permitido.

## Atualizar a partir de uma versão anterior

Substitua `/modules/datafirefly_tarteaucitron/` ou instale o novo ZIP a partir do back-office. O script de atualização corre sozinho e trata da tabela de registo se estiver em falta, das novas chaves de configuração, das posições de banner renomeadas (`bottom` passa a `bottom-left`, `middle` e `popup` passam a `center`) e da entrada de menu se não existir.

Se usava a posição `middle` ou `popup`, o banner passa a ser uma modal centrada com fundo escurecido. O comportamento está correto, mas o aspeto muda visivelmente: verifique antes de publicar.

## Definições gerais

- **Módulo ativado**: interruptor principal do banner no front-office.
- **Idioma do banner**: em automático segue o idioma PrestaShop da página. Também pode forçar um dos 36 idiomas incluídos.
- **Posição do banner**: em baixo à esquerda ou à direita, em cima à esquerda ou à direita, ou centrada como modal.
- **Ficheiros do tarteaucitron**: alojamento local, recomendado, ou CDN jsDelivr. Ver a secção dedicada.
- **Validade do consentimento**: 365 dias por predefinição. Recomenda-se não ultrapassar os 13 meses, ou seja 395 dias.
- **Nome do cookie**: `tarteaucitron` por predefinição. Alterá-lo repõe os consentimentos já recolhidos, porque o cookie anterior deixa de ser lido.
- **Domínio do cookie**: vazio para o domínio atual, ou precedido de um ponto para partilhar o consentimento entre subdomínios.
- **Pastilha de reabertura**: mostra uma pequena pastilha Cookies após o consentimento. Ver a secção sobre a retirada.
- **Fechar equivale a recusar**: acrescenta uma cruz que recusa todos os cookies não essenciais. Desativada, o banner exige uma escolha explícita.

O separador **Textos e links** personaliza o título, a mensagem e as etiquetas dos botões; um campo vazio usa o texto próprio do módulo no idioma do banner. O separador **Design** controla as cores e o raio dos cantos, com pré-visualização ao vivo e um controlo de contraste WCAG entre a cor dos botões e a do respetivo texto.

## De onde vêm os ficheiros do tarteaucitron

Um banner de cookies que carrega os seus próprios ficheiros de um CDN entrega o endereço IP do visitante a um terceiro antes sequer de este ter escolhido. Por isso o módulo inclui o tarteaucitron.js 1.30.0 e os seus 36 ficheiros de idioma em `views/vendor/tarteaucitron/`, servidos a partir do seu domínio.

A opção **CDN jsDelivr** continua disponível no separador Geral. Não é a recomendada: entrega o endereço IP do visitante ao jsDelivr logo no carregamento da página, antes de qualquer consentimento.

## Ativar os serviços

O separador **Serviços** lista as 11 integrações prontas a usar. Para cada uma, ative o interruptor e introduza o identificador pedido:

- **Google Analytics 4**: Measurement ID, formato G-XXXXXXXX
- **Google Tag Manager**: Container ID, formato GTM-XXXXXX
- **Google Ads**: Conversion ID
- **Meta Pixel**: Pixel ID numérico
- **Hotjar**: Site ID numérico
- **LinkedIn Insight**: Partner ID
- **TikTok Pixel**: Pixel ID
- **Microsoft Clarity**: Project ID
- **Intercom**: App ID
- **YouTube**: sem identificador, ativa o bloqueio dos vídeos incorporados antes do consentimento
- **Stripe**: sem identificador, ver a secção dedicada

Um serviço ativado sem identificador não é carregado no front-office. O módulo assinala-o a vermelho na tabela e avisa ao gravar, mas verifique os seus identificadores depois de usar a ativação automática do scanner.

O campo do identificador bloqueia quando o serviço está desativado. O valor guardado mantém-se e reaparece ao reativar o serviço.

## Scanner e deteção automática

1. Clique em **Analisar o site agora** no separador **Deteção automática**. O módulo lê os cookies presentes no seu domínio e obtém o HTML do front-office para analisar as etiquetas de script de terceiros.
2. Surgem duas tabelas: os cookies detetados com o serviço provável e a categoria, e os scripts de terceiros identificados com o seu estado atual no módulo.
3. Clique em **Ativar os serviços detetados** e grave.
4. Passe ao separador Serviços para introduzir os identificadores dos serviços recém-ativados.

O scanner reconhece Google Analytics, Google Tag Manager, Google Ads, Meta Pixel, Hotjar, LinkedIn, TikTok, Microsoft Clarity, Intercom, Brevo, Stripe e YouTube, além dos cookies funcionais do PrestaShop.

Navegue primeiro no seu front-office no mesmo navegador e só depois lance a análise: os cookies colocados pelos seus rastreadores ficarão visíveis e a deteção será mais completa. Se o back-office e o front estiverem em domínios diferentes, só funciona a análise de scripts.

## Estatísticas e teste A/B

Desde a versão 1.3.0, o separador **Estatísticas e A/B** mede o que o banner obtém realmente. O módulo conta as exibições e não apenas as respostas: é isso que torna a taxa de aceitação calculável.

- **Indicadores**: exibições, taxa de resposta, taxa de «aceitar tudo», taxa de recusa, proporção de escolhas personalizadas, opt-in por categoria, repartição computador / telemóvel e evolução diária, em 7, 30, 90 ou 365 dias, ou sobre todo o histórico.
- **Privacidade**: os contadores são agregados por dia, variante e tipo de dispositivo na tabela `dftac_banner_stats`. Nenhum dado pessoal, nenhum identificador de visitante, nenhum cookie. Uma exibição é contada uma única vez por visita, graças a um marcador local de sessão.
- **Robots**: um filtro de user-agent do lado do servidor afasta os motores de busca e as ferramentas de auditoria, e a exibição só é contabilizada no primeiro gesto do visitante (ponteiro, tecla, deslocamento ou resposta). Sem esse filtro, os robots que executam JavaScript inflacionam o denominador sem nunca responder e puxam a taxa para baixo.
- **Exportação e reposição**: exportação CSV dos contadores e botão de reposição, ambos independentes do registo RGPD.

### Lançar um teste A/B

1. Ative o teste e defina a parte do tráfego enviada para a variante B. 50 % dá o resultado legível mais depressa.
2. Preencha apenas os campos que quer testar: título, mensagem, etiquetas dos três botões, posição. Os campos deixados vazios herdam a variante A.
3. Deixe correr. O sorteio mantém-se estável durante toda a visita.
4. Leia o veredicto: o módulo compara as duas taxas com um teste z sobre duas proporções e só anuncia um vencedor acima de 100 exibições por variante e com uma diferença significativa a 95 %.
5. Copie o texto vencedor para a variante A e desligue o teste.

A definição que mais mexe na taxa de aceitação é a posição: compare a modal centrada com o cartão ao canto antes de trabalhar as formulações.

## Google Consent Mode v2

Obrigatório desde março de 2024 para os anunciantes europeus, o Consent Mode v2 permite à Google modelar as conversões mesmo em caso de recusa. O módulo emite os sete sinais exigidos (`ad_storage`, `ad_user_data`, `ad_personalization`, `analytics_storage`, `functionality_storage`, `personalization_storage`, `security_storage`) como _default_ no ``, antes de qualquer tag, e atualiza-os assim que o visitante responde. Cada estado predefinido é configurável, sendo `denied` recomendado no EEE.

Particularidade: o estado predefinido é **deduzido do cookie de consentimento existente** quando este existe. Quem já aceitou obtém `granted` desde o primeiro frame, sem janela `denied` transitória a cortar as suas conversões do Google Ads a cada recarregamento. Do lado do servidor e do navegador é usada a mesma tabela de correspondência serviço-sinal, para que o estado predefinido e a atualização coincidam sempre.

**wait_for_update** define quanto tempo a Google espera pelo banner antes de enviar dados. 500 ms é o valor recomendado.

## Stripe e os cookies estritamente necessários

Os cookies do Stripe (`__stripe_mid`, `__stripe_sid`) são necessários para prevenir a fraude no pagamento e beneficiam da isenção prevista para rastreadores estritamente necessários: bloqueá-los quebraria o processo de compra. Quando o serviço Stripe está ativado, carrega sem pedir consentimento e aparece no painel de preferências em **Essenciais e pagamento** com a etiqueta Sempre ativo. O visitante fica informado e nenhum pagamento é bloqueado.

## Retirar o consentimento

O RGPD exige que retirar o consentimento seja tão simples como dá-lo. Existem três formas, combináveis:

- a **pastilha flutuante** mostrada após a escolha, ativável no separador Geral;
- um link no rodapé: `[Gerir os meus cookies](#tarteaucitron)` ;
- uma chamada JavaScript: `dftacOpenPreferences()`, a partir de qualquer elemento do seu tema.

Se desativar a pastilha, implemente uma das outras duas. Sem isso, o visitante deixa de poder voltar atrás na sua escolha.

## Serviços personalizados

O separador **Serviços personalizados** acrescenta qualquer script de terceiros ausente da lista: uma chave única em minúsculas, um nome apresentado, uma categoria (`analytic`, `ads`, `social`, `video`, `support`, `api` ou `other`), o JS executado apenas após o consentimento, os nomes dos cookies colocados e um URL de política de privacidade. Aparecem no banner numa categoria própria com o seu interruptor, e a categoria determina o sinal Consent Mode associado.

O código introduzido aqui é executado tal como está no front-office. Cole apenas código cuja origem controle.

## Registo de consentimento

O artigo 7.º do RGPD obriga a demonstrar que o consentimento foi dado. O separador **Registo RGPD** mostra os registos página a página, cada um com data e hora, o identificador de visitante anónimo, as categorias aceites e o detalhe serviço a serviço.

- O endereço IP **nunca é guardado em claro**: apenas uma impressão HMAC-SHA256 salgada com uma chave própria da loja. Um SHA-256 sem sal seria recuperável por força bruta sobre o espaço IPv4.
- O identificador do visitante vem de um cookie técnico dedicado e não contém dados pessoais.
- Uma desduplicação no servidor ignora um segundo envio idêntico do mesmo visitante em menos de 5 segundos, neutralizando os duplos cliques.
- O envio do consentimento usa `keepalive`: chega mesmo que o visitante mude de página logo a seguir à escolha.
- Uma limpeza automática elimina as entradas para além do período de conservação que definir. Corre ao abrir a página de configuração, no máximo uma vez por dia.
- **Exportar para CSV** produz um ficheiro com data e hora, em UTF-8 com BOM para abrir corretamente no Excel.
- O registo é **conservado se desinstalar o módulo**, preservando a sua pista de auditoria.
- O registo pode ser desativado se não quiser conservar esta prova.

## Multiloja

Cada loja tem a sua própria configuração: serviços ativados, textos, cores, posição e definições de Consent Mode. O aviso no topo do ecrã de configuração lembra qual a loja que está a editar.

## Resolução de problemas

- **O banner não aparece**: confirme que o módulo está ativado no separador Geral, limpe a cache do PrestaShop e certifique-se de que não há outro módulo de consentimento ativo em paralelo.
- **As escolhas não são memorizadas**: apague o cookie de consentimento antigo no navegador antes de testar de novo e verifique se o nome do cookie não mudou desde o último consentimento.
- **Um serviço não carrega após a aceitação**: confirme que o identificador está preenchido. Um identificador vazio num serviço ativado é assinalado a vermelho na tabela.
- **A análise não deteta nada**: navegue primeiro no front-office no mesmo navegador e volte a lançá-la.
- **Nada no registo**: confirme que o registo está ativado no separador Registo RGPD e dê novamente consentimento a partir do front numa janela privada.
- **Uma alteração ao módulo não produz efeito**: limpe a cache do PrestaShop e, se o seu alojamento usar OPcache, recarregue o PHP. O script de atualização limpa o OPcache automaticamente quando pode.

Precisa de ajuda? Contacte o suporte DataFireFly a partir da sua conta de cliente, resposta em 24 h úteis.
