Transferencias de Google Merchant Center
El Servicio de transferencia de datos de BigQuery para Google Merchant Center te permite programar y administrar automáticamente trabajos de carga recurrentes de los datos de informes de Google Merchant Center.
Informes compatibles
El Servicio de transferencia de datos de BigQuery para Google Merchant Center admite los siguientes datos:
Productos y problemas de productos
El informe de productos y problemas de productos incluye los datos de productos que se proporcionan a Merchant Center a través de feeds o a través de la Content API for Shopping. En este informe, también se incluyen problemas a nivel de artículo que Google detecta para tus productos. Puedes ver los datos de los productos y los problemas en los productos en Google Merchant Center o a través de una consulta a la Content API for Shopping. Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de la tabla de productos de Google Merchant Center.
Inventarios regionales
En el informe de inventarios regionales, se incluyen datos adicionales de los productos sobre la disponibilidad regional y las anulaciones de precios de tus productos. Para obtener más información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de la tabla de inventarios regionales.
Inventarios locales
El informe de inventarios locales incluye datos adicionales del producto sobre el inventario local de tus productos. Este informe contiene datos sobre los precios locales, la disponibilidad, la cantidad, el retiro y la ubicación del producto en la tienda. Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de la tabla de inventarios locales de Google Merchant Center.
Rendimiento
El informe de rendimiento proporciona una segmentación detallada de tus datos de rendimiento en los anuncios y las fichas gratuitas. Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de la tabla de productos de Google Merchant Center.
Los más vendidos
El informe de los más vendidos proporciona los mismos datos que se encuentran en la IU de Google Merchant Center y te permite reabastecer los datos en países o categorías hasta por 2 años. Esto incluye los datos sobre los productos y las marcas más populares en los anuncios de Shopping y las fichas no pagas, además de saber si los tienes en tu inventario. Este informe se basa en el informe de los mejores vendedores disponible a través de Google Merchant Center. Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta los esquemas de tablas de los mejores vendedores de Google Merchant Center.
Competitividad de precios
Antes conocido como el informe de comparativas de precios, el informe de competitividad de precios incluye atributos a nivel de producto y datos de comparativas de precios y se basa en las mismas definiciones que el informe de competitividad de precios disponible a través de Google Merchant Center. Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de tabla de puntos de Comparativas de precios de Google Merchant Center.
Información sobre precios
Usa el informe de estadísticas de precios para ver los precios de oferta sugeridos de tus productos y las predicciones del rendimiento que puedes esperar si actualizas los precios de tus productos. Puedes usar este informe para definir los precios de tus productos de manera más eficaz. Para obtener más información sobre cómo usar los datos de este informe, consulta Mejora los precios de los productos con el informe de estadísticas de precios para obtener más información para usar los datos de este informe. Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de tabla de puntos de Comparativas de precios de Google Merchant Center.
Comparativas de precios
Para obtener información sobre cómo se cargan estos datos en BigQuery, consulta el esquema de tabla de puntos de Comparativas de precios de Google Merchant Center.
Inventario de productos, productos principales y marcas principales
Las tablas de productos principales, marcas principales e inventario de productos incluyen datos sobre los productos y las marcas más populares en los anuncios de Shopping y las fichas no pagas, además de saber si los tienes en tu inventario. Este informe se basa en el informe de los mejores vendedores disponible a través de Google Merchant Center.
Los informes de marcas principales, productos principales e inventario de productos se componen de las siguientes tablas:
BestSellers_TopProducts_
es una lista clasificada de productos principales por país y categoría de producto de Google. En esta tabla, se representan los datos de todos los comercios en los anuncios de Shopping y las fichas no pagas.BestSellers_TopProducts_Inventory_
es una tabla de asignación entre los productos principales y tu inventario.BestSellers_TopBrands_
es una lista clasificada de marcas principales, calculadas por país y categoría de producto de Google. Representa los datos de todos los comercios en los anuncios de Shopping y las fichas no pagas.
Para obtener información sobre cómo se cargan los datos de los más vendidos en BigQuery, consulta los esquemas de tablas de productos principales, inventario de productos y marcas principales de Google Merchant Center.
El Servicio de transferencia de datos de BigQuery para Google Merchant Center admite las siguientes opciones de informes:
Opción de informe | Asistencia |
---|---|
Programa | Configurable con información diaria, semanal, mensual o personalizada. De forma predeterminada, se configura a diario cuando se crea la transferencia. El intervalo mínimo entre transferencias es de 6 horas. |
Limitaciones
Algunos informes pueden tener sus propias restricciones, como diferentes períodos de compatibilidad para los reabastecimientos históricos. En las siguientes secciones, se describen las limitaciones de cada informe.
Asistencia para reabastecimientos históricos
No todos los informes admiten reabastecimientos históricos de la misma manera. La siguiente es una lista de informes y el nivel de compatibilidad con los reabastecimientos históricos.
- Productos y problemas de productos: 14 días
- Inventarios locales: 14 días
- Inventarios regionales: 14 días
- Rendimiento: 2 años
- Los más vendidos - 2 años
- Competitividad de los precios: Sin asistencia de reabastecimiento
- Estadísticas de precios: Sin compatibilidad con reabastecimiento
Productos y problemas con productos
- Los datos de productos y de problemas de productos en BigQuery no representan la vista en tiempo real de tu cuenta del comerciante. Para ver el cronograma de tus datos, consulta el campo
product_data_timestamp
en el esquema.
Comparativas de precios
- Los datos de las Comparativas de precios no representan la vista en tiempo real de las Comparativas de precios. Para ver el cronograma de tus datos, consulta el campo
price_benchmark_timestamp
en el esquema de comparativas de precios. - No todos los productos tendrán una comparativa de precios.
Los más vendidos
- No todos los países contendrán los datos de clasificación. Países incluidos en el informe (con ISO 3166-1 Alfa-2): AT, AU, BE, BI, CA, CH, CZ, DE, DK, ES, FI, FR, GB, HU, IE, IN, IT, JP, MX, NL, NO, NZ, PL, RO, RU, SE, SK, TR, UA y US
- Los datos de los más vendidos no representan una vista en tiempo real de las clasificaciones de la marca.
Para ver el cronograma de tus datos, consulta el campo
rank_timestamp
en el esquemaBestSellers_TopProducts_
yBestSellers_TopBrands_
. - Puede haber filas en la tabla
Products_
con ungoogle_brand_id
que no se mapea a ninguna marca en la tablaBestSellers_TopBrands_
. - Los ID de marca en el campo
google_brand_id
pueden cambiar con el tiempo para reflejar la naturaleza cambiante de las empresas y marcas. Debido a esto, no se garantiza el seguimiento de un conjunto de marcas durante un período prolongado. - Si bien las marcas se clasifican en muchas categorías diferentes, todos los productos de la tabla
Products_
están en categorías de hoja. Para unirte a marcas y productos en categorías que no sean de hoja, usa el campogoogle_product_category_ids
, como se muestra en Consultas de muestra de los más vendidos.
Asistencia para cuenta de varios clientes (MCA)
Se recomienda a los clientes existentes con varios ID de Merchant que configuren una cuenta de varios clientes (MCA) principal. La configuración de una MCA te permite crear una única transferencia para todos tus ID de Merchant.
Usar las MCA de Google Merchant Center tiene varios beneficios en comparación con los ID de Merchant individuales:
- Ya no es necesario que administres varias transferencias para transferir datos de informes de varios ID de comerciante.
- Las consultas que implican varios ID de Merchant son mucho más fáciles de escribir porque todos los datos de ID de Merchant se almacenan en la misma tabla.
- Usar las MCA alivia los posibles problemas de cuota de trabajo de carga de BigQuery porque todos los datos del ID de Merchant se cargan en el mismo trabajo.
Una posible desventaja de usar las MCA es la probabilidad de que los costos posteriores de consulta sean más altos. Debido a que todos tus datos se almacenan en la misma tabla, las consultas que recuperan datos para un ID de Merchant individual deben analizar toda la tabla.
Si usas una MCA, el ID de la MCA aparece en aggregator_id
y las cuentas secundarias individuales se muestran en merchant_id
. En el caso de las cuentas que no usan una MCA, aggregator_id
se establece en null
.
No todos los informes admiten las MCA. Las MCA son compatibles con los siguientes informes:
- Productos y problemas de productos
- Inventarios locales
- Inventarios regionales
- Rendimiento de productos
- Competitividad de precios
- Información sobre precios
Antes de comenzar
Antes de crear una transferencia de Google Merchant Center:
- Verifica si completaste todas las acciones necesarias para habilitar el Servicio de transferencia de datos de BigQuery
- Crea un conjunto de datos de BigQuery para almacenar los datos de Google Merchant Center.
- Si quieres configurar las notificaciones de ejecución de transferencias para Pub/Sub, debes tener los permisos
pubsub.topics.setIamPolicy
. Los permisos de Pub/Sub no son necesarios si solo configuras las notificaciones por correo electrónico. Para obtener más información, consulta la sección sobre notificaciones de ejecución del Servicio de transferencia de datos de BigQuery.
Permisos necesarios
Asegúrate de que la persona que crea la transferencia tenga los siguientes permisos requeridos:
BigQuery:
- permisos
bigquery.transfers.update
para crear la transferencia - Los permisos
bigquery.datasets.get
ybigquery.datasets.update
en el conjunto de datos de destino
La función predefinida de IAM
bigquery.admin
incluye los permisosbigquery.transfers.update
,bigquery.datasets.update
ybigquery.datasets.get
. Para obtener más información sobre las funciones de IAM en el Servicio de transferencia de datos de BigQuery, consulta Control de acceso.- permisos
Google Merchant Center
Acceso estándar a la cuenta de Google Merchant Center que se usa en la configuración de la transferencia. Para verificar el acceso, haz clic en la sección Usuarios de la IU de Google Merchant Center.
Para acceder a la competitividad de los precios y a los datos de los más vendidos, debes cumplir con los requisitos de elegibilidad para las estadísticas de mercado.
Configura una transferencia de Google Merchant Center
La configuración de una transferencia de datos para los informes de Google Merchant Center requiere lo siguiente:
- ID de Merchant Center o ID de cuenta de varios clientes: Es el ID de Merchant Center que aparece en la IU de Google Merchant Center.
Si quieres crear una transferencia de datos para los informes de Google Merchant Center, haz lo siguiente:
Consola
Ve a la página de BigQuery en la consola de Google Cloud.
Haz clic en Transferencias de datos.
Haz clic en Crear transferencia.
En la página Crear transferencia, sigue estos pasos:
En la sección Tipo de fuente, en Fuente, elige Google Merchant Center.
En la sección Nombre de la configuración de transferencia, en Nombre visible, ingresa el nombre de la transferencia, como
My Transfer
. El nombre de la transferencia puede ser cualquier valor que te permita identificarla con facilidad si es necesario hacerle modificaciones más tarde.En la sección Opciones de programación, haz lo siguiente:
Selecciona una Frecuencia de repetición. Si seleccionas Horas, Días, Semanas o Meses, también debes especificar una frecuencia. También puedes seleccionar Personalizado para especificar una frecuencia de repetición personalizada. Si seleccionas Según demanda, esta transferencia se ejecuta cuando activas la transferencia de forma manual.
Si corresponde, selecciona Comenzar ahora o Comenzar a una hora determinada y proporciona una fecha de inicio y una hora de ejecución.
En Fecha de inicio y hora de ejecución, ingresa la fecha y hora para iniciar la transferencia. Este valor debe estar al menos 24 horas después de la hora UTC actual. Si seleccionaste Comenzar ahora (Start now), esta opción está inhabilitada.
Si dejas las opciones de programación configuradas como Start now (Comenzar ahora), la primera ejecución de transferencia se iniciará de inmediato, fallará y mostrará el siguiente mensaje de error:
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.
La próxima ejecución programada debería ejecutarse de forma correcta. Si los datos de tu cuenta de Merchant están listos en la misma fecha en la hora UTC, puedes configurar un reabastecimiento para la ejecución de hoy.
En la sección Configuración de destino, en Conjunto de datos de destino, selecciona el conjunto de datos que creaste para almacenar tus datos.
En la sección Detalles de la fuente de datos (Data source details), en ID de Merchant (Merchant ID), ingresa tu ID de comerciante o tu ID de MCA.
Selecciona los informes que deseas transferir. Consulta Informes compatibles para obtener más detalles.
En el menú Cuenta de servicio, selecciona una cuenta de servicio de las cuentas de servicio asociadas a tu proyecto de Google Cloud. Puedes asociar una cuenta de servicio con tu transferencia en lugar de usar tus credenciales de usuario. Para obtener más información sobre el uso de cuentas de servicio con transferencias de datos, consulta Usa cuentas de servicio.
- Si accediste con una identidad federada, se requiere una cuenta de servicio para crear una transferencia. Si accediste con una Cuenta de Google, la cuenta de servicio para la transferencia es opcional.
- La cuenta de servicio debe tener los permisos necesarios.
De forma opcional, en la sección Opciones de notificación, haz lo siguiente:
- Haz clic en el botón de activación para habilitar las notificaciones por correo electrónico. Cuando habilitas esta opción, el administrador de transferencias recibe una notificación por correo electrónico cuando falla una ejecución de transferencia.
- En Seleccionar un tema de Cloud Pub/Sub (Select a Cloud Pub/Sub topic), elige el nombre de tu tema o haz clic en Crear un tema (Create a topic). Con esta opción, se configuran las notificaciones de ejecución de Pub/Sub para tu transferencia.
Haga clic en Save.
bq
Ingresa el comando bq mk
y suministra la marca de creación de transferencias --transfer_config
. También se requieren las siguientes marcas:
--data_source
--target_dataset
--display_name
--params
También puedes proporcionar la marca --project_id
para especificar un proyecto en particular. Si no se especifica --project_id
, se usa el proyecto predeterminado.
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
Aquí:
- project_id es el ID del proyecto.
- dataset es el conjunto de datos de destino para la configuración de la transferencia.
- name es el nombre visible de la configuración de transferencia. El nombre de la transferencia puede ser cualquier valor que te permita identificarla si es necesario hacerle modificaciones más tarde.
- parameters contiene los parámetros para la configuración de la transferencia creada en formato JSON. Por ejemplo:
--params='{"param":"param_value"}'
- Para Google Merchant Center, debes proporcionar el parámetro
merchant_id
. - El parámetro
export_products
especifica si se deben transferir los datos de productos y problemas de productos. Este parámetro se incluye de forma predeterminada, incluso si no especificas el parámetroexport_products
. Google recomienda incluir este parámetro de forma explícita y configurarlo como “true”. - El parámetro
export_regional_inventories
especifica si se deben transferir los datos de inventarios regionales. - El parámetro
export_local_inventories
especifica si se deben transferir los datos de inventarios locales. - El parámetro
export_price_competitiveness
especifica si se transfieren datos de comparativa de precios. - El parámetro
export_price_insights
especifica si se transfieren datos de comparativa de precios. - El parámetro
export_best_sellers_v2
especifica si se deben transferir los datos de los más vendidos. - El parámetro
export_performance
especifica si se deben transferir los datos de rendimiento del producto.
- Para Google Merchant Center, debes proporcionar el parámetro
- data_source es la fuente de datos:
merchant_center
. - service_account_name es el nombre de la cuenta de servicio que se usa para autenticar tu transferencia. La cuenta de servicio debe ser propiedad del mismo
project_id
que se usa para crear la transferencia y debe tener todos los permisos necesarios.
Por ejemplo, con el siguiente comando se crea una transferencia de Google Merchant Center llamada My Transfer
con el ID de Merchant 1234
y el conjunto de datos de destino mydataset
. La transferencia se crea en tu proyecto predeterminado.
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
La primera vez que ejecutes el comando, recibirás un mensaje similar al siguiente:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
Sigue las instrucciones del mensaje y pega el código de autenticación en la línea de comandos.
Si acabas de crear esta transferencia, es posible que debas esperar hasta un día antes de que los datos de tu cuenta de Merchant estén listos para la transferencia.La siguiente ejecución programada se debe ejecutar de forma correcta. Si los datos de tu cuenta de Merchant están listos en la misma fecha en la hora UTC, puedes configurar un reabastecimiento para la ejecución de hoy.
API
Usa el método projects.locations.transferConfigs.create
y proporciona una instancia del recurso TransferConfig
.
Soluciona problemas relacionados con la configuración de la transferencia de Google Merchant Center
Si tienes problemas con la configuración de la transferencia, consulta la sección sobre problemas de transferencia de Google Merchant Center en la página sobre cómo solucionar problemas relacionados con la transferencia del Servicio de transferencia de datos de BigQuery.
Consulta tus datos
Cuando tus datos se transfieren a BigQuery, se escriben en tablas particionadas por tiempo de transferencia. Para obtener más información, consulta Introducción a tablas con particiones.
Cuando consultes tu tabla de Google Merchant Center, debes usar la seudocolumna _PARTITIONTIME
o _PARTITIONDATE
en tu consulta.
Para obtener más información, lee Consulta tablas particionadas.
La tabla Products_
contiene campos anidados y repetidos. Para obtener información sobre cómo controlar datos anidados y repetidos, consulta Diferencias en el manejo de campos repetidos en la documentación de GoogleSQL.
Consultas de muestra de Google Merchant Center
Puedes usar las siguientes consultas de muestra de Google Merchant Center para analizar los datos transferidos. También puedes usar las consultas en una herramienta de visualización, como Looker Studio.
En cada una de las siguientes consultas, reemplaza dataset por el nombre de tu conjunto de datos. Reemplaza merchant_id por tu ID de Merchant Center. Si usas una MCA, reemplaza merchant_id por tu ID de MCA.
Consultas de muestra de productos y problemas de productos
Estadísticas de los productos y sus problemas
La siguiente consulta de muestra en SQL proporciona la cantidad de productos, productos con problemas y problemas por día.
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
Productos rechazados para anuncios de Shopping
La siguiente consulta de muestra en SQL proporciona la cantidad de productos que no están aprobados para mostrarse en los anuncios de Shopping, separados por país. El rechazo puede ser el resultado de que el destino se excluye o debido a un problema con el producto.
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
Productos con problemas rechazados
La siguiente consulta de muestra en SQL recupera la cantidad de productos con problemas rechazados, 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 muestra de precios de comparativas
Compare precios de productos con las comparativas
La siguiente consulta en SQL une los datos Products
y Price Benchmarks
para devolver la lista de productos y los puntos de comparativas asociados.
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 muestra de los más vendidos
Principales productos para una categoría y un país determinados
La siguiente consulta en SQL devuelve los mejores productos para la categoría “Smartphones” de EE.UU.
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
Productos principales en tu inventario
La siguiente consulta en SQL une los datos BestSellers_TopProducts_Inventory_
y BestSellers_TopProducts_
para devolver una lista de los principales productos que tiene en la actualidad en tu inventario.
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)
Principales marcas para una categoría y un país determinados
La siguiente consulta en SQL devuelve las principales marcas de la categoría “Smartphones” en EE.UU.
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
Productos de las principales marcas en tu inventario
En la siguiente consulta en SQL, se devuelve una lista de productos del inventario de las mejores marcas, enumeradas por categoría y 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