Carga datos de PayPal en BigQuery

Puedes cargar datos de PayPal en BigQuery con el conector de PayPal y el Servicio de transferencia de datos de BigQuery. Con el conector de PayPal, puedes programar trabajos de transferencia recurrentes que agreguen tus datos más recientes de PayPal a BigQuery.

El conector de PayPal admite cuentas de PayPal de producción y de zona de pruebas.

Objetos admitidos

Tipos de objetos de PayPal Objetos compatibles con BigQuery Compatibilidad con el filtro por fechas
Transacciones TransactionReports Admitido
TransactionReportsCartInfoItemDetails Admitido
TransactionReportsIncentiveDetails Admitido
Impugnaciones Impugnaciones Admitido
DisputeDetails Admitido
DisputeTransactions Admitido
Pagos Pagos Admitido
PaymentTransactions Admitido
Saldo Saldo No compatible
Productos Productos No compatible
ProductDetails No compatible
Facturas Facturas Admitido

Limitaciones

Las transferencias de datos de PayPal están sujetas a las siguientes limitaciones:

  • Puede haber una demora de varias horas antes de que las transacciones de PayPal estén disponibles a través de la API de PayPal.
    • Te recomendamos que programes las transferencias de datos posteriores con intervalos más largos (no más de una por hora) para evitar la pérdida de datos.
  • El conector de PayPal solo admite datos de transacciones de los últimos 3 años.
  • El conector de PayPal solo admite datos de disputas de los últimos 6 meses.
  • Las APIs de PayPal usan diferentes límites de tamaño de página para cada objeto de datos. El conector de PayPal usa el tamaño de página máximo que permite PayPal en una transferencia de datos.
    • Sin embargo, algunos objetos, como Payments o Payment Transactions, usan límites de tamaño de página más pequeños. Esto puede generar transferencias de datos más lentas, especialmente cuando se trabaja con conjuntos de datos grandes.

Antes de comenzar

En las siguientes secciones, se describen los pasos que debes seguir antes de crear una transferencia de datos de PayPal.

Requisitos previos de PayPal

Para habilitar las transferencias de datos desde PayPal, debes tener lo siguiente:

  • Debes tener una cuenta de desarrollador de PayPal. Para obtener más información, consulta el Programa para desarrolladores de PayPal.
  • Crea una app de la API de REST de PayPal. Para obtener más información, consulta Cómo comenzar a usar las APIs de REST de PayPal.
    • En la sección Apps & Credentials, anota el ID de cliente y la clave secreta de la app.
    • En la sección Funciones, habilita los permisos de la API de Búsqueda de transacciones y Facturación.

Roles de BigQuery requeridos

Para obtener los permisos que necesitas para crear una transferencia, pídele a tu administrador que te otorgue el rol de IAM de administrador de BigQuery (roles/bigquery.admin). Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene los permisos necesarios para crear una transferencia. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para crear una transferencia:

  • bigquery.transfers.update en el usuario
  • bigquery.datasets.get en el conjunto de datos de destino
  • bigquery.datasets.update en el conjunto de datos de destino

También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

Requisitos previos de BigQuery

Configura una transferencia de datos de PayPal

Agrega datos de PayPal a BigQuery configurando una transferencia con una de las siguientes opciones:

Console

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

    Ir a Transferencias de datos

  2. Haz clic en Crear transferencia.

  3. En la sección Tipo de fuente, en Fuente, selecciona PayPal.

  4. En la sección Detalles de la fuente de datos, haz lo siguiente:

    • En ID de cliente, ingresa el ID de cliente de PayPal. Para obtener más información, consulta Requisitos previos de PayPal.
    • En Secreto del cliente, ingresa la clave secreta del cliente de PayPal. Para obtener más información, consulta Requisitos previos de PayPal.
    • Selecciona Is Sandbox si usas una cuenta de PayPal de zona de pruebas.
    • En Fecha de inicio, ingresa una fecha en el formato YYYY-MM-DD. La transferencia de datos carga los datos de PayPal a partir de esta fecha.
      • Si este campo se deja en blanco, la transferencia recuperará de forma predeterminada los datos de los últimos 3 años.
      • Para obtener información sobre qué objetos admiten el filtro de fecha de inicio, consulta Objetos admitidos.
    • En Objetos de PayPal que se transferirán, ingresa los nombres de los objetos de PayPal que deseas transferir o haz clic en Explorar y selecciona los objetos que deseas transferir.
  5. En la sección Configuración de destino, en Conjunto de datos, selecciona el conjunto de datos que creaste para almacenar tus datos.

  6. En la sección Nombre de la configuración de transferencia, en Nombre visible, ingresa el nombre de la transferencia de datos.

  7. En la sección Opciones de programación, haz lo siguiente:

    • En la lista Frecuencia de repetición, selecciona una opción para especificar la frecuencia con la que se ejecuta esta transferencia de datos. Para especificar una frecuencia de repetición personalizada, selecciona 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 la hora definida y proporciona una fecha de inicio y una hora de ejecución.
  8. Opcional: En la sección Opciones de notificación, haz lo siguiente:

    • Para habilitar las notificaciones por correo electrónico, activa Notificación por correo electrónico. Si habilitas esta opción, el administrador de transferencias recibirá una notificación por correo electrónico cuando falle la ejecución de una transferencia.
    • Si quieres habilitar las notificaciones de ejecución de transferencias de Pub/Sub para esta transferencia, activa Notificaciones de Pub/Sub. Puedes seleccionar el nombre del tema o hacer clic en Crear un tema para crear uno.
  9. Haz clic en Guardar.

bq

Ingresa el comando bq mk y suministra la marca de creación de transferencias --transfer_config.

bq mk
    --transfer_config
    --project_id=PROJECT_ID
    --data_source=DATA_SOURCE
    --display_name=DISPLAY_NAME
    --target_dataset=DATASET
    --params='PARAMETERS'

Aquí:

  • PROJECT_ID (opcional): Tu ID del proyecto de Google Cloud . Si no se proporciona --project_id para especificar un proyecto en particular, se usa el proyecto predeterminado.
  • DATA_SOURCE: La fuente de datos: paypal.
  • DISPLAY_NAME: el nombre visible de la configuración de transferencia de datos. El nombre de la transferencia puede ser cualquier valor que te permita identificarla con facilidad si es necesario hacerle modificaciones más tarde.
  • DATASET es el conjunto de datos de destino para la configuración de transferencia.
  • PARAMETERS son los parámetros de la configuración de transferencia creada en formato JSON. Por ejemplo: --params='{"param":"param_value"}' Los siguientes son los parámetros para una transferencia de datos de PayPal:

    • assets: Es una lista de objetos de PayPal que se incluirán en esta transferencia.
    • connector.authentication.clientId: ID de cliente de la aplicación de PayPal.
    • connector.authentication.clientSecret: Es el secreto del cliente de la aplicación de PayPal.
    • connector.isSandbox: Establece el valor en true si usas una cuenta de PayPal de zona de pruebas o en false si usas una cuenta de PayPal de producción.
    • connector.createdStartDate: (Opcional) Ingresa una fecha en el formato YYYY-MM-DD. La transferencia de datos carga los datos de PayPal a partir de esta fecha.

Por ejemplo, el siguiente comando crea una transferencia de datos de PayPal en el proyecto predeterminado con todos los parámetros obligatorios:

  bq mk \
      --transfer_config \
      --target_dataset=mydataset \
      --data_source=PayPal \
      --display_name='My Transfer' \
      --params='{"assets":  ["Payments", "TransactionReports"],
          "connector.authentication.clientId": "112233445566",
          "connector.authentication.clientSecret":"123456789",
          "connector.isSandbox":"false",
          "connector.createdStartDate":  "2025-01-01"}'

Cuando creas una transferencia de datos con la herramienta de línea de comandos de bq, la configuración de transferencia programa las transferencias de datos una vez cada 8 horas.

API

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

Cuando guardas la configuración de transferencia, el conector de PayPal activa automáticamente una ejecución de transferencia según la opción de programación que elijas. Con cada ejecución de transferencia, el conector de PayPal transfiere todos los datos disponibles de PayPal a BigQuery.

Para ejecutar manualmente una transferencia de datos fuera de tu programa habitual, puedes iniciar una ejecución de reabastecimiento.

Asignación de tipos de datos

En la siguiente tabla, se asignan los tipos de datos de PayPal a los tipos de datos de BigQuery correspondientes.

Tipo de datos de PayPal Tipo de datos de BigQuery
String STRING
Decimal BIGNUMERIC
Boolean BOOL
Datetime TIMESTAMP

Soluciona problemas con la configuración de una transferencia

Si tienes problemas para configurar tu transferencia de datos, consulta Problemas de transferencia de PayPal.

Precios

No se aplican costos por transferir datos de PayPal a BigQuery mientras esta función está en vista previa.

¿Qué sigue?