Menu
Feedback
Comece aqui
Tutoriais
Portal do desenvolvedor

Problemas conhecidos
Diretivas de suporte
Troubleshooting

Perguntas frequentes
Comunicados
Problemas conhecidos
Soma dos valores de sellingPrice pode ser diferente do valor total de produtos subtraído pelo total de descontos
Soma dos valores de sellingPrice pode ser diferente do valor total de produtos subtraído pelo total de descontos
ID:
Backlog
Publicado em 13/09/2019
Última atualização em 22/12/2022

Sumário

A soma dos valores unitários dos produtos com o desconto aplicado (propriedade sellingPrice) pode ser diferente do valor total de produtos subtraído pelo total de descontos.

Isso ocorre porque o cálculo do desconto unitário é um rateio do desconto total entre todos os itens e suas quantidades, o que pode gerar problemas de arredondamento. Ao somar valores que foram arredondados, detecta-se a diferença em relação ao total original.

Sendo assim, o sellingPrice deve ser usado como mera referência, mantendo os totalizadores como valor real.

A ocorrência é potencializada em lojas que utilizam menos de 2 casas decimais, quando o arredondamento é mais utilizado.

Simulação

Exemplo de ocorrência:

  • Carrinho com 2 unidades de um produto que custa $190;
  • Total de produtos em $380;
  • Desconto de 25%;
  • Total de descontos em $95;
  • Valor unitário com desconto fica em $142,5;
  • Se a loja não utiliza casas decimais, o valor unitário final será de $142.

Neste cenário:

  • Total de produtos = $380;
  • Total de descontos = $95;
  • Total do pedido = $285.

Porém a soma do preço de venda dos itens, que já tem o desconto aplicado, fica em $284.

Workaround

Não temos um workaround para este cenário.

Contribuidores
2
Photo of the contributor
Photo of the contributor
+ 2 contributors
Contribuidores
2
Photo of the contributor
Photo of the contributor
+ 2 contributors
Nesta página
Ainda tem dúvidas?
Pergunte à comunidade
Encontre soluções e compartilhe ideias na comunidade VTEX.
Junte-se à nossa comunidade
Solicite suporte à VTEX
Para assistência personalizada, entre em contato com nossos especialistas.
Abra um ticket de suporte
GithubDeveloper portalComunidadeFeedback