Carga datos de Stripe en BigQuery
Puedes cargar datos de Stripe a BigQuery con el conector de Stripe y el Servicio de transferencia de datos de BigQuery. Si usas el conector de Stripe, puedes programar trabajos de transferencia recurrentes que agreguen tus datos más recientes de Stripe a BigQuery.
Limitaciones
Las transferencias de datos de Stripe están sujetas a las siguientes limitaciones:
- Una transferencia de datos de Stripe carga monedas según las unidades menores de Stripe. Para obtener más información, consulta Unidades menores en importes de la API.
- El conector de Stripe solo transfiere informes generados previamente para cada cuenta de Stripe. El conector de Stripe no genera informes nuevos en función de los datos nuevos de Stripe.
- Para transferir informes actualizados, genera los informes de forma manual en el panel de Stripe antes de iniciar la transferencia de datos de Stripe.
- Para obtener más información, consulta Informes de Stripe.
- El conector de Stripe no admite eventos basados en webhook, actualizaciones en tiempo real ni Stripe Sigma.
- Las transferencias de datos de Stripe desde regiones de Stripe que están en versión preliminar pueden tener problemas con las transferencias de datos:
- Las opciones de filtrado están restringidas o no están disponibles en las regiones de versión preliminar de Stripe.
- Las transferencias y las consultas de datos condicionales no se admiten en las regiones de versión preliminar de Stripe.
- Es posible que experimentes tiempos de ejecución de transferencia de datos largos cuando transfieras datos desde regiones de versión preliminar de Stripe.
- El conector de Stripe admite algunos objetos con el filtro
StartDate.- El formato requerido para el filtro
StartDateesYYYY-MM-DD. Si no se proporciona una fecha de inicio, el conector usa de forma predeterminada tres años antes de la fecha actual. Si se proporciona una fecha anterior al 1 de enero de 2011, el conector usa automáticamente el 1 de enero de 2011. - Para obtener una lista de los objetos admitidos, consulta Objetos con compatibilidad con el filtro
StartDate.
- El formato requerido para el filtro
- Una sola configuración de transferencia solo puede admitir una ejecución de transferencia de datos en un momento determinado. Si se programa una segunda transferencia de datos para que se ejecute antes de que se complete la primera, solo se completará la primera transferencia de datos, mientras que se omitirá cualquier otra transferencia de datos que se superponga con la primera.
- Para evitar transferencias omitidas dentro de una sola configuración de transferencia, te recomendamos que aumentes la duración del tiempo entre transferencias de datos grandes configurando la Frecuencia de repetición.
Antes de comenzar
En las siguientes secciones, se describen los pasos que debes seguir antes de crear una transferencia de datos de Stripe.
Requisitos previos de Stripe
- Debes tener una cuenta de desarrollador de Stripe para autorizar una transferencia de datos de Stripe. Para registrar una cuenta de Stripe, consulta Registro de Stripe.
- Configura tu aplicación de la plataforma de Stripe con los siguientes pasos:
- Navega a la sección Desarrolladores en el panel de Stripe.
- En Connect, configura tu plataforma para que admita cuentas Standard y Express.
- Se necesita la siguiente información para crear una transferencia de datos de Stripe:
- Anota el ID de tu cuenta de Stripe. Para obtener más información, consulta Crea una cuenta.
- Anota tu clave secreta o clave restringida. Para obtener más información, consulta Claves de API.
- Si planeas transferir datos de cuentas conectadas, asegúrate de que tu plataforma esté configurada para Stripe Connect y tenga acceso a las capacidades de cuenta necesarias. Para obtener más información sobre Stripe Connect, consulta Plataformas y mercados con Stripe Connect.
- Para obtener más información sobre las cuentas conectadas, consulta Tipos de cuentas de Connect.
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)
en el proyecto.
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.updateen el usuario -
bigquery.datasets.geten el conjunto de datos de destino -
bigquery.datasets.updateen el conjunto de datos de destino
También puedes obtener estos permisos con roles personalizados o otros roles predefinidos.
Requisitos previos de BigQuery
- 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 tus datos.
- Si quieres configurar las notificaciones de ejecución de transferencias para Pub/Sub, asegúrate de tener el permiso
pubsub.topics.setIamPolicyde Identity and Access Management (IAM). 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.
Tipos de cuentas de Stripe
El conector de Stripe admite cuentas de la plataforma de Stripe y cuentas conectadas de Stripe. Para obtener más información, consulta Tipos de cuentas de Connect.
Conéctate a cuentas de la plataforma
Para ejecutar una transferencia de datos de Stripe desde una sola cuenta de la plataforma, haz lo siguiente cuando configures la transferencia:
- Ingresa el ID de la cuenta de la plataforma en el campo Account Id.
- Ingresa la clave secreta o restringida de la cuenta de la plataforma en el campo Secret/API Key.
- En SyncAllConnectedAccounts, selecciona False.
Para ejecutar una transferencia de datos de Stripe para varias cuentas, por ejemplo, para una cuenta de la plataforma vinculada con cuentas conectadas, haz lo siguiente cuando configures la transferencia:
- Ingresa el ID de la cuenta de la plataforma en el campo Account Id.
- Ingresa la clave secreta o restringida de la cuenta de la plataforma en el campo Secret/API Key.
- En SyncAllConnectedAccounts, selecciona True.
Conéctate a cuentas conectadas
Las cuentas conectadas son cuentas de Stripe vinculadas a Stripe mediante Stripe Connect.
Para ejecutar una transferencia de datos de Stripe desde una cuenta conectada, haz lo siguiente cuando configures la transferencia:
- Ingresa el ID de la cuenta de la plataforma para la cuenta conectada en el campo Account Id.
- Ingresa la clave secreta o restringida de la cuenta de la plataforma a la que está conectada la cuenta conectada en el campo Secret/API Key.
- En SyncAllConnectedAccounts, selecciona False.
Configura una transferencia de datos de Stripe
Para agregar datos de Stripe a BigQuery, configura una transferencia con una de las siguientes opciones:
Console
Ve a la página Transferencia de datos en la Google Cloud consola.
Haz clic en Crear transferencia.
En la sección Tipo de fuente, para Fuente, selecciona Stripe.
En la sección Detalles de fuente de datos, haz lo siguiente:
- En ID de cuenta de la plataforma o conectada, ingresa el ID de la cuenta de Stripe. Para obtener más información, consulta Requisitos previos de Stripe.
- En Clave secreta de Stripe, ingresa la clave de API de la cuenta de Stripe. Para obtener más información, consulta Requisitos previos de Stripe.
- En Fecha de inicio, ingresa una fecha en el formato
YYYY-MM-DD. La transferencia de datos carga datos de Stripe a partir de esta fecha. - Selecciona Sincronizar todas las cuentas conectadas para sincronizar todas las cuentas conectadas.
- En Objetos de Stripe que se transferirán, ingresa los nombres de los objetos de Stripe que deseas transferir o haz clic en Explorar y selecciona los objetos que deseas transferir.
En la sección Configuración de destino, en Conjunto de datos, selecciona el conjunto de datos que creaste para almacenar tus datos.
En la sección Nombre de la configuración de transferencia, en Nombre visible, ingresa el nombre de la transferencia de datos.
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 una hora determinada, y proporciona una fecha de inicio y una hora de ejecución.
Opcional: En la sección Opciones de notificación, haz lo siguiente:
- Para habilitar las notificaciones por correo electrónico, haz clic en el botón de activación Notificación por correo electrónico. Después de habilitar esta opción, el administrador de transferencias recibe una notificación por correo electrónico cuando falla una ejecución de transferencia.
- Si quieres habilitar las notificaciones de ejecución de transferencias de Pub/Sub para esta transferencia, haz clic en el botón de activación Notificaciones de Pub/Sub. Puedes seleccionar el nombre del tema o hacer clic en Crear un tema para crear uno.
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): Es el ID de tu Google Cloud proyecto.
Si no se proporciona
--project_idpara especificar un proyecto en particular, se usa el proyecto predeterminado. - DATA_SOURCE: La fuente de datos:
stripe. - 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 Stripe:assets: Es una lista de objetos de Stripe que se incluirán en esta transferencia.connector.accountId: Es el ID de la cuenta de Stripe.connector.secretKey: Es la clave de API de la cuenta de Stripe.connector.syncAllConnectedAccounts: Especificatruepara sincronizar todas las cuentas conectadas.connector.startDate: Ingresa una fecha en el formatoYYYY-MM-DD. La transferencia de datos carga datos de Stripe a partir de esta fecha.
Por ejemplo, el siguiente comando crea una transferencia de datos de Stripe en el proyecto predeterminado con todos los parámetros requeridos:
bq mk \ --transfer_config \ --target_dataset=mydataset \ --data_source=stripe \ --display_name='My Transfer' \ --params= ' { "assets" : [ "Customers" , "Accounts", "BalanceSummaryReport"] , "connector.accountId" : "acct_000000000000", "connector.secretKey" : "sk_test_000000000", "connector.syncAllConnectedAccounts" : "true", "connector.startDate": "2025-05-20" }'
API
Usa el
projects.locations.transferConfigs.create método
y suministra una instancia del
TransferConfig recurso.
Para ejecutar una transferencia de datos de forma manual fuera de tu programación 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 Stripe a los tipos de datos de BigQuery correspondientes.
| Tipo de datos de Stripe | Tipo de datos de BigQuery | Notas |
|---|---|---|
String |
STRING |
|
Dictionary |
STRING |
Cuando se carga un objeto anidado en BigQuery, se convierte en un objeto aplanado. Luego, este objeto aplanado se guarda como una sola cadena literal dentro de la tabla. |
Integer |
INT64 |
|
Double |
DOUBLE |
|
Float |
FLOAT |
|
Decimal |
BIGNUMERIC |
|
BigInt (long) |
BIGNUMERIC |
|
Boolean |
BOOL |
|
Datetime |
TIMESTAMP |
|
Unix timestamp |
TIMESTAMP |
Objetos con compatibilidad con el filtro StartDate
Los siguientes objetos de Stripe admiten el filtro StartDate, que te permite cargar datos basados en el tiempo:
- Cuentas
- ApplicationFees
- BalanceTransactions
- Cardholders
- Cargos
- Cupones
- Clientes
- Impugnaciones
- EarlyFraudWarnings
- Eventos
- FileLinks
- Archivos
- InvoiceItems
- Facturas
- IssuingCards
- IssuingDisputes
- PaymentIntent
- Pagos
- Planes
- Precios
- Productos
- PromotionCodes
- Reembolsos
- Opiniones
- ShippingRates
- Suscripciones
- TaxRates
- TopUps
- Transferencias
- ValueListItems
- ValueLists
Soluciona problemas con la configuración de una transferencia
Si tienes problemas para configurar tu transferencia de datos, consulta Problemas de transferencia de Stripe.
Precios
No se aplican costos por transferir datos de Stripe a BigQuery mientras esta función está en vista previa.
¿Qué sigue?
- Si deseas obtener una descripción general del Servicio de transferencia de datos de BigQuery, consulta la página sobre la introducción al Servicio de transferencia de datos de BigQuery.
- Para obtener información sobre el uso de las transferencias (por ejemplo, cómo obtener información sobre una configuración de transferencia, mostrar distintas configuraciones o visualizar su historial de ejecuciones), consulta Trabaja con transferencias.
- Obtén más información sobre cómo cargar datos con operaciones entre nubes.