Prova Social: notificações de compra e visitantes, guia completo
Instalar, configurar e explorar a prova social ética: notificações de compras reais anonimizadas (3 níveis), contador de visitantes em direto sem cookies, tempos arredondados, limiar mínimo de apresentação e conformidade com o RGPD para PrestaShop 8 e 9.
Apresentação
O módulo Prova Social: notificações de compra e visitantes em direto acrescenta dois mecanismos de confiança às suas fichas de produto: notificações discretas de compras recentes («A Maria L. comprou este produto há 2 h») e um emblema de visitantes em direto («12 pessoas estão a ver este produto»).
A sua particularidade é a abordagem ética e RGPD by design: só apresenta encomendas realmente feitas na sua loja e visitantes realmente presentes. Nunca inventa nada. A anonimização é aplicada do lado do servidor antes de qualquer envio ao navegador, os tempos são arredondados, nenhum dado bruto do cliente é exposto e o módulo não coloca qualquer cookie.
Compatível com PrestaShop 8.0 a 9.x, multiloja e multi-idioma (FR/EN/ES/DE/IT incluídos), sem Composer e sem jQuery. Se não houver encomendas recentes ou visitantes suficientes, o módulo simplesmente não mostra nada.
O pacote de traduções não inclui o português: traduza as cadeias das notificações em Internacional > Traduções > Traduções dos módulos, caso contrário o visitante verá os textos no idioma de recurso.
Instalação
- No back-office, abra Módulos > Gestor de módulos.
- Clique em Carregar um módulo e selecione o ficheiro
dfsocialproof.zip. - A instalação cria automaticamente a tabela dos visitantes e regista os valores de configuração predefinidos.
- O módulo fica ativo de imediato nas fichas de produto, com definições prudentes e funcionais.
Não é obrigatório configurar nada para começar. Por predefinição: notificações sobre as encomendas dos últimos 7 dias, anonimização «nome próprio + inicial» e contador apresentado a partir de 3 visitantes em simultâneo.
Configuração
A página Configurar está organizada em três painéis, mais um painel «Privacy by design» que resume as garantias do módulo.
Notificações de compra
- Ativar as notificações de compra: interruptor do primeiro mecanismo.
- Janela temporal (horas): só são apresentadas as encomendas reais feitas dentro desta janela (168 h por predefinição, ou seja, 7 dias). Se não houver nenhuma, não é apresentado nada.
- Número máximo de notificações: limite por carregamento de página (5 por predefinição).
- Nível de anonimização: três modos detalhados na secção seguinte.
- Estados de encomenda considerados: lista de seleção múltipla (Ctrl/Cmd para escolher vários). Só as encomendas nestes estados geram notificações; por predefinição, os estados «validados» da sua loja.
Contador de visitantes
- Ativar o contador de visitantes: interruptor do segundo mecanismo.
- Janela de contagem (minutos): um visitante é contado enquanto estiver ativo dentro desta janela (15 min por predefinição). Os registos são depois eliminados automaticamente.
- Mínimo de visitantes para mostrar: abaixo deste limiar (3 por predefinição), o emblema fica oculto, para nunca identificar um visitante isolado.
Apresentação
- Posição: canto onde as notificações aparecem (inferior esquerdo ou inferior direito).
- Atraso inicial (segundos): tempo até à primeira notificação (4 s por predefinição).
- Intervalo entre notificações (segundos): espaçamento entre dois avisos (9 s por predefinição).
- Duração da apresentação (segundos): tempo de visibilidade de cada aviso (6 s por predefinição).
As notificações só aparecem uma vez por carregamento de página: sem ciclos infinitos que acabam por irritar. O visitante pode fechar os avisos, e essa escolha fica memorizada durante toda a sessão de navegação.
Os três níveis de anonimização
O nível escolhido aplica-se a todas as notificações, e a transformação é feita no servidor: o navegador recebe apenas o texto final, nunca os dados de origem.
- Nome próprio + inicial: «A Maria L. comprou este produto.» O mais apelativo, mantendo-se não identificativo.
- Apenas a localidade: «Um cliente de Braga comprou este produto.» A localidade vem da morada de entrega da encomenda.
- Anonimato total: «Alguém comprou este produto.» O mais prudente, adequado a catálogos sensíveis.
Em localidades pequenas, o modo «apenas a localidade» pode aproximar-se da identificação de uma pessoa concreta se as encomendas forem raras. Nesse caso, prefira o anonimato total.
Tempos relativos arredondados
As indicações de tempo apresentadas («há 2 h», «há 25 min») são propositadamente arredondadas, sendo os minutos arredondados aos 5 minutos. O objetivo é impedir a reidentificação de um cliente por cruzamento da hora exata de uma encomenda com outras informações. É uma opção de privacy by design, não uma aproximação técnica.
Funcionamento do contador de visitantes
Cada visitante de uma ficha de produto é contado através de uma impressão SHA-256 com sal, usando a chave secreta da sua loja (_COOKIE_KEY_). Essa impressão nunca é apresentada, nunca é exposta ao navegador e serve apenas para desduplicar as visitas.
- Sem cookies: o módulo não coloca cookies nem armazenamento local para contar.
- Limpeza automática: os registos expirados são eliminados da base de dados de forma oportunista, sem tarefa de cron a configurar.
- Limiar de dignidade: abaixo do mínimo configurado, o emblema desaparece, pelo que um visitante sozinho nunca é apontado como «1 pessoa está a ver este produto».
- Atualização: o contador atualiza-se a cada 60 segundos através de um pedido AJAX leve.
Privacy by design e RGPD
- Apenas encomendas reais: nunca há dados inventados. A credibilidade da sua loja fica preservada e mantém-se do lado certo do direito do consumo (práticas comerciais desleais).
- Anonimização no servidor: os textos chegam ao navegador já anonimizados e formatados. Nenhum dado bruto do cliente (nome completo, e-mail, morada) circula para o front-office.
- Respostas AJAX sem cache: os cabeçalhos impedem qualquer armazenamento intermédio dos textos.
- Impressões eliminadas: a tabela dos visitantes limpa-se sozinha e a retenção fica limitada ao estritamente necessário.
- Zero cookies, zero recursos externos: não há nada a acrescentar ao seu banner de consentimento por causa deste módulo.
Um painel «Privacy by design» no back-office resume estas garantias: pode apresentá-lo tal como está ao seu encarregado de proteção de dados ou anexá-lo ao registo de atividades de tratamento exigido pela CNPD.
Em Portugal, uma notificação de compra que não corresponda a uma encomenda real seria uma prática comercial desleal ao abrigo do Decreto-Lei n.º 57/2008, alterado pelo Decreto-Lei n.º 109-G/2021, fiscalizado pela ASAE. É precisamente por isso que o módulo se recusa a preencher períodos vazios com dados fabricados: se não houver encomendas na janela, prefira alargar a janela a inventar números.
Acessibilidade e desempenho
- Avisos anunciados em aria-live polite para os leitores de ecrã.
- Respeito por prefers-reduced-motion: as animações são desativadas se o visitante o pedir.
- Modo escuro suportado automaticamente.
- JavaScript nativo sem jQuery, com recursos carregados apenas na página de produto: impacto negligenciável na velocidade.
Compatibilidade técnica
- PrestaShop: 8.0 a 9.x.
- PHP: 7.4 a 8.x.
- Hooks: actionFrontControllerSetMedia (recursos e configuração do front-office, apenas na página de produto) e displayProductAdditionalInfo (emblema de visitantes).
- Multiloja e multi-idioma suportados (traduções FR/EN/ES/DE/IT incluídas).
- Sem dependências Composer e sem jQuery.
Perguntas frequentes
O módulo inventa compras ou visitantes?
Não, nunca. As notificações vêm apenas de encomendas realmente registadas, e o contador só conta visitantes realmente presentes. Sem dados, o módulo não mostra nada.
O que acontece se a minha loja tiver poucas encomendas?
Alargue a janela temporal (por exemplo, 336 h para 14 dias): as notificações continuam verdadeiras, apenas a indicação de tempo relativo fica mais antiga. O módulo nunca preenche um vazio com dados falsos.
O contador coloca algum cookie?
Não. Assenta numa impressão SHA-256 com sal calculada do lado do servidor, nunca exposta e eliminada automaticamente. Não há consentimento adicional a recolher.
É compatível com o PrestaShop 9 e com multiloja?
Sim, do PrestaShop 8.0 ao 9.x, com suporte nativo de multiloja.
Resolução de problemas
- Não aparece qualquer notificação: confirme que existem encomendas na janela temporal com um dos estados selecionados. É o comportamento normal do módulo na ausência de dados reais.
- O contador de visitantes não aparece: o número de visitantes ativos está provavelmente abaixo do limiar mínimo. Baixe o limiar ou teste com vários navegadores ou dispositivos em simultâneo.
- As notificações não voltam a aparecer: se o visitante fechou um aviso, essa escolha fica memorizada durante a sessão. Abra uma janela de navegação privada para voltar a testar.
- O emblema não se atualiza: a atualização acontece a cada 60 segundos; confirme também que nenhuma cache agressiva está a bloquear os pedidos AJAX do controlador de front-office.