PS PrestaShop Intermédio

Preços por País, Loja e Moeda: documentação

Criar regras, perceber o cálculo do preço, simular, recalcular, anular um recálculo e automatizar por cron.

Atualizado Versão do módulo 1.1.4

Preços por País, Loja e Moeda aplica um coeficiente de margem e um arredondamento psicológico por mercado e grava o resultado como preços específicos nativos do PrestaShop. Este guia cobre a instalação, a criação de regras, o cálculo do preço, a simulação, o recálculo, a anulação de um recálculo e a automatização por cron.

Instalação e atualização

O módulo é compatível com PrestaShop 8.0 a 9.x, em loja única ou multiloja.

  1. No back office, abra Módulos > Gestor de módulos, clique em Carregar um módulo e selecione o ficheiro ZIP.
  2. O módulo cria as suas tabelas, um separador DF Multi Price em Catálogo e um token de cron.
  3. Abra a configuração do módulo para definir a aplicação automática, o tamanho dos lotes e obter o URL do cron.

Vem da versão 1.0.0? Recalcule as regras após a atualização, sobretudo as ligadas a uma moeda diferente da moeda padrão: a 1.0.0 guardava esses preços na moeda errada. As regras existentes mantêm o seu comportamento, com as opções «Definir preço por combinação» e «Manter as promoções ativas» desativadas. Ative-as em cada regra se necessário.

Criar uma regra de preço

Abra Catálogo > DF Multi Price e clique em Adicionar regra. O formulário tem quatro blocos.

Quem vê este preço

  • Loja: uma loja ou todas. Com «Todas as lojas», os preços base são lidos da loja padrão.
  • País: o seu IVA serve para calcular o preço com IVA arredondado. Um visitante sem morada fica associado ao país padrão da loja, salvo se a geolocalização estiver ativa, e mudar de moeda não muda o país. Uma regra para outro país só abrange, portanto, clientes com morada nesse país. Para uma regra por moeda, mantenha «Todos os países».
  • Moeda: crie uma regra por moeda para controlar a terminação em cada uma. Com «Todas as moedas», o preço é expresso na moeda padrão e o PrestaShop converte-o para as outras moedas, que perdem a terminação.
  • Grupo de clientes: para tabelas B2B. Os descontos de grupo definidos em Clientes > Grupos continuam a aplicar-se por cima.

Que produtos

  • Categoria: a categoria e todas as subcategorias, ou todo o catálogo.
  • Marca: limita a regra a uma marca.
  • Produtos excluídos: IDs de produtos separados por vírgulas.
  • Manter as promoções ativas: consulte a secção dedicada mais abaixo.

Como o preço é construído

  • Base de preço: preço de venda sem IVA ou preço de custo. Com o preço de custo, os produtos sem ele são ignorados.
  • Coeficiente de margem: preço = base x coeficiente. 1,20 acrescenta 20%. Use 1 para aplicar apenas o arredondamento.
  • Definir preço por combinação: recomendado. Cada combinação recebe o seu próprio preço, impacto incluído. Sem esta opção, o PrestaShop soma o impacto da combinação depois do arredondamento e a terminação perde-se.
  • Arredondamento: terminação mais próxima, sempre para cima, sempre para baixo ou sem arredondamento.
  • Terminação psicológica: x,90, x,95, x,99, x,50 ou x,00.
  • Passo de arredondamento: arredonda ao múltiplo de um passo em vez de uma terminação. Passos disponíveis: 0,05, 0,10, 0,20, 0,25, 0,50, 1, 5 e 10. O sentido segue o campo Arredondamento: com 0,10 e Terminação mais próxima, 23,47 passa a 23,50; com 10 e Sempre para cima, 23,47 passa a 30; com 10 e Sempre para baixo, a 20. Quando um passo é escolhido, substitui a terminação. O preço nunca é arredondado a zero: vale pelo menos um passo. «Nenhum» (por defeito) mantém a terminação.
  • Arredondar o preço com IVA: recomendado em B2C. Desative para tabelas B2B apresentadas sem IVA: o arredondamento aplica-se então ao preço sem IVA.

Salvaguardas

  • Preço mínimo: preço apresentado mínimo, na moeda da regra. 0 = sem mínimo.
  • Margem mínima sobre o custo: coeficiente sobre o preço de custo abaixo do qual o preço nunca desce, por exemplo 1,15. Aplica-se a produtos com preço de custo. 0 = desativado.
  • Prioridade: os valores baixos são processados primeiro. Se duas regras visarem a mesma loja, país, moeda e grupo, a primeira mantém o preço e a outra conta um conflito.
  • Ativa: desativar uma regra remove os preços que ela gerou.

Como o preço final é calculado

O arredondamento só faz sentido sobre o montante que o cliente vê. O motor segue esta sequência:

  1. Preço base sem IVA (combinação incluída se a opção estiver ativa) multiplicado pelo coeficiente.
  2. Conversão para a moeda da regra à taxa de câmbio da loja.
  3. Passagem para preço com IVA com o IVA do país da regra, mais a ecotaxa se estiver ativada no PrestaShop.
  4. Arredondamento à terminação escolhida, ou ao múltiplo do passo se estiver definido um passo de arredondamento.
  5. Preço mínimo e depois margem mínima, ambos arredondados para cima.
  6. Regresso ao preço sem IVA, guardado na moeda da regra.

Exemplo: um preço base de 69,99 € sem IVA, um coeficiente de 1,20, IVA a 19% e a terminação x,99 dão 99,99 € com IVA na loja.

O PrestaShop lê um preço específico ligado a uma moeda nessa moeda, sem conversão. Por isso o módulo guarda-o diretamente na moeda da regra: uma regra em libras esterlinas mostra o montante em libras calculado pela regra.

Verificar um preço na loja

O painel Verificar um preço na loja, acima da lista de regras, reproduz o cálculo do PrestaShop para um contexto preciso. Introduza um ID de produto, e um ID de combinação se necessário, e escolha a loja, o país (por defeito o da loja), a moeda e o grupo (Visitante por defeito). O painel mostra:

  • o país a que ficam associados os visitantes sem morada e o estado da geolocalização;
  • o preço apresentado, sem ou com IVA conforme o grupo;
  • o preço específico usado pelo PrestaShop e a sua origem: regra do módulo, preço introduzido à mão ou regra de preço de catálogo;
  • o estado de cada regra: aplicada, outro contexto (com a loja, o país, a moeda ou o grupo que visa), produto fora da regra, por recalcular, promoção mantida ou substituída por outro preço específico.

A lista de regras mostra também um aviso quando uma regra visa um país diferente do país padrão da sua loja sem geolocalização, ou quando uma regra «Todas as lojas» abrange lojas com países padrão diferentes.

Simular antes de aplicar

Na lista de regras, a ação Simular abre uma janela que mostra, para os primeiros produtos abrangidos, o preço atual na loja, o novo preço e a variação em percentagem. Nada é guardado. Os produtos deixados de lado aparecem com o motivo: promoção ativa ou sem preço base.

A ação Exportar pré-visualização CSV gera a lista completa (ID do produto, ID da combinação, referência, nome, preço atual, novo preço, preço guardado sem IVA, estado) em CSV separado por ponto e vírgula, legível no Excel.

Recalcular

  • A ação Recalcular de uma regra aplica essa regra ao catálogo.
  • O botão Recalcular todas as regras ativas da barra de ferramentas executa as regras por ordem de prioridade.

O processamento faz-se por lotes com barra de progresso e depois um resumo:

  • Criados, Atualizados, Inalterados: preços escritos pela regra.
  • Promoções mantidas: produtos deixados intactos por estarem em promoção.
  • Conflitos: preços já detidos por uma regra prioritária com as mesmas dimensões.
  • Ignorados: produtos sem preço base utilizável.
  • Removidos: preços eliminados ou devolvidos ao comerciante, por exemplo de um produto que saiu do âmbito da regra.

Uma regra alterada depois do último recálculo mostra o indicador Por recalcular na lista. O tamanho dos lotes (10 a 500 produtos) define-se na configuração do módulo.

Anular um recálculo

Cada recálculo, manual ou por cron, guarda o estado anterior de cada preço que altera. Para voltar atrás:

  • na lista de regras, use a ação Anular o último recálculo;
  • ou, na configuração do módulo, clique em Anular no histórico.

A anulação elimina os preços criados pelo recálculo, devolve o valor aos preços alterados e recria os preços removidos. Funciona por ordem inversa: primeiro o recálculo mais recente, depois o anterior, até 5 recálculos atrás por regra. Um recálculo interrompido (janela fechada durante o processamento) pode ser anulado uma hora após o início.

Depois da anulação, a regra mostra Por recalcular, porque os preços já não correspondem à sua configuração. Altere a regra se necessário, simule e recalcule.

A regra tem de estar ativa para anular o seu recálculo. Os recálculos feitos com a versão 1.0.0 ou 1.1.0 não podem ser anulados: a função está disponível a partir do primeiro recálculo feito com a 1.1.1.

Promoções e preços manuais

O PrestaShop aplica um único preço específico por produto: ganha o mais preciso. Um preço por país e moeda esconderia, portanto, uma promoção mais ampla. Com Manter as promoções ativas, um produto com desconto ativo (não criado pelo módulo) fica intacto e é retomado no primeiro recálculo após o fim da promoção. Agende o cron para que isto aconteça automaticamente.

Se já existir um preço fixo manual com as mesmas dimensões da regra, sem desconto nem datas, a regra assume-o em vez de criar um duplicado. O valor original é guardado e devolvido ao anular o recálculo, ao desativar ou eliminar a regra, ou ao desinstalar o módulo. As promoções e os preços com outras dimensões nunca são alterados.

Automatizar com o cron

O URL do cron, protegido por token, aparece na configuração do módulo:

https://asualoja.pt/index.php?fc=module&module=dfmultiprice&controller=cron&token=O_SEU_TOKEN

Acrescente &id_rule=3 para recalcular apenas uma regra. Agende o URL no seu alojamento, por exemplo todas as noites: os preços acompanham assim as variações das taxas de câmbio e dos custos e o fim das promoções. O cron devolve um resumo JSON por regra e cada execução pode ser anulada como um recálculo manual. Se o token for divulgado, regenere-o na configuração: o URL antigo deixa de funcionar.

Aplicação automática

Com a opção ativa, criar ou alterar um produto ou uma combinação aplica as regras ativas a esse produto. Útil para importações regulares.

O PrestaShop não executa os hooks de um módulo para um funcionário sem a permissão «Ver» nesse módulo. Mantenha o cron como rede de segurança.

Histórico

A configuração do módulo lista os 20 últimos recálculos: data, regra, origem (manual ou cron), estado, contadores e número de alterações registadas para a anulação.

Desativação, eliminação e desinstalação

  • Desativar ou eliminar uma regra remove os preços que gerou e devolve o valor aos preços manuais que tinha assumido.
  • Duplicar uma regra cria uma cópia desativada, pronta a adaptar a outro mercado.
  • A desinstalação remove todos os preços gerados e devolve o valor aos preços manuais assumidos.

Resolução de problemas

Um produto não é atualizado

Verifique se está ativo na loja da regra, se pertence à categoria e à marca visadas e se não está excluído. Execute uma simulação: o estado indica se está em promoção ou sem preço base. Com a base «Preço de custo», precisa de um preço de custo.

O preço apresentado não tem a terminação certa

Verifique se «Arredondar o preço com IVA» está ativo e se o país da regra corresponde ao do cliente. Para uma combinação com impacto, ative «Definir preço por combinação». Numa moeda diferente da moeda da regra, o PrestaShop converte o preço: crie uma regra para essa moeda.

O preço está certo em euros mas não noutra moeda

A regra está em «Todas as moedas»: o preço é guardado na moeda padrão e o PrestaShop converte-o, por exemplo 23,90 € em 27,84 $. A terminação não é mantida. O painel Verificar um preço mostra então o mesmo preço específico nas duas moedas. Crie uma regra por moeda, com País em «Todos os países», e recalcule.

Uma regra por país não se aplica aos visitantes

Os visitantes sem morada ficam associados ao país padrão da loja. Uma regra para outro país só se aplica a clientes com morada nesse país, ou a todos os visitantes desse país se a geolocalização estiver ativa (Internacional > Localização > Geolocalização).

A terminação está errada numa só loja

Em multiloja, o arredondamento usa o IVA do país padrão da loja visada pela regra. Uma regra «Todas as lojas» baseia-se na loja padrão: se as suas lojas não têm o mesmo país padrão, crie uma regra por loja.

A terminação não aparece no preço sem IVA visto pelos visitantes

Se o grupo Visitante apresenta os preços sem IVA, desative «Arredondar o preço com IVA»: a terminação aplica-se então ao preço sem IVA que os visitantes veem.

O resumo mostra conflitos

Outra regra com a mesma loja, país, moeda e grupo já detém esses preços. Ajuste as prioridades ou junte as duas regras.

O botão Anular não aparece

Só é possível anular o último recálculo de cada regra, desde que tenha sido feito com a 1.1.1 e esteja entre os 5 últimos. Um recálculo em curso há menos de uma hora ainda não pode ser anulado.

O cron devolve «Invalid token»

O token do URL já não corresponde ao guardado. Obtenha o URL atualizado na configuração.

Aparece um selo «-0,00 €» em alguns produtos

Não é um problema do tema. O PrestaShop 8.1 e posteriores calcula o desconto apresentado subtraindo o preço arredondado a 2 casas decimais do preço sem desconto, que mantém 6 casas. Como o preço de uma regra é guardado sem IVA, o regresso ao preço com IVA deixa por vezes uma diferença de 0,000001 com IVA a 19, 21 ou 23%, que o tema mostra como um desconto de -0,00 €. Desde a versão 1.1.4 o módulo anula essa diferença nos seus próprios preços: atualize o módulo e limpe a cache em Parâmetros avançados > Desempenho. Não é preciso recalcular.

Esta página foi útil?

Ainda com dúvidas? Contacte o suporte