# DataFirefly Fidelização e Recomendação: pontos, níveis e programa de recomendação para PrestaShop

> Instalação Instale o módulo em Módulos > Gestor de módulos > Carregar um módulo enviando o ficheiro ZIP, ou copie a pasta dfloyalty para o diretório /modules/ da loja e…

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

## Instalação

Instale o módulo em **Módulos > Gestor de módulos > Carregar um módulo** enviando o ficheiro ZIP, ou copie a pasta `dfloyalty` para o diretório `/modules/` da loja e clique em Instalar.

Na instalação, o módulo cria as suas tabelas, guarda as definições predefinidas, cria quatro níveis de estatuto (Bronze, Prata, Ouro, Platina) e adiciona o separador **Clientes > Fidelização e Recomendação**. O botão Configurar do gestor de módulos abre diretamente as definições.

Comece por escolher a **cor de destaque** em Definições > Geral. Ela colore os botões do módulo, as barras de progresso e os e-mails. A predefinição é um verde escuro que pode não corresponder à sua marca.

## Primeiras definições

As definições estão agrupadas em secções, acessíveis pelo menu à esquerda. Antes de abrir o programa aos clientes, verifique pelo menos:

- **Pontos por unidade de moeda gasta**: 1 por predefinição, ou seja 1 ponto por euro. Aceita decimais (0,5 = 1 ponto a cada 2 euros).
- **Estados de encomenda que confirmam os pontos**: por predefinição pagamento aceite, enviada e entregue.
- **Taxa de conversão**: 100 pontos = 5 € por predefinição. A caixa à esquerda calcula em tempo real a percentagem devolvida aos clientes depois da conversão.
- **Recompensas de recomendação**: 10 € para o amigo e 500 pontos para quem recomenda, por predefinição.

## Ganho de pontos

### Cálculo

Os pontos são calculados sobre as linhas de produto da encomenda, na moeda do cliente e depois convertidos para a moeda predefinida. Os portes nunca dão pontos. Três opções ajustam a base:

- **Calcular sobre preços com IVA**: desative para calcular sobre preços sem IVA.
- **Deduzir vales e descontos**: as regras de carrinho da encomenda (exceto portes grátis) são retiradas da base de forma proporcional.
- **Sem pontos em produtos já em promoção**: os produtos vendidos com redução são excluídos.

Depois aplicam-se o multiplicador do nível do cliente e os pontos bónus do produto. O resultado é arredondado para baixo.

### Ciclo de vida dos pontos

- Na validação da encomenda, os pontos são registados como **pendentes**. O cliente vê-os na conta mas não os pode usar.
- Quando a encomenda atinge um dos estados que confirmam os pontos, ficam **disponíveis**.
- Quando a encomenda passa a um dos estados que anulam os pontos, são retirados, pendentes ou disponíveis.
- Uma **nota de crédito parcial** retira a parte dos pontos correspondente ao valor dos produtos reembolsados.
- Se uma encomenda cancelada voltar a um estado de confirmação, os pontos voltam.

Cada movimento é registado num histórico que nunca é reescrito: em vez de alterar uma linha, é adicionada uma linha de correção.

### Pontos no registo

A definição **Pontos oferecidos no registo** credita um número fixo de pontos em cada criação de conta de cliente (não em encomendas como convidado). Deixe 0 para desativar.

## Níveis de estatuto

O separador **Níveis** lista os níveis por ordem de limiar. Cada nível tem um nome e um texto de vantagens traduzíveis, um limiar em pontos de estatuto, um multiplicador de pontos e uma cor, usada no cartão de membro do cliente.

Os **pontos de estatuto** são os pontos ganhos menos cancelamentos e reembolsos. Converter pontos em vales ou deixá-los expirar não baixa o estatuto. A definição **Período do estatuto** limita o cálculo aos últimos N meses; deixe 0 para contar desde o registo.

O primeiro nível deve ter limiar 0 para que todos os clientes tenham estatuto desde a primeira encomenda. Quando um cliente atinge um novo nível, vê uma mensagem de parabéns na visita seguinte à página de fidelização.

O texto de vantagens é informativo. Para que uma vantagem se aplique de facto, associe o nível a um grupo de clientes (ver abaixo).

### Grupo de clientes do nível

Na ficha de um nível, o campo **Grupo de clientes deste nível** associa o nível a um grupo do PrestaShop. O módulo adiciona a esse grupo os clientes que atingem o nível e remove-os quando o deixam. Configure nesse grupo uma redução (Clientes > Grupos), uma regra de carrinho de portes grátis reservada ao grupo ou preços específicos: a vantagem aplica-se sem intervenção.

- Crie um grupo dedicado a cada nível. Um cliente colocado à mão nesse grupo seria removido se não tiver o nível.
- O grupo predefinido do cliente nunca é alterado.
- A sincronização acontece a cada movimento de pontos, ao guardar um nível e todos os dias com a tarefa agendada.

## Pontos bónus em produtos

O separador **Produtos com bónus** permite dar mais pontos em determinados produtos. Procure o produto pelo nome ou referência e escolha:

- **Multiplicador**: 2 duplica os pontos deste produto.
- **Pontos fixos por artigo**: um número de pontos adicionado por cada unidade, além dos pontos padrão.

As datas de início e fim são opcionais. Sem datas, o bónus é permanente. A página do produto mostra um selo (x2, +50) e os pontos a ganhar, recalculados quando o cliente altera a quantidade. O bónus combina-se com o multiplicador do nível.

## Conversão em vales

### Na conta do cliente

No separador Recompensas da página de fidelização, o cliente escolhe com um cursor quantos pontos converter, em múltiplos do número de pontos da taxa de conversão. Recebe um vale pessoal com o código `DFPTS-XXXXXXXX`, mostrado numa janela com botão de cópia e, se a opção estiver ativa, enviado por e-mail.

### Diretamente no carrinho

Se a opção **Permitir aos clientes usar os pontos diretamente no carrinho** estiver ativa, o bloco de fidelização do carrinho mostra um cursor. O vale é criado e aplicado com um clique, sem ultrapassar o total dos produtos. A partir deste bloco só pode ser aplicado um vale de pontos por carrinho. Os vales já gerados e não usados também aparecem com um botão Aplicar.

### Definições dos vales

- **Pontos mínimos para converter**: abaixo disso, o cliente vê uma barra de progresso até ao primeiro vale.
- **Validade do vale**: em dias, 365 por predefinição.
- **Carrinho mínimo para o usar**: 0 para nenhum mínimo.
- **Acumulação com outras regras de carrinho**: desative se os vales de fidelização não se devem somar aos seus códigos promocionais.

Os vales são regras de carrinho padrão do PrestaShop, visíveis em Catálogo > Descontos, atribuídas ao cliente e de utilização única.

## Recomendação

### A ligação de quem recomenda

Cada cliente tem um código e uma ligação de recomendação (parâmetro `?dfref=CODIGO` na página inicial), visíveis no separador Recomendação da página de fidelização. Pode copiar a ligação, partilhá-la por WhatsApp, e-mail, Facebook ou X ou pela partilha nativa do telemóvel, e enviar convites por e-mail a partir do formulário.

### A chegada do amigo

O visitante que clica na ligação é memorizado durante o tempo definido em **Memória da ligação** (30 dias por predefinição). Uma faixa discreta apresenta-lhe o presente e uma mensagem acompanha o formulário de registo. Ao criar a conta, também durante o checkout:

- se a recompensa do amigo for um **valor** ou uma **percentagem**, é criado um vale sem código, adicionado automaticamente ao carrinho, com a compra mínima e a validade definidas;
- se for um número de **pontos**, são creditados na validação da primeira encomenda.

### Código introduzido no registo

Com a opção **Adicionar um campo opcional «Código de recomendação» ao formulário de registo**, um amigo que recebeu o código de viva voz pode introduzi-lo ao criar a conta. Um código desconhecido é recusado com uma mensagem de erro. O campo não aparece se o visitante já chegou por uma ligação de recomendação.

### A recompensa de quem recomenda

Quem recomenda é recompensado quando a primeira encomenda do amigo atinge um estado que confirma os pontos e o total dos produtos com IVA atinge a **Primeira encomenda mínima do amigo**. Recebe pontos ou um vale com o código `DFREF-XXXXXXXX`, e um e-mail de agradecimento.

### Proteções

- Um cliente não se pode recomendar a si próprio, nem com o mesmo endereço de e-mail.
- Um endereço de e-mail que já encomendou na loja não é associado a quem recomenda.
- Só conta a primeira encomenda validada do amigo. Se estiver abaixo do mínimo, a recomendação passa a Não elegível.
- Os convites por e-mail têm um limite diário por cliente, e o mesmo endereço não pode ser convidado duas vezes em 7 dias.

### Estados de uma recomendação

**Convidado**: e-mail enviado pelo cliente. **Registado**: conta criada com a ligação. **Recompensado**: primeira encomenda validada, recompensas atribuídas. **Não elegível**: primeira encomenda abaixo do mínimo.

## Expiração e tarefa agendada

A definição **Expiração após inatividade** faz expirar o saldo de um cliente quando este não ganhou pontos durante o número de meses indicado. Cada encomenda adia a data, e o cliente vê-a na conta. Deixe 0 para que os pontos nunca expirem.

A expiração é aplicada quando o cliente abre a página de fidelização e pela tarefa diária cujo URL está em Definições > Manutenção. Agende-a uma vez por dia no seu gestor de cron ou num módulo de tarefas do PrestaShop. Também envia os lembretes de expiração, credita os pontos de aniversário e atualiza os grupos dos níveis. O botão **Executar agora a tarefa diária** no separador Manutenção faz o mesmo.

A definição **Lembrete antes da expiração** (30 dias por predefinição) envia ao cliente um e-mail com o saldo, o seu valor e a data de expiração. É enviado um único lembrete por data; se o cliente encomendar entretanto, a data muda e será enviado um novo lembrete na altura certa.

Acrescente `&resync=1` ao URL para reprocessar também os estados das encomendas dos últimos 7 dias.

## Aniversário, newsletter e campanhas

### Pontos de aniversário

A definição **Pontos de aniversário** credita pontos uma vez por ano na data de nascimento indicada na conta do cliente, com um e-mail de parabéns. A atribuição é feita pela tarefa diária e também quando o cliente inicia sessão ou abre a sua página de fidelização. Os clientes nascidos a 29 de fevereiro recebem-nos a 28 nos anos não bissextos. Por predefinição, só os clientes com uma encomenda validada têm direito, para evitar contas criadas apenas pelo presente.

O campo data de nascimento tem de estar visível no formulário de cliente: Parâmetros da loja > Definições de clientes, opção da data de nascimento.

### Pontos de subscrição da newsletter

A definição **Pontos de subscrição da newsletter** credita pontos uma única vez por cliente: no registo se a caixa da newsletter estiver assinalada, numa subscrição posterior a partir da conta, ou através do bloco de newsletter do rodapé para um endereço que corresponda a uma conta de cliente. Os subscritores anteriores à ativação da opção não recebem pontos com efeito retroativo.

### Campanhas de pontos

A secção **Campanha de pontos** multiplica todos os pontos ganhos entre duas datas: 2 para pontos a dobrar. O multiplicador soma-se ao do nível e aos bónus de produto. Durante a campanha, aparece um selo nas páginas de produto, no bloco do carrinho e na página de fidelização. Conta a data da encomenda: uma encomenda feita durante a campanha mantém os pontos reforçados mesmo que seja validada depois do fim.

## Excluir grupos de clientes

Em Definições > Geral, assinale os **grupos de clientes excluídos do programa**, por exemplo contas profissionais ou funcionários. Um cliente de um desses grupos não ganha pontos, não vê o bloco da conta, a página de fidelização nem os blocos de produto e carrinho, e a sua ligação de recomendação não gera recompensa.

## O que o cliente vê

- **A minha conta**: um bloco com o nome do programa e o saldo, e uma ligação no bloco A minha conta do rodapé.
- **Página de fidelização**: cartão de membro nas cores do nível, progresso, separadores Recompensas, Recomendação, Histórico e Estatutos.
- **Página do produto**: pontos a ganhar, valor em euros, selo de bónus. Opção **Mostrar os pontos a ganhar nas páginas de produto**.
- **Carrinho**: pontos da encomenda, saldo, utilização de pontos e vales disponíveis. Opção **Mostrar o bloco de pontos no carrinho**. O bloco atualiza-se a cada alteração do carrinho.
- **Confirmação da encomenda**: pontos ganhos, pendentes ou já creditados.

## Back office

### Painel

Pontos em circulação e o seu valor (o passivo que os saldos representam), pontos pendentes, número de membros, pontos ganhos e convertidos em 30 dias com gráfico, membros por nível, vales criados e usados, funil de recomendação, melhores padrinhos e atividade recente.

### Membros e ficha de membro

O separador **Membros** lista os clientes com pontos, ordenados por saldo. A pesquisa abrange nome, e-mail, ID de cliente ou código de recomendação e inclui clientes sem pontos, para os poder creditar. A ficha de membro mostra saldo, nível, histórico, vales e amigos recomendados, e permite um **ajuste manual**: introduza um número positivo ou negativo e um motivo, que o cliente verá no histórico.

A ficha de cliente nativa do PrestaShop também mostra um bloco com saldo, nível, código de recomendação e uma ligação para a ficha de membro.

### Página da encomenda e exportações

Na página de uma encomenda no back office, um bloco indica os pontos da encomenda e o seu estado, os bónus e multiplicadores aplicados, os vales de fidelização usados e se é a primeira encomenda de um cliente recomendado. O separador Membros oferece duas exportações CSV: a lista de membros (saldo, nível, pontos de estatuto, código de recomendação) e todos os movimentos de pontos. Os ficheiros abrem diretamente no Excel ou no LibreOffice.

## E-mails

O módulo envia seis e-mails no idioma do destinatário: o convite de um amigo, o presente de boas-vindas do amigo, a recompensa de quem recomenda, o vale criado a partir dos pontos, os parabéns de aniversário e o lembrete de expiração. Usam um modelo único na cor de destaque com o logótipo da loja. Os textos vêm das traduções do módulo; o modelo está em `mails/`.

## Dados e desinstalação

Por predefinição, a opção **Manter saldos e definições ao desinstalar o módulo** está ativa: desinstalar e reinstalar não faz perder nada. Desative-a antes de desinstalar se quiser apagar todos os dados. Quando um cliente é eliminado no PrestaShop, os seus pontos, vales registados e recomendações são eliminados com ele.

O módulo é compatível com o módulo RGPD oficial do PrestaShop: a exportação dos dados de um cliente inclui o histórico de pontos e o código de recomendação, e a eliminação de um cliente a partir desse módulo apaga os seus dados de fidelização.

## Resolução de problemas

### Os pontos continuam pendentes

Verifique se o estado atual da encomenda está assinalado em **Estados de encomenda que confirmam os pontos**. Se um funcionário alterou o estado e o seu perfil não tem a permissão Ver no módulo (Parâmetros avançados > Equipa > Permissões), o PrestaShop não executou o módulo: use **Ressincronizar as encomendas dos últimos 90 dias** em Definições > Manutenção. A operação pode ser repetida sem risco de crédito duplicado.

### O bloco de fidelização não aparece no carrinho

O bloco é apresentado através do hook `displayShoppingCart`, presente no tema Classic. Se o seu tema não o chamar, acrescente `{hook h='displayShoppingCart'}` ao template do carrinho, ou contacte-nos indicando o tema.

### A faixa de recomendação não aparece

Só é mostrada a visitantes sem sessão iniciada que chegaram por uma ligação válida, e fica oculta durante 3 dias depois de fechada. Teste numa janela de navegação privada.

### Alguns textos continuam em inglês

O módulo é fornecido em 8 idiomas. Para outro idioma, ou para alterar um texto, use Internacional > Traduções > Traduções de módulos instalados.

## Compatibilidade

- PrestaShop 8.0 a 9.x, o mesmo ZIP cobre as duas versões.
- Multilingue e multimoeda. Em multiloja, o saldo de um cliente é comum a todas as lojas.
- Arquitetura ModuleAdminController, sem dependências Composer.
- Módulo e e-mails traduzidos em inglês, francês, espanhol, alemão, italiano, neerlandês, polaco e português.
