Ops! Esse email nao possui permissão para abertura de ticket. Por favor, entre em contato com o responsável pela sua loja para providenciar o acesso.

Amazon - FAQ Interno

ESSE É UM FAQ PARA USO EXCLUSIVAMENTE INTERNO.

Este guia tem como objetivo indicar soluções para problemas que podem surgir na Integração com a Amazon. O artigo está dividido em duas seções "Anúncios/Produtos" e "Pedidos".

Anúncios/Produtos

 

DE-PARA Categoria Global - Amazon

A comunicação entre a integração da VTEX e o marketplace Amazon é feita através da categoria global cadastrada no produto.

O preenchimento da planilha de mapeamento é feito pela categoria VTEX, mas as regras de cada uma das especificações levam em consideração a categoria global.

Para consultar onde cada categoria global está encaixada na Amazon, utilize a planilha de referência:

De-Para categoria global - Amazon

Para repassar o documento para o cliente, transformar o arquivo em excel.

 

Estoque/Preço não estão sendo atualizados (como investigar)

 

O Fluxo de atualização de preço e estoque nos marketplaces é:

Cliente altera estoque/preço no catálogo/pricing -> catálogo/pricing notifica o Broadcaster -> Broadcaster notifica a integração -> integração altera o estoque/preço no marketplace.

  • Primeira metade do fluxo = Merch
  • Segunda metade = Connections

É necessário investigar cada passo para identificar a falha no fluxo.

  1. Cliente altera estoque/preço no catálogo/pricing:

Se for estoque, verificar histórico de alteração da informação no admin.

Se for preço, verificar histórico de alteração da informação no splunk:

link do splunk

Assim, obter a informação de data e hora da última atualização de informação.

2. Catálogo/Pricing notifica o Broadcaster:

O Broadcaster (ou ccnotificator) é o sub-sistema responsável por distribuir e disparar notificações sobre alguma alteração de produto, preço ou estoque à cada um dos afiliados. Para que ele dispare essas informações, é necessário que ele seja notificado de alguma alteração ocorreu.

Sendo assim, é necessário pesquisar pelo log de notificação no splunk. 

Se for estoque, pesquisar pela seguinte query:

index=ccnotificator account={{accountName}} workflow_instance={{idSku}} workflow_type=EnqueueStockChangeNotification

Se for preço, pesquisar pela seguinte query:

index=ccnotificator account={{accountName}} workflow_instance={{idSku}} workflow_type=EnqueuePriceChangeNotification

  • Caso na data e hora em que houve a última alteração da informação (passo 1) não houver um log de notificação, a falha no fluxo deve ser tratada com o time de Merch.

3. Broadcaster notifica a integração:

Após o broadcaster ser notificado de que houve uma alteração de informação, é necessário que ele repasse essa informação para todos os afiliados.

Portanto, é preciso verificar se há logs no splunk de que essa informação foi repassada.

Se for estoque, pesquisar pela seguinte query:

index=ccnotificator account={{accountName}} {{affiliateID}} workflow_instance={{idSku}} workflow_type=NotifyAffiliatesAboutInventoryChangeAsync

Se for preço, pesquisar pela seguinte query:

index=ccnotificator account={{accountName}} workflow_instance={{idSku}} workflow_type=NotifyAffiliatesAboutPriceChangeAsync

  • Caso esse log esteja com a mensagem de erro “Ocorreu um erro de comunicação com o catálogo de produtos. Acesso não autorizado do seller 1  para o sales channel “x”.” é necessário verificar o binding para a política comercial cadastrada no marketplace (tanto da account quanto da subaccount).
  • Caso esse log esteja apontando para um endpoint diferente de “http://amazonintegration.vtexinternal.com/api/amazonintegration/commercialcondition?an={{accountName}}” é necessário ajustar para esse endpoint, provavelmente o cliente fez alguma alteração manual.
  • Caso esse log esteja com algum erro não identificável, a falha no fluxo deve ser tratada com o time de Connections, sendo imprescindível constar no ticket a query utilizada no splunk e o erro identificado

4. Integração altera o estoque/preço no marketplace:

Considerando que o passo 3 tenha sido realizado com sucesso no fluxo, é necessário verificar agora se a integração realizou a alteração necessária no marketplace. 

Para o caso da Amazon, é preciso verificar nos logs do splunk o envio dessa informação:

Se for estoque, pesquisar pela seguinte query:

index=amazonintegration account={{accountName}} workflow_instance={{skuId}} workflow_type=FeedResultStock

Se for preço, pesquisar pela seguinte query:

index=amazonintegration account={{accountName}} workflow_instance={{skuId}} workflow_type=FeedResultPrice

  • Caso esse log não exista ou esteja com um erro não identificável, a falha no fluxo deve ser tratada com o time de Connections, sendo imprescindível constar no ticket a query utilizada no splunk
  • Caso esse log esteja com um valor diferente do cadastrado no admin da VTEX ou no módulo de Pricing, é necessário realizar uma simulação de fulfillment para analisar quais as informações de estoque e preço estão sendo repassadas para a integração , pois a integração utiliza a informação retornada pela simulação de fullfilment para consultar os valores de estoque e preço que serão enviados ao marketplace. 

API de fulfillment:

POST https://{{accountName}}.vtexcommercestable.com.br/api/fulfillment/pvt/orderForms/simulation?sc={{PolíticaComercial}}&affiliateId={{Afiliado}}

  1. Se a simulação de fulfillment retornar o valor que a integração enviou, então esse é o valor realmente cadastrado no sku. É necessário entender com o time de Checkout o motivo da divergência de valores.
  2. Se a simulação de fulfillment retornar um valor diferente do que a integração enviou, então é porque houve uma mudança recente nos valores do sku. Para atualizar a informação, basta realizar uma mudança no sku para que ele seja atualizado novamente no marketplace.

 

Erro de envio de sku “Entry Department dont have a espec mapped correctly in the file”

 

Esse erro mostrado no bridge indica que essa categoria exige uma especificação de departamento (gênero) para os skus. É preciso mapear essa especificação na planilha de mapeamento da Amazon e, caso o cliente ainda não possua essa especificação, é preciso criá-la e mapeá-la na planilha,

 

Erro de envio de sku “Category not available for integration”

 

Esse erro mostrado no bridge indica que essa categoria ainda não é contemplada pela integração da VTEX. Mesmo que ela já esteja contemplada pela Amazon (algumas ainda não são) é necessário um trabalho de integração também do lado da VTEX, para isso, é necessário solicitar essa demanda via fluxo de “feature request” para o time de Connections.

 

Fluxo de envio de sku e fluxo de match

É importante saber que o envio do sku para Amazon ocorre através da categoria global cadastrada no produto. Ou seja, as especificações precisam obedecer às regras de cada categoria.

Se dois produtos na VTEX estiverem na mesma categoria VTEX, mas em categorias globais diferentes, as especificações obrigatórias na planilha de mapeamento serão diferentes.

É importante também saber que o fluxo da integração ao enviar os produtos para Amazon é primeiramente verificar se o produto já existe do lado de lá. 
Para isso a integração faz uma busca utilizando o EAN do sku, caso nas suas especificações (de sku ou de produto) não exista uma especificação contendo o código ASIN.

Cenário de erro comum:
Os skus não possuíam especificações que indiquem o código ASIN do sku e ao entrar no fluxo de busca na Amazon (fluxo de match), através do EAN, foi encontrado um erro. Isso porque, segundo a Amazon, o EAN dos skus não existem na Amazon Brasil, mas existem em outros marketplaces da Amazon.
Assim não foi possível finalizar o fluxo de match e o sku ficou com a mensagem de erro.
No fim das contas temos alguns caminhos para solução do problema:

1. Cliente cadastrar especificação de ASIN (passo a passo mais abaixo)
2. Cliente solicitar isenção de EAN na Amazon e na VTEX (assim os skus não passam mais pelo fluxo de match)
3. Cliente solicitar para VTEX parar o uso do fluxo de match (assim os skus também não passam mais pelo fluxo de match)

---->Configurar especificação de ASIN<--------
Nesse caso o seller teria que criar dois campos nas especificações do SKU: 

O primeiro chamado "IdType" onde ao preencher deve-se colocar o valor "ASIN"
O segundo chamado "IdTypeValue" onde ao preencher deve-se colocar o valor do código ASIN do SKU.

 

Erro de envio de sku. Mensagem de erro: The "Message/Product/DescriptionData/MerchantShippingGroupName" field contains an invalid value.

O erro The "Message/Product/DescriptionData/MerchantShippingGroupName" field contains an invalid value. está associado ao campo Freight Name no cadastro da integração. Siga as orientações do artigo para mais detalhes. Este ponto está lá no final.

Freight Name: Nome do tipo de entrega cadastrado no painel da Amazon. Este nome do tipo de entrega está localizado na tela Configurações de envio na aba Modelos de Envio, embaixo da caixa Modelo padrão da Amazon.

mceclip0.png

Você deve preencher no cadastro da integração o mesmo nome indicado na imagem.


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Pedidos

 

Pedido não integrado. Message":"An error has occurred.","ExceptionMessage":"could not connect to redis Instance at rediscluster.vtex.com.br:6379"

 

Esse erro é raro, mas pode ocorrer quando o redis fica fora do ar por um período de tempo. Assim o pedido não consegue ser inserido. Caso o pedido ainda esteja no status “unshipped” basta forçar via API que o mesmo será integrado corretamente.

API de carga de pedido:

POST https://portal.vtexcommercestable.com.br/api/amazonintegration/order/{{orderid}}?an={{accountName}}

 

Erros nos dados de endereço do pedido

 

As informações de endereço no pedido preenchidas no OMS vêm diferentes do formato esperado, exemplo: O número vem junto com o logradouro e o complemento no lugar do número.

Esse erro não é corrigível, entenda agora os motivos:

Veja como é a interface do pedido no lado da Amazon:

mceclip0.png

Os campos "Endereço", "Número" e "Complemento (opcional)" correspondem aos campos, na API de GET order da Amazon, "Adressline1", "Adressline2" e "Adressline3".

Veja que quando passamos o pedido para o OMS estes 3 campos são os que usamos para preencher, respectivamente, "street", "number" e "complement". 

mceclip1.png

Ou seja:

  1. O campo "Endereço" na Amazon corresponde ao campo "street" na VTEX.
  2. O campo "Número" na Amazon corresponde ao campo "number" na VTEX.
  3. O campo "Complemento (opcional)" na Amazon corresponde ao campo "complement" na VTEX. 

Nós já tratamos as informações da maneira correta. 

Esses campos são strings, ou seja, o cliente pode escrever qualquer tipo de coisa, seja texto, número, etc. Se o cliente preenche o número juntamente com a rua no campo "Endereço" e o bairro no campo "Número" nós precisamos descer o pedido para o OMS da maneira que ele vem, não há como tratar esse tipo de informação.

 

Envio de link de Tracking

 

Nós não enviamos o link de Tracking dos pedidos da Amazon por uma limitação do lado deles, enviamos somente o Tracking Number.

 

Preenchimento do campo “StateInscription” no OMS

 

Por default, se o pedido for de pessoa física, a integração preenche esse campo com a informação “Isento”. Caso não seja, a informação é preenchida com o valor repassado pela própria Amazon.

 

Transportadora escolhida

 

A integração realiza uma simulação de fulfillment e determina a transportadora com base no tempo de entrega que mais se aproxima daquele informado pela Amazon no pedido.

 

Pedidos não integrados e não aparecem no bridge ou splunk

 

Verificar com o cliente se o token cadastrado no card de configuração ainda é válido. Com o token vencido, a integração não consegue consultar os pedidos no status "unshipped" e trazer para dentro da VTEX.

 

Pedidos com erro de SLA ou sku sem estoque

 

A integração sempre que identifica um novo pedido no marketplace que deve ser integrado para a loja realiza uma simulação de fulfillment, com o objetivo de selecionar o SLA do pedido, antes de efetivamente criar o pedido. Nesse momento, se a simulação retornar que o sku não possui estoque, está indisponível ou que não há SLA disponível para aquele item naquele CEP o pedido não será criado na loja e a integração irá logar um erro de SLA no bridge.

Para validar se o erro persiste, é necessário clicar em “Reprocessar pedido”. Caso o erro continue, para analisar o motivo específico (preço, estoque, SLA ou disponibilidade do item) é preciso realizar uma simulação de fulfillment.

cURL

curl --location --request POST 'https://{{accountName}}.vtexcommercestable.com.br/api/fulfillment/pvt/orderForms/simulation?sc={{Pol%C3%ADticaComercial}}&affiliateId={{Afiliado}}' \

 

--header 'Content-Type: application/json' \

--data-raw '{

  "items": [{

    "id": "32309",

    "quantity": 1,

    "seller": "1"

  }],

  "marketingData": null,

  "postalCode": "22250040",

  "country": "BRA",

  "selectedSla": null,

  "clientProfileData": null,

  "geoCoordinates": [],

  "isCheckedIn": false,

  "storeId": null

}'

 


No resultado dessa simulação, é necessário analisar os campos: 

  1. “Price” para validar seo sku possui preço válido;
  2. "Availability" para validar se o sku está com um status válido;
  3. “Sla” para validar se há algum retorno de SLA para o sku no CEP indicado;
  4. “Stockbalance” para validar se o sku possui estoque;
  5. “Message” para validar a disponibilidade do sku.
  • Caso alguma das informações acima não esteja válida, o pedido continuará com erro no Bridge. Neste caso deve-se analisar as configurações da loja ou verificar com o time de Checkout o motivo da informação não estar válida.
  • Após a correção, basta reprocessar o pedido. Caso o erro permaneça, a falha deverá ser tratada com o time de Connections, sendo imprescindível constar no ticket a simulação de fullfilment realizada e os detalhes identificados na análise.






Tem mais dúvidas? Envie uma solicitação

Comentários