Cálculo de Preço
Quando iniciamos o processo de cadastramento de Produtos (POST/Products), é necessário definir qual será o Cálculo de Preço a ser trabalhado no ANYMARKET e, respectivamente, nos Marketplaces. Na definição de Preço e atualização em nossa API, observaremos os seguintes campos para que seja definido o Cálculo de Preço:
- priceFactor (number): Fator de preço do produto. É utilizado como um multiplicador para o preço de custo do produto. Corresponde ao campo Markup na tela do ANYMARKET.
- calculatedPrice (boolean): Identifica se o produto terá o preço calculado automaticamente, baseado no Markup.
- definitionPriceScope (string): Definição de escopo de preço. Define o tipo de preço escolhido para a integração, sendo: SKU (Manual, eu controlo o preço pelo SKU), SKU_MARKETPLACE (Manual, eu controlo o preço pelo anúncio) ou COST (Automático, pela mudança do custo)
- price (number): Preço de venda.
- sellPrice (number): Preço Por do SKU (utilizado quando o tipo de controle for "Manual, eu controlo o preço pelo SKU")
- discountPrice (number): Preço com desconto do anúncio.
No momento em que as Categorias forem criadas, é necessário informar as definições de preço em seu cadastro. Estarão presentes os campos priceFactor, calculatedPrice e definitionPriceScope, que deverão ser preenchidos da mesma maneira que seus produtos correspondentes.
Atenção!
A forma de cálculo de preço configurada nos produtos irá definir como serão feitas as atualizações dos preços dos produtos para os Marketplaces. Verifique a forma de cadastro que mais se adeque ao seu modelo de negócio.
Abaixo um vídeo exemplificando os cálculos:
Automático - Pelo Custo
Neste cálculo o preço é definido através do preço de Custo do produto multiplicado pelo Markup base, esse cálculo resultará em seu preço de VENDA. O Preço de Venda do Produto ainda pode ser multiplicado pelo Markup adicional disponível na aba de Marketplace.
-
Exemplo 1 Custo = R$: 50,00 | Markup = 1,0 | Valor do produto = R$: 50,00
-
Exemplo 2 Custo = R$: 50,00 | Markup = 2,0 | Valor do produto = R$: 100,00
Ao cadastrar um produto com o Cálculo de Preço Automático, o preço do produto deve ser controlado através do preço de custo e do markup no produto. Quando o preço de custo ou markup forem atualizados, o preço base, assim como o "Preço de" e o "Preço por" de todas os anúncios do produto serão alterados e reenviados automaticamente para os Marketplaces.
No json de POST do produto deve ser enviado o campo calculatedPrice" com o valor true e o campo definitionPriceScope" com o valor COST, dentro do objeto SKU, deve ser enviado o campo "price" que receberá o valor de "Preço Base".
“priceFactor”: 1.5 “calculatedPrice”: true “definitionPriceScope”: COST “price”: 1.00
Para o exemplo abaixo ficaria assim:
{
...
"priceFactor": 1.5,
"calculatedPrice": true,
"definitionPriceScope": "COST",
"price": 1.00,
...
}
Atualização de Preço Base
A atualização do preço base pode ser feita pela alteração do custo no PUT de estoque no campo "cost" e, em seguida (caso necessário), através da alteração do markup no PUT do produto no campo "priceFactor", recalculando o preço base a partir do custo multiplicado pelo markup.
Para atualização do preço no Cálculo Automático, pela mudança do custo:
- Realizar a atualização do Custo (cost) do Produto pela API de PUT/stocks
- Realizar a atualização do Markup (priceFactor) pela API de PUT/products/
{id} - Validar a atualização do Preço Base.
Atenção!
Qualquer alteração de preço na API de SKU ou de PRODUTOS não irá refletir no valor do produto e do anúncio
Manual - Eu controlo o preço pelo Anúncio
Neste tipo de cálculo, o preço é gerado através de cada Marketplace, podendo haver diferenciação de preço (DE – POR) e também diferentes preços para cada Marketplace, para acompanhar comissão ou mesmo fazer um preço diferenciado se desejar.
-
Exemplo 1 B2W: Preço De R$: 50,00 | POR R$: 30,00
-
Exemplo 2 Via Varejo: Preço De R$: 55,00 | POR R$: 35,00
Ao cadastrar um produto com o Cálculo de preço manual por anúncio, o preço do produto deve ser controlado através dos anúncios do produto. Quando o preço de custo ou markup forem atualizados, o preço base do produto será alterado, porém o valor não será enviado para as publicações que você tiver para os Marketplaces.
No json de POST do produto deve ser enviado o campo "calculatedPrice" com o valor false e o campo "definitionPriceScope" com o valor "SKU_MARKETPLACE" e, dentro do objeto SKU, deve ser enviado o campo "price" que receberá o valor de "Preço Base".
{
...
"calculatedPrice": false,
"definitionPriceScope": "SKU_MARKETPLACE",
"price": 1.00,
...
}
Atualização de Preço Base
- Realizar a atualização do Custo (cost) do Produto pela API de PUT/stocks
- Realizar a atualização do Markup (priceFactor) pela API de PUT/products/
{id} - Validar a atualização do Preço Base.
Atualização do Preço dos Anúncios
Para enviar um novo valor de preço para os anúncios, utilize a API de SKU MARKETPLACE ou a tela de Marketplaces dentro da tela de produtos, alterando os valores dos campos de "Preço De" e "Preço Por".
Atualização do Preço dos Anúncios pela API de SKU MARKETPLACE
Para enviar um novo valor de preço para os anúncios, utilize a API de SKU MARKETPLACE ou a tela de Marketplaces dentro da tela de produtos, alterando os valores dos campos de "Preço De" e "Preço Por".
Realizar um GET na API de /skus/marketplaces
- Como parâmetro o PartnerId.
- Validar todos os anúncios daquele SKU.
- Guardar os ids dos anúncios daquele SKU.
Realizar um PUT em /skus/marketplaces/prices
- Atualizando as informações de Preço de (price) e Preço Por (discountPrice) de uma lista de anúncios.
- Será preciso informar:
-
id (integer): ID do anúncio no ANYMARKET;
-
price (number): Preço do anúncio;
-
discountPrice (number): Preço com desconto do anúncio;
Ao atualizar o preço de uma lista de anúncios, é realizado o cálculo de forma automática do valor de desconto e o markup adicional para cada anúncio.
Atenção!
Caso seja implementada uma API de Preço, o Preço será consultado na Integração no momento da criação do anúncio.
Manual - Eu controlo o preço por SKU
Neste tipo de cálculo, o preço das transmissões é definido no SKU, ou seja, todas as publicações/anúncios de um mesmo produto realizadas terão o mesmo valor.
Com esta configuração de cálculo de preço, os campos "Preço De" e o "Preço Por" são os únicos campos que definem o preço dos anúncios e será aplicado o mesmo preço em todos os Marketplaces. Ou seja, qualquer alteração no valor Custo pela API ou a tela de Estoque e Markup pela API ou a tela de Produto NÃO irão alterar o preço dos anúncios nos Marketplaces.
Utilizando a API de Produto, no json de POST ou PUT deve ser enviado o campo "calculatedPrice" com o valor false e o campo "definitionPriceScope" com o valor "SKU", e dentro do objeto SKU, deve ser enviado o campo "price" que receberá o valor de "Preço De" e o campo "sellPrice" que irá receber o valor para o "Preço Por".
{
...
"calculatedPrice": false,
"definitionPriceScope": "SKU",
...
"skus": [
{
...
"price": 1.50,
"sellPrice": 1.00,
...
}
Quaisquer mudanças no "Preço De" e "Preço Por" no produto serão enviadas automaticamentepara os Marketplaces que tenham anúncios ativos.
Atualização do Preço dos Anúncios pela API de SKU
Utilizando a API de SKU (/products/{productId}/skus/{skuId}) envie um novo valor de Preço, ou Preço de e Preço por para o SKU.
Atenção!
Após a escolha do seu Cálculo de Preço lembre-se que cada tipo de Preço deve ser atualizado por sua API específica.
- Automático pelo Custo – Put/Stocks = atualização do Cost;
- Manual por Anúncio – Put/SkuMarketplaces/Prices = atualização de uma lista de anúncios;
- Manual por SKU - Put/Products/Skus = atualização do preço do SKU;