Carregar dados da Stripe no BigQuery
É possível carregar dados da Stripe no BigQuery usando o conector da Stripe com o serviço de transferência de dados do BigQuery. Ao usar o conector da Stripe, você pode programar jobs de transferência recorrentes que adicionam seus dados mais recentes da Stripe ao BigQuery.
Limitações
As transferências de dados da Stripe estão sujeitas às seguintes limitações:
- Uma transferência de dados da Stripe carrega moedas de acordo com as unidades menores da Stripe. Para mais informações, consulte Unidades menores em valores da API.
- O conector da Stripe só transfere relatórios pré-gerados para cada conta da Stripe. O conector da Stripe não gera novos relatórios com base em novos dados da Stripe.
- Para transferir relatórios atualizados, gere os relatórios manualmente no painel da Stripe antes de iniciar a transferência de dados da Stripe.
- Para mais informações, consulte Relatórios da Stripe.
- O conector da Stripe não oferece suporte a eventos baseados em webhook, atualizações em tempo real ou Stripe Sigma.
- As transferências de dados da Stripe de regiões da Stripe que estão em pré-lançamento podem encontrar problemas com transferências de dados:
- As opções de filtragem são restritas ou indisponíveis nas regiões de pré-lançamento da Stripe.
- As transferências e consultas de dados condicionais não são aceitas nas regiões de pré-lançamento da Stripe.
- Você pode encontrar tempos de execução de transferência de dados longos ao transferir dados de regiões de pré-lançamento da Stripe.
- O conector da Stripe oferece suporte a alguns objetos com o filtro
StartDate.- O formato necessário para o filtro
StartDateéYYYY-MM-DD. Se nenhuma data de início for fornecida, o conector vai usar três anos antes da data atual. Se uma data anterior a 1º de janeiro de 2011 for fornecida, o conector vai usar automaticamente 1º de janeiro de 2011. - Para uma lista de objetos com suporte, consulte Objetos com suporte ao filtro
StartDate.
- O formato necessário para o filtro
- Uma única configuração de transferência só pode oferecer suporte a uma execução de transferência de dados por vez. Se uma segunda transferência de dados for programada para ser executada antes da conclusão da primeira, apenas a primeira transferência de dados será concluída, enquanto todas as outras transferências de dados que se sobrepõem à primeira serão ignoradas.
- Para evitar transferências ignoradas em uma única configuração de transferência, recomendamos que você aumente a duração do tempo entre grandes transferências de dados configurando a Frequência de repetição.
Antes de começar
As seções a seguir descrevem as etapas que você precisa seguir antes de criar uma transferência de dados da Stripe.
Pré-requisitos da Stripe
- Você precisa ter uma conta de desenvolvedor da Stripe para autorizar uma transferência de dados da Stripe. Para registrar uma conta da Stripe, consulte Registro da Stripe.
- Configure o aplicativo da plataforma Stripe seguindo estas etapas:
- Navegue até a seção Desenvolvedores no painel da Stripe.
- Em Connect, configure sua plataforma para oferecer suporte a contas Standard e Express.
- As seguintes informações são necessárias para criar uma transferência de dados da Stripe:
- Anote o ID da sua conta da Stripe. Para mais informações, consulte Criar uma conta.
- Anote sua chave secreta ou chave restrita. Para mais informações, consulte Chaves de API.
- Se você planeja transferir dados de contas conectadas, verifique se sua plataforma está configurada para o Stripe Connect e tem acesso aos recursos de conta necessários. Para mais informações sobre o Stripe Connect, consulte Plataformas e marketplaces com o Stripe Connect.
- Para mais informações sobre contas conectadas, consulte Tipos de contas do Connect.
Papéis obrigatórios do BigQuery
Para receber as permissões necessárias para criar uma transferência, peça ao administrador para conceder a você o papel do IAM Administrador do BigQuery (roles/bigquery.admin) no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém as permissões necessárias para criar uma transferência. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar uma transferência:
-
bigquery.transfers.updateno usuário -
bigquery.datasets.getno conjunto de dados de destino -
bigquery.datasets.updateno conjunto de dados de destino
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Pré-requisitos do BigQuery
- Verifique se você realizou todas as ações necessárias para ativar o serviço de transferência de dados do BigQuery.
- Crie um conjunto de dados do BigQuery para armazenar os dados.
- Se quiser configurar notificações de execução de transferência do Pub/Sub,
verifique se você tem a permissão
pubsub.topics.setIamPolicydo Identity and Access Management (IAM). As permissões do Pub/Sub não serão necessárias caso você configure notificações por e-mail. Para mais informações, consulte Notificações de execução do serviço de transferência de dados do BigQuery.
Tipos de contas da Stripe
O conector da Stripe oferece suporte a contas de plataforma e contas conectadas da Stripe. Para mais informações, consulte Tipos de contas do Connect.
Conectar-se a contas de plataforma
Para executar uma transferência de dados da Stripe de apenas uma conta de plataforma, faça o seguinte ao configurar a transferência:
- Insira o ID da conta de plataforma no campo ID da conta.
- Insira a chave secreta ou restrita da conta de plataforma no campo Chave secreta/de API.
- Em SyncAllConnectedAccounts, selecione False.
Para executar uma transferência de dados da Stripe para várias contas, por exemplo, para uma conta de plataforma vinculada a contas conectadas, faça o seguinte ao configurar a transferência:
- Insira o ID da conta de plataforma no campo ID da conta.
- Insira a chave secreta ou restrita da conta de plataforma no campo Chave secreta/de API.
- Em SyncAllConnectedAccounts, selecione True.
Conectar-se a contas conectadas
As contas conectadas são contas da Stripe vinculadas à Stripe usando o Stripe Connect.
Para executar uma transferência de dados da Stripe de uma conta conectada, faça o seguinte ao configurar a transferência:
- Insira o ID da conta de plataforma da conta conectada no campo ID da conta.
- Insira a chave secreta ou restrita da conta de plataforma à qual a conta conectada está conectada no campo Chave secreta/de API.
- Em SyncAllConnectedAccounts, selecione False.
Configurar uma transferência de dados da Stripe
Adicione dados da Stripe ao BigQuery configurando uma transferência usando uma das seguintes opções:
Console
Acesse a página "Transferências de dados" no Google Cloud console.
Clique em Criar transferência.
Na seção Tipo de origem, em Origem, selecione Stripe.
Na seção Detalhes da fonte de dados, faça o seguinte:
- Em ID da conta conectada/da plataforma, insira o ID da conta da Stripe. Para mais informações, consulte Pré-requisitos da Stripe.
- Em Chave secreta da Stripe, insira a chave de API da conta da Stripe. Para mais informações, consulte Pré-requisitos da Stripe.
- Em Data de início, insira uma data no formato
YYYY-MM-DD. A transferência de dados carrega os dados da Stripe a partir dessa data. - Selecione Sincronizar todas as contas conectadas para sincronizar todas as contas conectadas.
- Em Objetos da Stripe para transferência, insira os nomes dos objetos da Stripe para transferência ou clique em Procurar e selecione os objetos que você quer transferir.
Na seção Configurações de destino, em Conjunto de dados, selecione o conjunto de dados que você criou para armazenar seus dados.
No campo Nome de exibição na seção Nome de configuração da transferência, insira um nome para a transferência de dados.
Na seção Opções de programação, realize estas ações:
- Na lista Frequência de repetição, selecione uma opção para especificar com que frequência essa transferência de dados é executada. Para especificar uma frequência de repetição personalizada, selecione Personalizada. Se você selecionar Sob demanda, essa transferência vai ser executada quando você acionar manualmente a transferência.
- Se aplicável, selecione Começar agora ou Começar no horário definido e escolha uma data de início e hora de execução.
Opcional: na seção Opções de notificação, faça o seguinte:
- Para ativar as notificações por e-mail, clique no botão que ativa as Notificações por e-mail. Depois de ativar essa opção, o administrador de transferência recebe uma notificação por e-mail quando uma execução de transferência falha.
- Para ativar as notificações de execução de transferência do Pub/Sub para essa transferência, clique no botão de alternância Notificações do Pub/Sub. Selecione o nome do tópico ou clique em Criar um tópico.
Clique em Salvar.
bq
Insira o comando bq mk e forneça a sinalização de execução da transferência
--transfer_config:
bq mk --transfer_config --project_id=PROJECT_ID --data_source=DATA_SOURCE --display_name=DISPLAY_NAME --target_dataset=DATASET --params='PARAMETERS'
Em que:
- PROJECT_ID (opcional): ID do seu Google Cloud projeto.
Se
--project_idnão for fornecido para especificar um projeto determinado, o projeto padrão será usado; - DATA_SOURCE: a fonte de dados —
stripe. - DISPLAY_NAME: o nome de exibição da configuração da transferência de dados. O nome da transferência pode ser qualquer valor que permita identificá-la, caso você precise modificá-la mais tarde.
- DATASET: o conjunto de dados de destino na configuração da transferência.
PARAMETERS é o parâmetro da configuração de transferência criada no formato JSON. Por exemplo:
--params='{"param":"param_value"}'. Confira a seguir os parâmetros de uma transferência de dados da Stripe:assets: uma lista de objetos da Stripe a serem incluídos nessa transferência.connector.accountId: o ID da conta da Stripe.connector.secretKey: a chave de API da conta da Stripe.connector.syncAllConnectedAccounts: especifiquetruepara sincronizar todas as contas conectadas.connector.startDate: insira uma data no formatoYYYY-MM-DD. A transferência de dados carrega os dados da Stripe a partir dessa data.
Por exemplo, o comando a seguir cria uma transferência de dados da Stripe no projeto padrão com todos os parâmetros necessários:
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
Use o
projects.locations.transferConfigs.create método
e forneça uma instância do
TransferConfig recurso.
Para executar manualmente uma transferência de dados fora da programação normal, você pode iniciar uma execução de preenchimento.
Mapeamento de tipo de dados
A tabela a seguir mapeia os tipos de dados da Stripe para os tipos de dados correspondentes do BigQuery.
| Tipo de dados da Stripe | Tipo de dados do BigQuery | Observações |
|---|---|---|
String |
STRING |
|
Dictionary |
STRING |
Quando um objeto aninhado é carregado no BigQuery, ele é convertido em um objeto nivelado. Esse objeto nivelado é salvo como uma única string literal na tabela. |
Integer |
INT64 |
|
Double |
DOUBLE |
|
Float |
FLOAT |
|
Decimal |
BIGNUMERIC |
|
BigInt (long) |
BIGNUMERIC |
|
Boolean |
BOOL |
|
Datetime |
TIMESTAMP |
|
Unix timestamp |
TIMESTAMP |
Objetos com suporte ao filtro StartDate
Os seguintes objetos da Stripe oferecem suporte ao filtro StartDate, que permite carregar dados com base no tempo:
- Contas
- ApplicationFees
- BalanceTransactions
- Cardholders
- Charges
- Cupons
- Clientes
- Disputas
- EarlyFraudWarnings
- Eventos
- FileLinks
- Arquivos
- InvoiceItems
- Faturas
- IssuingCards
- IssuingDisputes
- PaymentIntent
- Pagamentos
- Planos
- Preços
- Produtos
- PromotionCodes
- Reembolsos
- Avaliações
- ShippingRates
- Assinaturas
- TaxRates
- TopUps
- Transferências
- ValueListItems
- ValueLists
Resolver problemas na configuração da transferência
Se você tiver problemas para configurar a transferência de dados, consulte Problemas de transferência da Stripe.
Preços
Não há custo para transferir dados da Stripe para o BigQuery enquanto esse recurso está em Pré-lançamento.
A seguir
- Para uma visão geral do serviço de transferência de dados do BigQuery, consulte Introdução ao serviço de transferência de dados do BigQuery.
- Para informações sobre o uso de transferências, incluindo ver detalhes sobre a configuração, listar configurações e visualizar o histórico de execução, consulte Como trabalhar com transferências.
- Saiba como carregar dados com operações entre nuvens.