Programar transferencias de Merchant Center

Antes de empezar

Antes de crear una transferencia de datos de Merchant Center:

  • Comprueba que has completado todas las acciones necesarias para habilitar BigQuery Data Transfer Service.
  • Cree un conjunto de datos de BigQuery para almacenar los datos de Merchant Center.
    • En cuanto a la región del conjunto de datos, puedes usar la opción predeterminada, Multirregión, en Estados Unidos o en la Unión Europea.
    • Si quiere crear un conjunto de datos en una región específica, la transferencia de datos de Merchant Center solo se admite en las siguientes regiones:
    • us-east4 (Northern Virginia),
    • asia-northeast1 (Tokyo),
    • asia-southeast1 (Singapore),
    • australia-southeast1 (Sydney),
    • europe-north1 (Finland),
    • europe-west2 (London),
    • europe-west6 (Zurich).
  • Si quieres configurar notificaciones de ejecuciones de transferencias para Pub/Sub, debes tener permisos de pubsub.topics.setIamPolicy. No se necesitan permisos de Pub/Sub si solo configura notificaciones por correo electrónico. Para obtener más información, consulta el artículo sobre las notificaciones de ejecución de BigQuery Data Transfer Service.

Permisos obligatorios

Asegúrate de que la persona que crea la transferencia de datos tenga los siguientes permisos obligatorios:

  • BigQuery

    • Permisos de bigquery.transfers.update para crear la transferencia de datos
    • Permisos bigquery.datasets.get y bigquery.datasets.update en el conjunto de datos de destino

    El rol predefinido de gestión de identidades y accesos bigquery.admin incluye los permisos bigquery.transfers.update, bigquery.datasets.update y bigquery.datasets.get. Para obtener más información sobre los roles de gestión de identidades y accesos en BigQuery Data Transfer Service, consulta Control de acceso.

  • Merchant Center:

Configurar una transferencia de Merchant Center

Para configurar una transferencia de datos para los informes de Merchant Center, debe cumplir los siguientes requisitos:

Para crear una transferencia de datos para los informes de Merchant Center, siga estos pasos:

Consola

  1. Ve a la página Transferencias de datos de la Google Cloud consola.

    Ir a Transferencias de datos

  2. Haz clic en Crear transferencia.

  3. En la página Crear transferencia, haz lo siguiente:

    • En la sección Tipo de fuente, elija Google Merchant Center en Fuente.
    • En la sección Nombre de la configuración de transferencia, en Nombre visible, indica un nombre para la transferencia de datos; por ejemplo, My Transfer. El nombre de la transferencia puede ser cualquier valor que te permita identificarla si necesitas modificarla más adelante.

      Nombre de transferencia

    • En la sección Opciones de programación:

      • Selecciona una Frecuencia de repetición. Si selecciona Horas, Días, Semanas o Meses, también debe especificar una frecuencia. También puedes seleccionar Personalizar para especificar una frecuencia de repetición personalizada. Si seleccionas Bajo demanda, la transferencia de datos se realizará cuando la inicies manualmente.
      • Si procede, selecciona Empezar ahora o Empezar a una hora determinada y proporciona una fecha de inicio y un tiempo de ejecución.
      • En Fecha de inicio y tiempo de ejecución, introduce la fecha y la hora en las que quieres que empiece la transferencia. Este valor debe ser al menos 24 horas posterior a la hora UTC actual. Si has elegido Empezar ahora, esta opción estará inhabilitada.

      Si dejas las opciones de programación en Empezar ahora, la primera ejecución de la transferencia de datos se iniciará inmediatamente y fallará con 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 siguiente ejecución programada debería realizarse correctamente. Si los datos de su cuenta de Merchant se preparan en la misma fecha en hora UTC, puede configurar un relleno para la ejecución de hoy.

      Programa de transferencias

    • En la sección Configuración de destino, en Conjunto de datos de destino, elija el conjunto de datos que haya creado para almacenar sus datos.

      Transferir conjunto de datos

    • En la sección Detalles de la fuente de datos, en ID de comerciante, introduzca su ID de comerciante o de cuenta multicliente. Selecciona los informes que quieras transferir. Consulta más información en Informes admitidos.

      Datos de transferencia de Google Merchant Center.

    • En el menú Cuenta de servicio, selecciona una cuenta de servicio de las asociadas a tu proyectoGoogle Cloud . Puedes asociar una cuenta de servicio a tu transferencia de datos en lugar de usar tus credenciales de usuario. Para obtener más información sobre cómo usar cuentas de servicio con transferencias de datos, consulta el artículo Usar cuentas de servicio.

      • Si has iniciado sesión con una identidad federada, se necesita una cuenta de servicio para crear una transferencia de datos. Si has iniciado sesión con una cuenta de Google, no es obligatorio tener una cuenta de servicio para la transferencia.
      • La cuenta de servicio debe tener los permisos necesarios.
    • (Opcional) En la sección Opciones de notificación:

      • Haz clic en el interruptor para habilitar las notificaciones por correo electrónico. Si habilitas esta opción, el administrador de las transferencias recibirá una notificación por correo cuando falle una ejecución de transferencia.
      • En Selecciona un tema de Pub/Sub, elige el nombre del tema o haz clic en Crear un tema. Esta opción configura las notificaciones de Pub/Sub sobre la transferencia.
  4. Haz clic en Guardar.

bq

Introduce el comando bq mk y proporciona la marca de creación de transferencia — --transfer_config. También se necesitan las siguientes marcas:

  • --data_source
  • --target_dataset
  • --display_name
  • --params

También puedes usar la marca --project_id para especificar un proyecto concreto. 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

Donde:

  • project_id es el ID del proyecto.
  • dataset es el conjunto de datos de destino de la configuración de 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 necesitas modificarla más adelante.
  • parameters contiene los parámetros de la configuración de transferencia creada en formato JSON. Por ejemplo: --params='{"param":"param_value"}'.
    • En el caso de las transferencias de datos de Merchant Center, debe proporcionar el parámetro merchant_id.
    • El parámetro export_products especifica si se deben transferir los datos de productos y de problemas de productos. Este parámetro se incluye de forma predeterminada, aunque no especifique el parámetro export_products. Google recomienda que incluya este parámetro explícitamente y que le asigne el valor "true".
    • El parámetro export_regional_inventories especifica si se deben transferir los datos de inventario regional.
    • El parámetro export_local_inventories especifica si se deben transferir los datos de inventario local.
    • El parámetro export_price_competitiveness especifica si se deben transferir los datos de competitividad de precios.
    • El parámetro export_price_insights especifica si se deben transferir los datos de las estadísticas de precios.
    • El parámetro export_best_sellers_v2 especifica si se deben transferir los datos de los productos más vendidos.
    • El parámetro export_performance especifica si se deben transferir los datos de rendimiento del producto.
  • 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 la transferencia de datos. La cuenta de servicio debe ser propiedad del mismo project_id que se usó para crear la transferencia y debe tener todos los permisos necesarios.

Por ejemplo, el siguiente comando crea una transferencia de datos de Merchant Center llamada My Transfer con el ID de comerciante 1234 y el conjunto de datos de destino mydataset. La transferencia de datos 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 como el 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 acaba de crear esta transferencia de datos, es posible que tenga que esperar hasta un día para que los datos de su cuenta de Merchant se preparen y estén disponibles para la transferencia.La próxima ejecución programada debería realizarse correctamente. Si los datos de su cuenta de Merchant se preparan en la misma fecha en hora UTC, puede configurar un relleno para la ejecución de hoy.

API

Usa el método projects.locations.transferConfigs.create y proporciona una instancia del recurso TransferConfig.

Solucionar problemas de configuración de transferencias de Merchant Center

Si tienes problemas para configurar la transferencia de datos, consulta la sección Problemas con la transferencia de Merchant Center del artículo Solucionar problemas con la configuración de la transferencia de BigQuery Data Transfer Service.