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.

Google Shopping - FAQ Interno

ESSE É UM FAQ PARA USO EXCLUSIVAMENTE INTERNO.

FAQ - ENGLISH VERSION

Este FAQ tem como objetivo indicar soluções para problemas que podem surgir na Integração com o Google Shopping. Este artigo está dividido em 2 seções: "Questions" e "Investigations"

OBS: Caso não encontre sua resposta a seguir e necessitar abrir um chamado com o time de Connections é necessário solicitar ao cliente acesso ao ao Google Merchant para os seguintes e-mails:

TREINAMENTO GOOGLE SHOPPING

Já assistiu nosso treinamento? Aqui mostramos como funciona a configuração da integração, autenticação, erros comuns e possiveis causas. 
https://vtex.slack.com/archives/C928RF5PC/p1609936369293200 

DIAGRAMA | FLUXO INTEGRAÇÃO DE PRODUTOS NO GOOGLE SHOPPING

mceclip0.png

QUESTIONS | PRODUCTS


Q: O que pode causar divergência de preço/estoque no Google Shopping?
A: Antes de iniciar uma analise, verifique se o seller utiliza a integração Nativa(api) ou XML, no caso de uma integração Nativa a investigação segue com Connections, se for XML deve ser verificado com o time de Merch. Considerando estes pontos, recomendamos a revisão das seguintes configurações:

[Configuração VTEX]
Passo 1. Verificar se a conta está autenticada; 
Passo 2. Verificar se o endpoint foi configurado corretamente para o afiliado do Google Shopping;
Passo 3. Verificar se as configurações do card estão condizentes com as informações do afiliado;
Passo 4. Verificar se o produto esta vinculado a politica comercial do GS;
Passo 5.
Verificar as configurações de um sku de exemplo realizando a simulação de Checkout.
Passo 6. Verificar se o Sku possui preço fixo cadastrado
(Consultar: "Preço do sku não foi atualizado no Marketplace.")

[Splunk]
Passo1. Verifique se o broadcaster esta recebendo notificação para alteração de preço/estoque
index=ccnotificator account=teste 2148137

Passo 2. Verifique no log se o preço/estoque está sendo enviado corretamente para o marketplace.
index=sellercenterintegration account=teste

[Configuração Merchant Center]
Passo 1.
Solicite ao seller acesso ao Merchant Center;
Passo 2.
Melhorias Automáticas >
Ativar atualização automática de itens > Recomendamos que o seller mantenha esta chave desligada, como a integração já faz a atualização para preço/estoque não é necessário habilitar. Quando habilitada em uma integração nativa pode causar conflito e divergência de preço.

Passo 3. Qual valor esta sendo gravado no campo "Atributos do feed bruto: account API"? Este campo dentro do Merchant Center é o mais importante, é aqui que o seller consegue validar oq a integração esta enviando para o google.

[Crawler google]
Depois disso quem fica responsável por atualizar as informações é o crawler google , que passa visitando todas as paginas de produto.​​ Quando o crawler não consegue ver o preço corretamente, provavelmente existe algum erro relacionado a estrutura da pagina.

Esta ferramenta do google pode ajudar a investigar os erros relacionados a estrutura da pagina
https://search.google.com/test/rich-results?id=ajJ9-HfCwo7rJUd13N1glg 

[Importante]
Nós como integração, não temos controle da estrutura e customizações das paginas de produto, mas existem algumas documentações que podem orientar a agencia/seller:

https://help.vtex.com/pt/tutorial/configuring-discounts-for-orders-prepaid-in-full-on-google-shopping--40K3R5d4NogMvCzIWdWt3e
https://developers.vtex.com/vtex-rest-api/docs/using-checkout-api-to-set-a-discount


Q: Gostaria de entender melhor o fluxo de atualização de preço na integração no Google Shopping para os produtos que são de seller NÃO VTEX, que usam HUB EXTERNO para integração de catalogo com a VTEX.
A:
Quando o Marketplace é externo, o fluxo deve ser visto com o #team-marketplace. Todos os sellers externos precisam notificar o marketplace quando o preço muda, e isso precisa ser suficiente para os fluxos do próprio marketplace atualizem seus dados aonde necessário (como outras integrações externas). Quando o marketplace é externo e não nativo, a disponibilidade dos produtos é de responsabilidades deles. Para confirmar se o conector esta atualizando corretamente, é possivel forçar uma notificação, se o broadcaster for notificado, então conector esta ok.


[Notificação - Preço]

http://{{AccountName}}.vtexcommercestable.com.br/api/notificator/changenotification/{{Idsku}}/price 


[Notificação - Estoque]

http://{{accountName}}.vtexcommercestable.com.br/api/notificator/changenotification/{{Idsku}}/stock 


[Notificação - Produto]

http://{{AccountName}}.vtexcommercestable.com.br/api/notificator/changenotification/{{Idsku}}  


Q: Pq alguns skus mostram uma diferença de -5% no Merchant Center sobre o valor cadastrado no Catalogo da VTEX?

A: Nestes caso, verifique se a chave "Considerar desconto para pagamento com boleto no preço enviado (Desconto à vista)" esta habilitada. Se sim, o seller habilitou a modalidade de pagamento por boleto bancário, ou seja, o preço do produto enviado para o Google Shopping será o valor com esse desconto. A integração vai enviar o preço do sku considerando o desconto. (A chave fica dentro dentro do card de configuração da integração do GS).

Q: O Google Shopping expira produtos sem atualização em 30 dias?
A: Sim, mas não é necessária nenhuma ação do seller, pq temos um sistema que faz este controle e manda uma atualização de 30 em 30 dias.

Q: Como é realizado o preenchimento do atributo item_group_id no XML da integração nativa? 
A: Ele funciona assim: ItemGroupId = sku.ProductId, isso quer dizer que ele vai olhar e pegar o ProductId.

Q: É possível configurar de alguma forma  oitem_group_id no XML da integração nativa?
A: Não, pq ele pega essa informação dando um Get lá no produto inserido no GoogleShopping.

Q: É possível enviar customlabels para o Google Shopping usando a integração Nativa?
A: Sim, é possível gerenciar tags personalizadas no VTEX Google Merchant Connector.
Se o produto tiver algum campo de especificação registrado, o conector o enviará.
Como você pode ver nas conexões da conta. Os campos marcados com (*) no final no Google são personalizados.

mceclip0.png   

Q: Como funciona o envio de preço promocional?
A: A integração envia o preço definido na política comercial vinculada ao Google Shopping". Se existir preço de oferta (De/por), será enviado somente o preço "Por". 

Se existir promoção de desconto à vista (promoção condicionada ao método de pagamento BOLETO), esse benefício será aplicado ao valor do produto antes do envio. Caso essa flag de desconto de boleto esteja habilitada no card de configuração.

Q: Como funciona a flag "Não enviar EAN (GTIN)"?
A: Quando o cliente aciona essa flag no card de configuração, os skus são enviados para o Google com o campo “gtin”= null no Json.
Mas existe uma regra  no Google shopping sobre o envio de algumas propriedades. Quando não enviamos o "Gtin" no caso Gtin=null, o google exige que o campo "mpn" seja preenchido (mpn é o código do fabricante).
Se o mpn não estiver preenchido na VTEX, a integração também envia esse campo como “null”. 
Estes produtos aparecem no Google Merchant com um alerta, quando enviamos assim, mas isso não invalida o produto e pode ser vendido normalmente, mas pode prejudicar a performance.

Documentação complementar:
https://support.google.com/merchants/answer/6324482?hl=pt-BR


Q:
Quando a integração atualiza o feed de produtos?
A: A integração vai atualizar em duas situações:
- Carga inicial. (Quando o lojista configura a integração.)
- Sempre que existir uma alteração de catálogo. (SKU, preço e estoque.)

Q: Como funciona o fluxo para atualização de um SKU?
A:
Sku reindexado > Sku entra em uma fila (esta fila é compartilhada com todas as outras contas) > Skus vão sendo reprocessados de acordo com a fila > Caso o Sku apresente um erro no reprocessamento, ou ele é re-enfileirado (no final da fila) ou descartado > Ele volta para o final da fila.

Q: É possível alterar imagem de um sku já integrado com sucesso?
A: Sim, a integração é notificada sempre que o sku é atualizado(re-indexado)

Q: Qual a média de tempo para atualização de um sku no GS?
A: Sobre o tempo medio, é dificil dizer, vai depender muito do tamanho da fila > É necessario analisar o log + data e entender se este sku voltou para o final da fila (pq recebeu algum erro ou foi reprocessado). Lembrando que caso o Sku apresente um erro no reprocessamento, ou ele é re-enfileirado (no final da fila) ou descartado. Query para analisar log:
index=gsintegration account= {{idsku}} 


INVESTIGATIONS | PRODUCTS


Cenário: "Sku não integra com o google shopping."
Como investigar:
Primeiro Passo, realize uma simulação de checkout, aqui é possível entender qual a situação do sku no momento da integração.
Neste exemplo checkout retornou erro: "Ocorreu um erro de comunicação com o Catálogo -  Acesso não autorizado do seller 1 para o sales channel "26".



[Qual o significado deste erro?]
Este erro normalmente esta relacionado a configuração do binding da loja​. Precisa associar a politica comercial do Google Shopping (IdPoliticacomercial) no binding da {{Account}}. Após realizar este processo, indexa os produtos para serem atualizados/enviados para o GS.  

Como funciona?
https://help.vtex.com/pt/tutorial/o-que-e-binding

mceclip0.png


Entenda mais sobre políticas comerciais e webstie binding

https://help.vtex.com/tutorial/como-funciona-a-relacao-entre-websites-e-politicas-comerciais

Cenário: "Preço do sku não foi atualizado no Marketplace."
Como investigar:
Primeiro passo, avaliar se o sku possui preço fixo cadastrado no catalogo e se foi atualizado.

Sim, Preço fixo foi atualizado > Pular este passo e seguir com a próxima analise (Estoque/Preço não estão sendo atualizados (como investigar))
Não, não possui preço fixo > Neste caso a integração não é notificada sobre alteração de preço. Somente alterações de "Preço Fixo geram notificações ao broadcaster.




Atualizar preço para marketplace
https://help.vtex.com/pt/tutorial/atualizando-preco-para-marketplace--tutorials_384

Preço Fixo - Definição de conceito
https://help.vtex.com/pt/tracks/precos-101--6f8pwCns3PJHqMvQSugNfP/3HxF2u5VwidqnUGnFoKdDy?locale=pt

Ainda tenho duvidas sobre atualização do preço fixo
Esta é a documentação do time de Merch que explica como funciona atualização preço fixo.
https://help.vtex.com/pt/tracks/precos-101--6f8pwCns3PJHqMvQSugNfP/3HxF2u5VwidqnUGnFoKdDy?locale=pt



Mas o Seller não usa "Preço Fixo" o que fazer neste caso?
Caso o seller queira que os preços notifiquem para atualizações de preços não fixos, ele pode definir uma regra de preço, mesmo que vazia para essa política específica e o workflow do pricing de notificação de preços irá chamar o broadcaster.

Como configurar esta regra de preço?
Acesse o Admin > Produtos > Preços > Regras de Preço > Nova Regra >

mceclip0.png

Nova regra : Quais os dados gerais dessa regra? Selecione a politica comercial (recomendamos criar uma regra para cada politica comercial existente na loja).
Em quais itens esta regra será aplicada?  Selecione a opção "Aplicar em todos os produtos"


mceclip1.png
Para os outros campos nenhuma seleção é necessária > Clique em "Salvar". Realize o mesmo procedimento para as outras politicas comerciais. 

mceclip2.png


Cenário: "Sku não integra. Mensagem de erro "insertion error: Ineligible Sku."
Como Investigar: Para melhor entender o status desse sku que está tentando integrar, o ideal é 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
}'


“Price”
para validar se o sku possui preço válido;
No resultado dessa simulação, é necessário analisar os campos:

  1. “Stockbalance” para validar se o sku possui estoque;
  2. “Message” para validar a disponibilidade do sku.

Caso todas as informações estejam corretas, tente reprocessar o sku. Se a mensagem de erro persistir, é necessário abrir um chamado com o time de Connections, passando as análises feitas acima.

Cenário: "Seller White Label não atualiza preço no Google Shopping".
Como Investigar:
É muito importante lembrar que a integração é passiva, ou seja, ela vai atualizar o GS com aquilo que o CHK retornar, então considerando este ponto o primeiro passo é entender como o seller foi configurado:

  • Qual integradora o seller usa para notificar a VTEX?
  • Qual rota da VTEX a integradora usa pra notificar essas alterações de SKU, seja preço ou estoque?

    Caso não tenha nenhuma integradora, entender com o seller como foi feita a integração e quais rotas estão sendo usadas para notificação de preço e estoque.

Segundo passo: Quando o seller tem uma loja que opera como MKP, recebendo preços e estoques de diversos sellers, para notificar as integrações de possíveis alterações devemos usar as rotas da documentação.

Terceiro passo: Verificar qual rota esta sendo usada para notificar o Marketplace. Para notificar 0marketplace, são as rotas encontradas nessa documentação aqui → Notification , para alterar o preço no caso seria a rota: https://accountname.environment.com.br/api/notificator/sellerId/changenotification/skuId/price

Como funciona a comunicação?
Seller externo → Loja VTEX MKP → Broadcaster → Afiliados → marketplaces

Cenário: "Sku apresenta erro GTIN(EAN) mesmo com GTIN(EAN) preenchido".
Como Investigar:
Isso ocorre geralmente quando o gtin/ean está com um formato inválido.Caso o cliente não tenha Gtin válido para usar nos skus, é possível usar a chave de configuração no card do Google, neste caso o google passa a ignorar o gtin cadastrado pois a integração envia esse campo como null.

NOTA: Todos os Códigos de Barras fornecidos para o Brasil, devem OBRIGATORIAMENTE iniciar com a sequência "789". Atualmente no Brasil, todos os prefixos são liberados com o início "789".

Nesta documentação o google explica os formatos aceitos:

doc google

Cenário: "Produtos não aparecem no Bridge".
Como Investigar: Normalmente este problema está relacionado a configurações do Google Shopping, para identificar a causa deste problema, é necessario seguir os seguintes passos:

Passo 1. Verificar se a conta está autenticada; 
Passo 2. Verificar se o endpoint foi configurado corretamente para o afiliado do Google Shopping;
Passo 3. Verificar se as configurações do card estão condizentes com as informações do afiliado;
Passo 4. Verificar se o produto esta vinculado a politica comercial do GS;
Passo 5.
Verificar as configurações de um sku de exemplo realizando a simulação de Checkout.

Cenário: "Mesmo com as configurações corretas, produto não atualiza preço".
Como Investigar: Antes de seguir com a investigação, é necessario entender como funciona o Fluxo de atualização de preço e estoque para o Marketplace:

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.

1. Primeira metade do fluxo = Time Merch
2. Segunda metade = Time Connections

É necessário investigar cada passo para identificar a falha no fluxo. Como no Google Shopping não há envio de quantidade de estoque (somente sku disponível ou indisponível), só iremos tratar a parte de atualização de preço:

1. Cliente altera preço no pricing:
Verificar histórico de alteração da informação no splunk. Assim, obter a informação de data e hora da última atualização de informação.

2. 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 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 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 “https://portal.vtexcommercestable.com.br/api/googleshoppingintegration/notification?accountName={{account}}” é 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 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 Google Shopping, é preciso verificar nos logs do splunk o envio dessa informação, pesquisar pela seguinte query: index=gsintegration accountName={{accountName}} idSku={{skuId}} action=PRODUCT_INSERTION

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 checkout 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 checkout para consultar os valores de estoque e preço que serão enviados ao marketplace.

API de checkout:

POST http://{{accountName}}.vtexcommercestable.com.br/api/checkout/pvt/orderForms/simulation?sc={{políticacomercial}}

  1. Se a simulação de checkout 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 checkout 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.

 

INVESTIGATIONS | SETUP

 

 



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

Comentários