Atualizar preço por tabela de preço

Olá pessoal, boa tarde!

Estou criando uma integração de preço por tabela de preço e estou utilizando o seguinte endpoint:
/pricing/prices/{SKU} e passando o seguinte body:

Tenho as seguintes tabelas de preços: p1,p4,p5,p6 e p7 no “tradePolicyId” eu acabo passando as minhas tabelas para armazenar os preços.

{
“costPrice”: 1,
“basePrice”: 100,
“fixedPrices”: [
{
“tradePolicyId”: “p4”,
“value”: 72,
“listPrice”: 72
}
]
}

No entanto, quando eu altero o preço da politica p4, ela acaba replicando para todas as politicas e eu não estou entendendo o motivo.

Alguém já teve esse problema e sabe resolver?

Desde já agradeço.

1 Like

@Manzini Tudo bem?

O problema que você está enfrentando pode estar relacionado à maneira como as tabelas de preços e políticas comerciais estão sendo configuradas e armazenadas na VTEX.

Você pode fazer alguns testes reversos para identificar o problema, por exemplo:

1. Configuração de Tabelas de Preços (Trade Policies):

  • Verifique as Políticas de Preço: Certifique-se de que cada tabela de preço (p1, p4, p5, p6, p7) está corretamente configurada no ambiente VTEX e que não estão vinculadas entre si de forma a compartilhar preços. Cada tradePolicyId deve estar corretamente isolado para permitir a especificação de preços distintos.

2. Uso do Endpoint /pricing/prices/{SKU}:

  • Quando você passa o tradePolicyId no corpo da requisição, a VTEX deve armazenar o preço apenas para a política específica indicada. Se a alteração de uma tabela está impactando outras, pode haver uma configuração ou cache que está causando esse comportamento.

3. Possíveis Causas e Soluções:

  • Cache: Verifique se há algum cache ativo que possa estar replicando as alterações para todas as políticas. Às vezes, uma limpeza de cache pode resolver problemas de sincronização de dados.
  • Fallback de Preço: Verifique se o sistema está configurado para usar um preço base ou fallback que se aplica a todas as políticas, caso um preço específico não seja encontrado para uma política. Isso poderia explicar porque a alteração em p4 está sendo refletida nas outras.
  • Erros na Configuração de Preços: Certifique-se de que a configuração de preços para cada política está sendo feita de forma independente. Revise se há algum erro na configuração das políticas dentro do Master Data ou em outra parte da configuração de preços.

4. Recomendação de Teste:

  • Isolamento de Testes: Tente isolar uma única política e realizar testes apenas com ela, monitorando se a alteração impacta outras. Isso pode ajudar a identificar onde está o problema.

Espero que estas informações base pode te ajudar para encontar uma solução.

Abs,
Estevão.

1 Like

@estevao_santos obrigado pela ajuda, eu consegui resolver da seguinte forma:

No objeto que estou enviando é necessário enviar o Array de fixedPrices com todos os valores das tabelas. Exemplo:

{
“costPrice”: 1,
“basePrice”: 100,
“fixedPrices”: [
{
“tradePolicyId”: “p4”,
“value”: 72,
“listPrice”: 72
},
{
“tradePolicyId”: “p5”,
“value”: 100,
“listPrice”: 100
}
]
}

O basePrice precisa ser o mesmo para todos, como eu mudava de acordo a minha tabela de preço ele acabava alterando para todas as tabelas.

2 Likes

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.