Transferências do Google Merchant Center
Com o serviço de transferência de dados do BigQuery para o Google Merchant Center, é possível programar e gerenciar automaticamente jobs de carregamento recorrentes relacionados a dados dos relatórios do Google Merchant Center.
Relatórios compatíveis
O serviço de transferência de dados do BigQuery para o Google Merchant Center aceita os seguintes dados:
Produtos e problemas relacionados
O relatório de produtos e problemas relacionados mostra os dados de produtos fornecidos ao Merchant Center via feeds ou usando a API Content for Shopping. Esse relatório também mostra os problemas no nível do item detectados pelo Google nos seus produtos. Para ver os dados de produtos e problemas relacionados, acesse o Google Merchant Center ou consulte a API Content for Shopping. Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de produtos do Google Merchant Center.
Inventários regionais
O relatório de inventários regionais mostra outros dados de produtos sobre substituições de disponibilidade e preços regionais dos seus produtos. Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de inventários regionais do Google Merchant Center.
Inventários locais
O relatório de inventários locais mostra outros dados de produtos sobre o inventário local dos seus produtos. Esse relatório contém dados sobre preços, disponibilidade, quantidade, retirada e localização do produto na loja. Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de inventários locais do Google Merchant Center.
Performance
Esse relatório de performance apresenta uma segmentação granular dos seus dados de desempenho no Google Ads e nas listagens gratuitas. Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de performance do Google Merchant Center.
Mais vendidos
O relatório dos mais vendidos apresenta os mesmos dados encontrados na interface do Google Merchant Center e permite preencher os dados em países ou categorias por até 2 anos. Ele mostra os dados sobre os produtos e as marcas mais procurados em anúncios do Shopping e listagens não pagas, bem como se você tem ou não esses itens no seu inventário. Ele tem como base o relatório dos mais vendidos disponível no Google Merchant Center. Para informações sobre como esses dados são carregados no BigQuery, consulte os esquemas de tabelas dos mais vendidos do Google Merchant Center.
Competitividade de preço
Conhecido anteriormente como Benchmarks de preço, o relatório de competitividade de preço mostra dados de benchmark de preço e atributos no nível do produto e tem como base as mesmas definições do relatório de competitividade de preço disponível no Google Merchant Center. Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de competitividade de preço do Google Merchant Center.
Informações de preço
Use o relatório de informações de preço para ver os preços promocionais sugeridos para seus produtos e as previsões sobre a performance esperada ao atualizar os preços. Ele ajuda você a definir os preços dos produtos com mais eficiência. Para mais informações sobre como usar os dados desse relatório, consulte Melhorar os preços dos produtos com o relatório de informações de preço. Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de informações de preço do Google Merchant Center.
Benchmarks de preço
Para informações sobre como esses dados são carregados no BigQuery, consulte o esquema da tabela de Benchmarks de preço do Google Merchant Center.
Principais marcas, principais produtos e inventário de produtos
As tabelas "Principais produtos", "Principais marcas" e "Inventário de produtos" incluem dados sobre os itens e marcas com o melhor desempenho nos anúncios do Shopping e nas listagens não pagas, além de indicar se eles estão ou não no seu inventário. Ele tem como base o relatório dos mais vendidos disponível no Google Merchant Center.
Os relatórios "Principais marcas", "Principais produtos" e "Inventário de produtos" são compostos pelas seguintes tabelas:
BestSellers_TopProducts_
é uma lista de classificação dos principais produtos por país e categoria Google do produto. Essa tabela apresenta dados de todos os comerciantes em anúncios do Shopping e listagens não pagas.BestSellers_TopProducts_Inventory_
é uma tabela de mapeamento entre os principais produtos e seu inventário.BestSellers_TopBrands_
é uma lista de classificação das principais marcas, computadas por país e categoria Google do produto. Ela representa dados de todos os comerciantes em anúncios do Shopping e listagens não pagas.
Para informações sobre como os dados dos mais vendidos são carregados no BigQuery, consulte os esquemas das tabelas do Google Merchant Center dos principais produtos, do inventário de produtos e das principais marcas.
O serviço de transferência de dados do BigQuery para o Google Merchant Center é compatível com as seguintes opções de relatório:
Opção de relatório | Suporte |
---|---|
Programação | Configurável para diário, semanal, mensal ou personalizado. Por padrão, o valor é definido como diário quando a transferência é criada. O intervalo mínimo entre as transferências é de seis horas. |
Limitações
Alguns relatórios podem ter restrições próprias, como diferentes janelas de suporte para preenchimentos históricos. As seções a seguir descrevem as limitações de cada relatório.
Suporte a preenchimentos históricos
Nem todos os relatórios são compatíveis com preenchimentos históricos da mesma forma. Veja a seguir uma lista de relatórios e o nível de suporte para preenchimentos históricos.
- Produtos e problemas relacionados - 14 dias
- Inventários locais - 14 dias
- Inventários regionais - 14 dias
- Performance – 2 anos
- Mais vendidos – 2 anos
- Competitividade do preço - Não compatível com preenchimento
- Informações de preço - Não compatível com preenchimento
Produto e problemas do produto
- Os dados de produtos e de problemas relacionados no BigQuery não representam a
visualização em tempo real da conta do Merchant. Para ver a linha do tempo dos seus
dados, consulte o campo
product_data_timestamp
no esquema.
Benchmarks de preço
- Os dados dos benchmarks de preço não representam uma visualização em tempo real desses
benchmarks. Para ver a linha do tempo de seus dados, consulte o campo
price_benchmark_timestamp
no esquema "Benchmarks de preço". - Nem todos os produtos terão um benchmark de preço.
Mais vendidos
- Nem todos os países conterão dados de classificação. Países incluídos no relatório (usando a ISO 3166-1 alfa-2): AT, AU, BE, BR, CA, CH, CZ, DE, DK, ES, FI, FR, GB, HU, IE, IN, IT, JP, MX, NL, NO, NZ, PL, PT, RO, RU, SE, SK, TR, UA e EUA.
- Os dados dos mais vendidos não representam uma visualização em tempo real das classificações de marca.
Para ver a linha do tempo de seus dados, consulte o campo
rank_timestamp
no esquemaBestSellers_TopProducts_
eBestSellers_TopBrands_
. - Pode haver linhas na tabela
Products_
com umgoogle_brand_id
que não está mapeado a nenhuma marca na tabelaBestSellers_TopBrands_
. - Os códigos da marca no campo
google_brand_id
podem mudar com o tempo para refletir a natureza variável de empresas e marcas. Por isso, não é garantido o rastreamento de um conjunto de marcas durante um longo período. - As marcas são classificadas em várias categorias diferentes, mas todos os produtos na
tabela
Products_
estão em categorias de folha. Para unir marcas e produtos em categorias que não são de folha, use o campogoogle_product_category_ids
, conforme mostrado nos Exemplos de consultas dos mais vendidos.
Compatibilidade com a conta de múltiplos clientes (MCA)
É recomendável que os clientes com vários IDs de comerciante configurem uma conta de múltiplos clientes (MCA, na sigla em inglês) mãe. Assim, uma MCA pode criar uma única transferência para todos os IDs dos comerciantes.
O uso de MCAs do Google Merchant Center oferece vários benefícios em comparação com IDs do comerciante individuais:
- Não será mais necessário gerenciar várias transferências para mover dados de relatórios de vários IDs do comerciante.
- Consultas que envolvem vários IDs do comerciante serão muito mais fáceis de escrever porque todos os dados deles são armazenados na mesma tabela.
- O uso de MCAs reduzirá os possíveis problemas na cota de jobs de carregamento do BigQuery porque todos os dados do ID do comerciante são carregados no mesmo job.
Uma desvantagem do uso de MCAs é que os custos de consultas posteriores provavelmente serão mais altos. Como todos os dados são armazenados na mesma tabela, as consultas que recuperam dados de um ID do comerciante individual ainda precisarão verificar a tabela inteira.
Se você estiver usando uma MCA, o ID dela será listado em aggregator_id
, e as subcontas individuais serão listadas em merchant_id
. Para contas que não usam uma MCA, o aggregator_id
é definido como null
.
Nem todos os relatórios são compatíveis com MCAs. As MCAs são compatíveis com os seguintes relatórios:
- Produtos e problemas relacionados
- Inventários locais
- Inventários regionais
- Desempenho do produto
- Competitividade de preço
- Informações de preço
Antes de começar
Antes de criar uma transferência do Google Merchant Center, siga estas recomendações:
- Verifique se você realizou todas as ações necessárias para ativar o serviço de transferência de dados do BigQuery.
- Crie um conjunto de dados do BigQuery para armazenar os dados do Google Merchant Center.
- Se você pretende configurar notificações de execução de transferência do Pub/Sub,
é preciso ter permissões
pubsub.topics.setIamPolicy
. As permissões do Pub/Sub não serão necessárias se você configurar notificações por e-mail. Para mais informações, consulte Notificações de execução do serviço de transferência de dados do BigQuery.
Permissões exigidas
A pessoa que está criando a transferência precisa ter as seguintes permissões necessárias:
BigQuery:
- Permissões
bigquery.transfers.update
para criar a transferência - As permissões
bigquery.datasets.get
ebigquery.datasets.update
no conjunto de dados de destino
O papel predefinido
bigquery.admin
do IAM inclui permissõesbigquery.transfers.update
,bigquery.datasets.update
ebigquery.datasets.get
. Para mais informações sobre os papéis do IAM no serviço de transferência de dados do BigQuery, consulte o controle de acesso.- Permissões
Google Merchant Center
Acesso padrão à conta do Google Merchant Center usada na configuração da transferência. Para verificar o acesso, clique na seção Usuários na IU do Google Merchant Center.
Para acessar a competitividade do preço e os dados dos mais vendidos, você precisa atender aos requisitos de qualificação para receber insights de mercado.
Configurar uma transferência do Google Merchant Center
Para a configuração de uma transferência de dados do relatório do Google Merchant Center, os seguintes requisitos precisam ser atendidos:
- ID do comerciante ou da conta de múltiplos clientes: é o ID do comerciante mostrado na IU do Google Merchant Center.
Para criar uma transferência de dados do relatório do Google Merchant Center:
Console
Acesse a página do BigQuery no console do Google Cloud.
Clique em Transferências de dados.
Clique em Criar transferência.
Na página Criar transferência:
Na seção Tipo de origem, em Origem, escolha Google Merchant Center.
No campo Nome de exibição da seção Transferir nome da configuração, insira um nome para a transferência, como
My Transfer
. O nome da transferência pode ser qualquer valor que permita identificá-la, caso você precise modificá-la mais tarde.Na seção Opções de programação, faça o seguinte:
Selecione uma Frequência de repetição. Se você selecionar Horas, Dias, Semanas ou Meses, também precisará especificar uma frequência. Também é possível selecionar Personalizado para especificar uma frequência de repetição personalizada. Se você selecionar Sob demanda, essa transferência vai ser executada quando você acionar manualmente a transferência.
Se aplicável, selecione Começar agora ou Começar no horário definido e forneça uma data de início e um horário de execução.
Em Data e hora de início, insira a data e a hora para iniciar a transferência. Esse valor precisa ser pelo menos 24 horas posterior ao horário UTC atual. Se você escolheu Começar agora, essa opção estará desativada.
Se você deixar as opções de programação definidas como Iniciar agora, a primeira execução da transferência será iniciada imediatamente e falhará com esta mensagem de erro:
No data to transfer found for the Merchant account. If you have just created this transfer, you may need to wait for up to a day before the data of your Merchant account are prepared and available for the transfer.
A próxima execução programada será executado corretamente. Se os dados da sua conta do comerciante estiverem preparados na mesma data no horário UTC, será possível configurar um preenchimento para a execução de hoje.
Na seção Configurações de destino, em Conjunto de dados de destino, escolha o conjunto criado para armazenar seus dados.
Na seção Detalhes da fonte de dados, em ID do comerciante, insira o ID do comerciante ou da MCA.
Selecione os relatórios que você quer transferir. Consulte Relatórios suportados para mais detalhes.
No menu Conta de serviço, selecione uma conta de serviço nas contas de serviço associadas ao seu projeto do Google Cloud. É possível associar uma conta de serviço à transferência em vez de usar suas credenciais de usuário. Para mais informações sobre o uso de contas de serviço com transferências de dados, consulte Usar contas de serviço.
- Se você fez login com uma identidade federada, é necessário uma conta de serviço para criar uma transferência. Se você fez login com uma Conta do Google, uma conta de serviço para a transferência é opcional.
- A conta de serviço precisa ter as permissões necessárias.
Opcional: na seção Opções de notificação:
- Clique no botão para ativar as notificações por e-mail. Quando você ativa essa opção, o administrador de transferência recebe uma notificação por e-mail se uma execução de transferência falhar.
- Em Selecionar um tópico do Pub/Sub, escolha o nome do tópico ou clique em Criar um tópico. Essa opção configura notificações de execução do Pub/Sub da sua transferência.
Clique em Salvar.
bq
Insira o comando bq mk
e forneça a sinalização de execução da transferência
--transfer_config
. As sinalizações a seguir também são obrigatórias:
--data_source
--target_dataset
--display_name
--params
Também é possível fornecer a sinalização --project_id
para especificar um projeto determinado. Se --project_id
não for especificado, o projeto padrão será usado.
bq mk \ --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source --service_account_name=service_account_name
Em que:
- project_id é o ID do projeto.
- dataset é o conjunto de dados de destino na configuração da transferência.
- name é o nome de exibição da configuração de transferência. O nome da transferência pode ser qualquer valor que permita identificá-la, caso você precise modificá-la mais tarde.
- parameters contém os parâmetros da configuração da
transferência criada no formato JSON. Por exemplo,
--params='{"param":"param_value"}'
.- No Google Merchant Center, você precisa fornecer o parâmetro
merchant_id
. - O parâmetro
export_products
especifica se o produto e os dados de problemas do produto serão transferidos. Esse parâmetro está incluído por padrão, mesmo que você não especifique o parâmetroexport_products
. O Google recomenda que você inclua esse parâmetro explicitamente e defina-o como "true". - O parâmetro
export_regional_inventories
especifica se os dados de inventários regionais serão transferidos. - O parâmetro
export_local_inventories
especifica se os dados de inventários locais serão transferidos. - O parâmetro
export_price_competitiveness
especifica se os dados de competitividade de preço serão transferidos. - O parâmetro
export_price_insights
especifica se os dados de insights de preço serão transferidos. - O parâmetro
export_best_sellers_v2
especifica se os dados dos melhores vendedores devem ser transferidos. - O parâmetro
export_performance
especifica se os dados de desempenho do produto serão transferidos.
- No Google Merchant Center, você precisa fornecer o parâmetro
- data_source é a fonte de dados:
merchant_center
. - service_account_name é o nome da conta de serviço usado para autenticar a transferência. A conta de serviço
precisa pertencer ao mesmo
project_id
usado para criar a transferência e ter todas as permissões necessárias.
Por exemplo, com o comando a seguir, você cria uma transferência do Google Merchant Center
chamada My Transfer
usando o ID do comerciante 1234
e o conjunto de dados de destino
mydataset
. A transferência é criada no projeto padrão.
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"merchant_id":"1234","export_products":"true","export_regional_inventories":"true","export_local_inventories":"true","export_price_benchmarks":"true","export_best_sellers":"true"}' \
--data_source=merchant_center
Ao executar o comando pela primeira vez, você recebe uma mensagem como esta:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
Siga as instruções na mensagem e cole o código de autenticação na linha de comando.
Se você acabou de criar esta transferência, talvez seja necessário aguardar até um dia antes que os dados da sua conta do comerciante estejam preparados e disponíveis para a transferência.A próxima execução programada será executada com êxito. Se os dados da sua conta do comerciante estiverem preparados na mesma data no horário UTC, será possível configurar um preenchimento para a execução de hoje.
API
Use o método projects.locations.transferConfigs.create
e forneça uma instância do recurso
TransferConfig
.
Resolver problemas de configuração de transferência do Google Merchant Center
Se você tiver problemas para configurar a transferência, consulte Problemas de transferência do Google Merchant Center em Solução de problemas com a configuração do serviço de transferência de dados do BigQuery.
Consultar seus dados
Quando os dados são transferidos para o BigQuery, eles são gravados em tabelas particionadas por tempo de processamento. Para mais informações, consulte Introdução às tabelas particionadas.
Ao consultar a tabela do Google Merchant Center, você precisa usar a pseudocoluna _PARTITIONTIME
ou _PARTITIONDATE
.
Para mais informações, veja Como consultar tabelas particionadas.
A tabela Products_
contém campos aninhados e repetidos. Para mais informações sobre como gerenciar dados aninhados e repetidos, consulte Diferenças no tratamento dos campos repetidos na documentação do GoogleSQL.
Amostras de consultas do Google Merchant Center
Use as amostras de consulta do Google Merchant Center a seguir para analisar os dados transferidos. Também é possível usar as consultas em uma ferramenta de visualização, como o Looker Studio.
Em todas as consultas a seguir, substitua dataset pelo nome do conjunto de dados. Substitua merchant_id pelo seu ID do comerciante. Se você estiver usando uma MCA, substitua merchant_id pelo seu ID de MCA.
Consultas de amostra de produtos e problemas de produtos
Estatísticas de produtos e problemas relacionados
A amostra de consulta SQL a seguir fornece o número de produtos, produtos com problemas e os problemas por dia.
SELECT _PARTITIONDATE AS date, COUNT(*) AS num_products, COUNTIF(ARRAY_LENGTH(issues) > 0) AS num_products_with_issues, SUM(ARRAY_LENGTH(issues)) AS num_issues FROM dataset.Products_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' GROUP BY date ORDER BY date DESC
Produtos reprovados para os anúncios do Shopping
A amostra de consulta SQL a seguir fornece o número de produtos que não foram aprovados para serem exibidos nos anúncios do Shopping, separados por país. A reprovação pode acontecer porque o destino foi excluído ou devido a um problema com o produto.
SELECT _PARTITIONDATE AS date, disapproved_country, COUNT(*) AS num_products FROM dataset.Products_merchant_id, UNNEST(destinations) AS destination, UNNEST(disapproved_countries) AS disapproved_country WHERE _PARTITIONDATE >= 'YYYY-MM-DD' GROUP BY date, disapproved_country ORDER BY date DESC
Produtos com problemas reprovados
A amostra de consulta SQL a seguir recupera o número de produtos com problemas reprovados, separados por país.
SELECT _PARTITIONDATE AS date, applicable_country, COUNT(DISTINCT CONCAT(CAST(merchant_id AS STRING), ':', product_id)) AS num_distinct_products FROM dataset.Products_merchant_id, UNNEST(issues) AS issue, UNNEST(issue.applicable_countries) as applicable_country WHERE _PARTITIONDATE >= 'YYYY-MM-DD' AND issue.servability = 'disapproved' GROUP BY date, applicable_country ORDER BY date DESC
Consultas de amostra de benchmarks de preço
Comparar preços de produtos com comparativos de mercado
A consulta SQL a seguir mescla os dados de Products
e Price Benchmarks
para retornar a
lista de produtos e comparativos de mercado associados.
WITH products AS ( SELECT _PARTITIONDATE AS date, * FROM dataset.Products_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' ), benchmarks AS ( SELECT _PARTITIONDATE AS date, * FROM dataset.Products_PriceBenchmarks_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' ) SELECT products.date, products.product_id, products.merchant_id, products.aggregator_id, products.price, products.sale_price, benchmarks.price_benchmark_value, benchmarks.price_benchmark_currency, benchmarks.country_of_sale FROM products INNER JOIN benchmarks ON products.product_id = benchmarks.product_id AND products.merchant_id = benchmarks.merchant_id AND products.date = benchmarks.date
Consultas de amostra dos mais vendidos
Principais produtos para uma determinada categoria e país
A consulta SQL a seguir retorna os principais produtos com a categoria "Smartphones" nos EUA.
SELECT rank, previous_rank, relative_demand.bucket, (SELECT name FROM top_products.product_title WHERE locale = 'en-US') AS product_title, brand, price_range FROM dataset.BestSellers_TopProducts_merchant_id AS top_products WHERE _PARTITIONDATE = 'YYYY-MM-DD' AND ranking_category = 267 /*Smartphones*/ AND ranking_country = 'US' ORDER BY rank
Principais produtos no seu inventário
A consulta SQL a seguir mescla os dados de BestSellers_TopProducts_Inventory_
e BestSellers_TopProducts_
para retornar uma lista dos principais produtos que você tem no seu inventário.
WITH latest_top_products AS ( SELECT * FROM dataset.BestSellers_TopProducts_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ), latest_top_products_inventory AS ( SELECT * FROM dataset.BestSellers_TopProducts_Inventory_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ) SELECT top_products.rank, inventory.product_id, (SELECT ANY_VALUE(name) FROM top_products.product_title) AS product_title, top_products.brand, top_products.gtins FROM latest_top_products AS top_products INNER JOIN latest_top_products_inventory AS inventory USING (rank_id)
Principais marcas para uma determinada categoria e país
A consulta SQL a seguir retorna as principais marcas com a categoria "Smartphones" nos EUA.
SELECT rank, previous_rank, brand FROM dataset.BestSellers_TopBrands_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' AND ranking_category = 267 /*Smartphones*/ AND ranking_country = 'US' ORDER BY rank
Produtos das principais marcas do seu inventário
A consulta SQL a seguir retorna uma lista de produtos no seu inventário de principais marcas, listadas por categoria e país.
WITH latest_top_brands AS ( SELECT * FROM dataset.BestSellers_TopBrands_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ), latest_products AS ( SELECT product.*, product_category_id FROM dataset.Products_merchant_id AS product, UNNEST(product.google_product_category_ids) AS product_category_id, UNNEST(destinations) AS destination, UNNEST(destination.approved_countries) AS approved_country WHERE _PARTITIONDATE = 'YYYY-MM-DD' ) SELECT top_brands.brand, (SELECT name FROM top_brands.ranking_category_path WHERE locale = 'en-US') AS ranking_category, top_brands.ranking_country, top_brands.rank, products.product_id, products.title FROM latest_top_brands AS top_brands INNER JOIN latest_products AS products ON top_brands.google_brand_id = products.google_brand_id AND top_brands.ranking_category = product_category_id AND top_brands.ranking_country = products.approved_country