DataFirefly Loyalty: programa de fidelização Shopware 6
Programa de fidelização Shopware 6: instalação, pontos, escalões, vales de compra e resolução de problemas.
Apresentação
O DataFirefly Loyalty acrescenta um programa de fidelização completo ao Shopware 6: os seus clientes ganham pontos em cada encomenda, sobem de escalão com multiplicadores e convertem os pontos em vales de compra baseados nas promoções nativas do Shopware. A extensão funciona no Shopware 6.5, 6.6 e 6.7 com um único ZIP, sem qualquer compilação.
Instalação
A partir da administração
- Vá a Extensões > As minhas extensões.
- Clique em Carregar uma extensão e selecione o ficheiro
DfLoyalty-1.0.0.zip. - Clique em Instalar e ative a extensão.
Por linha de comandos
bin/console plugin:refresh
bin/console plugin:install --activate DfLoyalty
bin/console cache:clear
A instalação cria duas tabelas dedicadas: df_loyalty_account (uma linha por cliente) e df_loyalty_transaction (o registo de todas as operações de pontos).
Não é necessário qualquer build JavaScript: a extensão não contém módulo de administração compilado, o que garante a compatibilidade com os três ramos 6.5, 6.6 e 6.7.
Configuração
Abra Extensões > As minhas extensões > DataFirefly Loyalty > Configurar. Todas as definições estão disponíveis por canal de venda: pode ativar o programa apenas numa loja, ou aplicar taxas diferentes consoante os canais.
Atribuição dos pontos
- Ativar o programa: interruptor geral. Desativado, a página da conta de cliente devolve um erro 404 e nenhum ponto é atribuído.
- Acionador de atribuição: Pagamento recebido (estado de transação
paid, recomendado) ou Encomenda concluída (estado de encomendacompleted). - Pontos por unidade monetária: número de pontos ganhos por euro gasto. Predefinição: 1.
- Base de cálculo: montante da encomenda com ou sem IVA.
- Incluir os portes: por predefinição, os portes são excluídos do cálculo.
Escalões
São configuráveis três escalões, cada um com um nome, um limiar e um multiplicador. Os limiares aplicam-se aos pontos acumulados ao longo da vida (nunca decrementados por uma conversão), e o multiplicador aplica-se a todos os ganhos futuros.
- Escalão 1: predefinição Bronze, a partir de 0 pontos, multiplicador x1,0
- Escalão 2: predefinição Silver, a partir de 500 pontos, multiplicador x1,25
- Escalão 3: predefinição Gold, a partir de 2 000 pontos, multiplicador x1,5
Exemplo: um cliente Silver (x1,25) que faz uma encomenda de 100 € com IVA incluído, com uma taxa de 1 ponto/€, ganha 125 pontos.
Conversão em vales de compra
- Taxa de conversão: número de pontos necessários por 1 € de vale. Predefinição: 100 (100 pontos = 1,00 €).
- Mínimo de conversão: número mínimo de pontos para iniciar uma conversão. Predefinição: 200.
- Passo de conversão: os pontos convertem-se em múltiplos deste valor. Predefinição: 100.
- Validade dos vales: tempo de vida do vale de compra em dias. Predefinição: 90.
Funcionamento do lado do cliente
Uma entrada Programa de fidelização aparece no menu da conta de cliente. A página /account/loyalty apresenta:
- o saldo de pontos disponível e o total de pontos ganhos ao longo da vida;
- o escalão atual com uma barra de progresso para o escalão seguinte;
- o formulário de conversão em vale de compra;
- o histórico das últimas 50 operações (ganhos, conversões, anulações).
Quando um cliente converte os pontos, a extensão cria uma promoção nativa do Shopware: código único do tipo LOYAL-XXXXXXXX, reservado à conta dele, utilizável uma só vez, com um desconto fixo sobre o carrinho. O código aplica-se no carrinho como qualquer código promocional. Encontra todas as promoções geradas em Marketing > Promoções.
Anulações e reembolsos
Quando uma encomenda passa ao estado Cancelada ou o seu pagamento passa ao estado Reembolsado, os pontos ganhos nessa encomenda são automaticamente retirados. A operação fica registada no histórico do cliente com a etiqueta «Anulados». A retirada é idempotente: só pode acontecer uma vez por encomenda.
Na versão 1.0, um reembolso parcial não é rateado: é a passagem do pagamento completo ao estado Reembolsado que aciona a retirada da totalidade dos pontos da encomenda.
Segurança e integridade dos dados
- O débito dos pontos é atómico na base de dados: duas conversões simultâneas não podem gastar duas vezes o mesmo saldo.
- Cada operação é inscrita num registo apenas por adição, com referência da encomenda, tipo, pontos com sinal e código do vale quando aplicável.
- A criação do vale e a escrita contabilística são executadas na mesma transação SQL: nunca há vale sem débito nem débito sem vale.
Resolução de problemas
A ligação Programa de fidelização não aparece na conta
A extensão injeta a sua ligação através do bloco Twig page_account_sidebar_link_orders. Se o seu tema personalizado tiver removido ou renomeado esse bloco, acrescente a ligação manualmente no template da barra lateral da conta, apontando para a rota frontend.account.dfloyalty.page.
Os pontos não são atribuídos
- Verifique que o programa está ativo para o canal de venda em causa.
- Verifique o acionador configurado: com Pagamento recebido, a transação tem de atingir o estado
paid; com Encomenda concluída, a encomenda tem de atingircompleted. - Limpe a cache depois de uma alteração de configuração:
bin/console cache:clear.
Desinstalação
Na desinstalação, o Shopware propõe conservar os dados. Se desmarcar essa opção, as tabelas df_loyalty_account e df_loyalty_transaction são eliminadas definitivamente; as promoções já geradas mantêm-se porque são promoções normais do Shopware.