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.

FAQ Connections - Carrefour

ESSE É UM FAQ PARA USO EXCLUSIVAMENTE INTERNO.

Este FAQ tem como objetivo indicar soluções para problemas e ajudar com duvidas que podem surgir na Integração com o Carrefour.


ATENÇÃO: MUDANÇAS SPLUNK PARA OPEN SEARCH 

Devido as mudanças relacionadas ao log, favor desconsiderar "queries" relacionadas ao splunk mencionadas neste FAQ, recomendamos a uitlização do seguinte arquivo como referencia, até que o FAQ seja atualizado.  (Estas novas queries tambem estão disponiveis para consulta no canal #team-connections.


O FAQ ESTÁ CLASSIFICADO DA SEGUINTE FORMA:
1. UPDATE FAQ     | ACOMPANHE AS ULTIMAS ATUALIZAÇÕES DO NOSSO FAQ
2. TICKETS | QUAIS INFOS PODEM AJUDAR O TIME DE PRODUTO EM UMA INVESTIGAÇÃO?
3. QUESTIONS | ORDERS
3. INVESTIGATIONS | PRODUCTS
4. INVESTIGATIONS | ORDERS
5. INVESTIGATIONS | SETTINGS
UPDATE FAQ | CLIQUE AQUI E ACOMPANHE AS ULTIMAS ATUALIZAÇÕES DO NOSSO FAQ

mceclip0.png

QUAIS INFOS PODEM AJUDAR O TIME DE PRODUTO EM UMA INVESTIGAÇÃO?

Ficou com duvida na hora de criar um ticket para Connections? CLIQUE AQUI
Temos algumas dicas que podem ajudar a melhorar nossa comunicação e diminuir o "vai e vem" dos tickets, dando assim mais agilidade no atendimento/resposta do time de produto. Aqui estão algumas dicas que achamos essencial para iniciar uma investigação.

QUESTIONS | ORDERS

Q: Conta está com diversos pedidos cancelados no OMS mas com pagamento aprovado no Carrefour.
A: Ticket com investigação completa https://vtexhelp.zendesk.com/agent/tickets/720823

Q: Sobre o erro: "status":403,"message":"Forbidden"
A: Logamos este erro quando as credenciais usadas pela loja não estão autorizadas a acessar algum recurso no Carrefour.

Q: Como funciona o fluxo de integração de Pedidos entre Carrefour e VTEX
A: Diferente de outros Marketplaces, ao invés de recebermos uma notificação de pedido do marketplace, nossa integração é que ativamente consulta massivamente os pedidos de tempos em tempos no marketplace (sendo o Carrefour passivo a esse fluxo).

Hoje nossa integração faz essa consulta de pedidos considerando uma Janela de Tempo de 7 dias. Por exemplo, quando a integração for consultar os pedidos no dia 10/01 às 12:00, serão retornados pedidos criados entre os dias 02/01 às 12:00 e 10/01 às 12:00. Pedidos fora dessa janela serão desconsiderados

INVESTIGATIONS | PRODUCTS

Cenario: 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=NotifyAffiliatesAboutStockChangeAsync

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://carrefourintegration.vtexcommerce.com.br/api/carrefourintegration/commercialcondition/notification?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 Channels, 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 do Carrefour, é preciso verificar nos logs do splunk o envio dessa informação:

Se for estoque ou preço, pesquisar pela seguinte query:

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

  • 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 Channels, 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.

 

Sku não aparece no marketplace. No bridge está como “sucesso”, mas com a mensagem “Produto ainda não foi catalogado no Carrefour”

 

Esse é um problema antigo nosso com a integração do Carrefour. Quando o produto entra em fase de catalogação ele pode ser tanto aprovado quanto reprovado pelo marketplace.

Sendo aprovado, nós recebemos o OK do Carrefour e enviamos as informações de preço e estoque (o tempo para ser aprovado pode chegar a ser 60 dias). No entanto, se for reprovado, o Carrefour não nos informa nada e esse sku acaba entrando em um limbo.

Para solucionar, é preciso reenviar o sku com a API de PUT:

PUT http://portal.vtexcommercestable.com.br/api/carrefourintegration/stockkeepingunit/{{skuId}}?an={{accountName}}

INVESTIGATIONS | PRODUCTS

Cenario: Pedidos com erro de SLA ou sku sem estoque
Como Investigar: 
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://.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. “Sla” para validar se há algum retorno de SLA para o sku no CEP indicado;
  3. “Stockbalance” para validar se o sku possui estoque;
  4. “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 ouverificar 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 Channels, sendo imprescindível constar no ticket a simulação de fullfilment realizada e os detalhes identificados na análise.

 

Cenario: API de frete retorna valor nulo
Como Investigar: 
Para analisar esse caso é necessário, primeiramente, realizar uma simulação de fulfillment como explicada no tópico “Pedidos com erro de SLA ou sku sem estoque”. Com a resposta dessa simulação, será possível analisar se o sku possui SLA de entrega naquele CEP e qual o tipo de transportadora retornado.

API de consulta de frete:

GET http://portal.vtexcommercestable.com.br/api/carrefourintegration/pub/{{accountName}}/freight?sku={{skuId}}|{{qtd}}&shipping_zip_code={{CEP}}

 

Caso a simulação de fulfillment não retorne um valor de SLA, então a API de frete do Carrefour deveria retornar que o sku não está disponível para entrega naquele frete. Caso esteja com um comportamento diferente desse, é preciso abrir um ticket com o time de Channels, incluindo a simulação de fulfillment realizada.

Caso a simulação de fulfillment retorne um valor de SLA, é necessário verificar se o tipo de entrega dos SLAs retornados estão mapeados no card de config do Carrefour.

Artigo do card de config do Carrefour (https://help.vtex.com/tracks/configurar-integracao-com-o-carrefour--2wYlj07cNuA8k8mmwY86K2/2AhqcmRN1mseCsGuGIe6GK)

Se os tipos de entregas não estiverem mapeados, é necessário mapear para que a API de frete retorne um valor diferente de null.

 

INVESTIGATIONS | PRODUCTS

Cenario: Erro ao salvar o card de configuração. Mensagem: “Erro! Ação com erro”
Como Investigar:  Para investigar esse caso é preciso reproduzir o comportamento de erro, ou seja, é preciso tentar salvar as informações do card de configuração (essas informações são obtidas com o próprio cliente). 

Ao salvar o card, tenha aberto o devTools na aba de Network. Com isso, será possível ver em qual momento do processo está o erro. Exemplo:

mceclip0.png

Nesse caso, o erro era a falta de mapeamento de pelo menos um tipo de SLA. Caso a resolução do erro não esteja explícita neste artigo (https://help.vtex.com/tracks/configurar-integracao-com-o-carrefour--2wYlj07cNuA8k8mmwY86K2/2AhqcmRN1mseCsGuGIe6GK), é necessário abrir um ticket com o time de Channels.





Comentários