Carga datos de Stripe en BigQuery
Puedes cargar datos de Stripe en BigQuery con el conector de Stripe y el Servicio de transferencia de datos de BigQuery. Con 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 las monedas según las unidades secundarias de Stripe. Para obtener más información, consulta Unidades secundarias en los 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 basados en datos nuevos de Stripe.
- Para transferir informes actualizados, genera los informes manualmente 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 webhooks, actualizaciones en tiempo real ni Stripe Sigma.
- Es posible que las transferencias de datos de Stripe desde regiones de Stripe en versión preliminar tengan problemas:
- Las opciones de filtrado están restringidas o no están disponibles en las regiones de vista previa de Stripe.
- Las transferencias y consultas de datos condicionales no se admiten en las regiones de vista previa de Stripe.
- Es posible que experimentes tiempos de ejecución prolongados de la transferencia de datos cuando transfieras datos desde las regiones de vista previa de Stripe.
- El conector de Stripe admite algunos objetos con el filtro
StartDate
.- El formato requerido para el filtro
StartDate
esYYYY-MM-DD
. Si no se proporciona una fecha de inicio, el conector establece 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 usará automáticamente el 1 de enero de 2011. - Para obtener una lista de los objetos compatibles, consulta Objetos que admiten 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án las demás transferencias de datos que se superpongan con la primera.
- Para evitar que se omitan transferencias dentro de una misma configuración de transferencia, te recomendamos que aumentes la duración del tiempo entre las 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 en Stripe.
- Para configurar tu aplicación de la plataforma de Stripe, sigue estos pasos:
- Navega a la sección Developers del panel de Stripe.
- En Conectar, configura tu plataforma para que admita cuentas estándar 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 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 conexió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
)
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.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
- 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.setIamPolicy
de 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 tanto las cuentas de la plataforma de Stripe como las cuentas conectadas de Stripe. Para obtener más información, consulta Tipos de cuentas de Connect.
Conéctate a cuentas de plataformas
Para ejecutar una transferencia de datos de Stripe desde solo una cuenta de plataforma, haz lo siguiente cuando configures la transferencia:
- Ingresa el ID de la cuenta de la plataforma en el campo ID de cuenta.
- Ingresa la clave secreta o restringida de la cuenta de la plataforma en el campo Clave secreta/de API.
- En SyncAllConnectedAccounts, selecciona False.
Para ejecutar una transferencia de datos de Stripe para varias cuentas, por ejemplo, para una cuenta de plataforma vinculada con cuentas conectadas, haz lo siguiente cuando configures la transferencia:
- Ingresa el ID de la cuenta de la plataforma en el campo ID de cuenta.
- Ingresa la clave secreta o restringida de la cuenta de la plataforma en el campo Clave secreta/de API.
- En SyncAllConnectedAccounts, selecciona True.
Conéctate a las cuentas conectadas
Las cuentas conectadas son cuentas de Stripe vinculadas a Stripe a través de 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 ID de cuenta.
- En el campo Clave secreta o restringida/clave de API, ingresa la clave secreta o restringida de la cuenta de la plataforma a la que está conectada la cuenta conectada.
- En SyncAllConnectedAccounts, selecciona False.
Configura una transferencia de datos de Stripe
Configura una transferencia para agregar datos de Stripe a BigQuery 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, en Fuente, selecciona Stripe.
En la sección Detalles de la fuente de datos, haz lo siguiente:
- En ID de la plataforma o de la cuenta conectada, ingresa el ID de la cuenta de Stripe. Para obtener más información, consulta los requisitos previos de Stripe.
- En Stripe Secret Key, ingresa la clave de API de la cuenta de Stripe. Para obtener más información, consulta los requisitos previos de Stripe.
- En Fecha de inicio, ingresa una fecha en el formato
YYYY-MM-DD
. La transferencia de datos carga los datos de Stripe a partir de esta fecha. - Selecciona Sincronizar todas las cuentas asociadas para sincronizar todas las cuentas asociadas.
- 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 la hora definida 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 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, 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): 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:
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
: Especificatrue
para sincronizar todas las cuentas conectadas.connector.startDate
: Ingresa una fecha en el formatoYYYY-MM-DD
. La transferencia de datos carga los 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 obligatorios:
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 método projects.locations.transferConfigs.create
y proporciona una instancia del recurso TransferConfig
.
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 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
- Titulares de tarjetas
- 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.