Cargar datos de PayPal en BigQuery

Puede cargar datos de PayPal en BigQuery mediante el conector de PayPal con BigQuery Data Transfer Service. Con el conector de PayPal, puedes programar tareas de transferencia periódicas que añadan tus datos más recientes de PayPal a BigQuery.

El conector de PayPal admite cuentas de PayPal de producción y de sandbox.

Objetos admitidos

Tipos de objetos de PayPal Objetos compatibles con BigQuery Compatibilidad con filtros de fecha
Transacciones TransactionReports Compatible
TransactionReportsCartInfoItemDetails Compatible
TransactionReportsIncentiveDetails Compatible
Disputas Disputas Compatible
DisputeDetails Compatible
DisputeTransactions Compatible
Pagos Pagos Compatible
PaymentTransactions Compatible
Saldo Saldo No compatible
Productos Productos No compatible
ProductDetails No compatible
Facturas Facturas Compatible

Limitaciones

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

  • Puede haber un retraso de varias horas antes de que las transacciones de PayPal estén disponibles a través de la API de PayPal.
    • Recomendamos programar las transferencias de datos posteriores a intervalos más largos (no más de una cada hora) para evitar que falten 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 seis meses.
  • Las APIs de PayPal usan límites de tamaño de página diferentes para cada objeto de datos. El conector de PayPal usa el tamaño de página máximo permitido por PayPal en una transferencia de datos.
    • Sin embargo, algunos objetos, como Payments o Payment Transactions, tienen límites de tamaño de página más pequeños. Esto puede provocar que las transferencias de datos sean más lentas, sobre todo cuando se trata de conjuntos de datos de gran tamaño.

Antes de empezar

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

Requisitos de PayPal

Para habilitar las transferencias de datos desde PayPal, debe 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 aplicación de la API REST de PayPal. Para obtener más información, consulta el artículo Empezar a usar las APIs REST de PayPal.
    • En la sección Aplicaciones y credenciales, anota el ID de cliente y la clave secreta de la aplicación.
    • En la sección Funciones, habilite los permisos de API Búsqueda de transacciones y Facturación.

Roles de BigQuery necesarios

Para obtener los permisos que necesitas para crear una transferencia, pide a tu administrador que te asigne el rol de gestión de identidades y accesos Administrador de BigQuery (roles/bigquery.admin). Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene los permisos necesarios para crear una transferencia. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

Permisos obligatorios

Para crear una transferencia, se necesitan los siguientes permisos:

  • 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 u otros roles predefinidos.

Requisitos previos de BigQuery

Configurar una transferencia de datos de PayPal

Añada datos de PayPal a BigQuery configurando una transferencia con una de las siguientes opciones:

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 sección Tipo de fuente, en Fuente, selecciona PayPal.

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

    • En Client Id (ID de cliente), introduce el ID de cliente de PayPal. Para obtener más información, consulta los requisitos de PayPal.
    • En Client Secret (Secreto de cliente), introduce la clave secreta de cliente de PayPal. Para obtener más información, consulta los requisitos de PayPal.
    • Seleccione Is Sandbox si utiliza una cuenta de PayPal de entorno aislado.
    • En Fecha de inicio, introduce una fecha con el formato YYYY-MM-DD. La transferencia de datos carga los datos de PayPal a partir de esta fecha.
      • Si se deja en blanco, la transferencia se realizará de forma predeterminada con los datos de los últimos tres años.
      • Para obtener información sobre los objetos que admiten el filtro de fecha de inicio, consulta Objetos admitidos.
    • En Objetos de PayPal que se van a transferir, introduzca los nombres de los objetos de PayPal que quiera transferir o haga clic en Buscar y seleccione los objetos que quiera transferir.
  5. En la sección Configuración de destino, en Conjunto de datos, seleccione el conjunto de datos que ha creado para almacenar sus datos.

  6. En la sección Nombre de la configuración de transferencia, en Nombre visible, introduce un nombre para la transferencia de datos.

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

    • En la lista Frecuencia de repetición, selecciona una opción para especificar con qué frecuencia se ejecuta esta transferencia de datos. Para especificar una frecuencia de repetición personalizada, selecciona Personalizar. Si selecciona Bajo demanda, la transferencia se realizará cuando la active manualmente.
    • Si procede, selecciona Empezar ahora o Empezar a una hora determinada y proporciona una fecha de inicio y un tiempo de ejecución.
  8. Opcional: En la sección Opciones de notificación, haz lo siguiente:

    • Para habilitar las notificaciones por correo, activa el interruptor Notificación por correo. Si habilitas esta opción, el administrador de la transferencia recibirá una notificación por correo cuando falle una ejecución de transferencia.
    • Para habilitar las notificaciones de Pub/Sub sobre la 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

Introduce el comando bq mk y proporciona la marca de creación de transferencia --transfer_config:

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

Donde:

  • PROJECT_ID (opcional): el ID de tu proyecto Google Cloud . Si no se proporciona --project_id para especificar un proyecto concreto, se usará 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 si necesitas modificarla más adelante.
  • DATASET: el conjunto de datos de destino de la configuración de la transferencia.
  • PARAMETERS: los parámetros de la configuración de transferencia creada en formato JSON. Por ejemplo: --params='{"param":"param_value"}'. Estos son los parámetros de una transferencia de datos de PayPal:

    • assets: 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: secreto de cliente de la aplicación de PayPal.
    • connector.isSandbox: asigna el valor true si usas una cuenta de PayPal de pruebas o false si usas una cuenta de PayPal de producción.
    • connector.createdStartDate: (Opcional) introduce una fecha con 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 bq, la configuración de la 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 la transferencia, el conector de PayPal activa automáticamente una transferencia según la opción de programación que hayas elegido. En 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 programación habitual, puedes iniciar una ejecución de rellenado.

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

Solucionar problemas de configuración de transferencias

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

Precios

La transferencia de datos de PayPal a BigQuery no tiene ningún coste mientras esta función esté en vista previa.

Siguientes pasos