Carregar dados do PayPal no BigQuery

É possível carregar dados do PayPal para o BigQuery usando o conector do PayPal com o serviço de transferência de dados do BigQuery. Com o conector do PayPal, é possível programar jobs de transferência recorrentes que adicionam seus dados mais recentes do PayPal ao BigQuery.

O conector do PayPal é compatível com contas de produção e sandbox do PayPal.

Objetos compatíveis

Tipos de objetos do PayPal Objetos compatíveis com o BigQuery Suporte a filtros por data
Transações TransactionReports Com suporte
TransactionReportsCartInfoItemDetails Com suporte
TransactionReportsIncentiveDetails Com suporte
Disputas Disputas Com suporte
DisputeDetails Com suporte
DisputeTransactions Com suporte
Pagamentos Pagamentos Com suporte
PaymentTransactions Com suporte
Saldo Saldo Sem suporte
Produtos Produtos Sem suporte
ProductDetails Sem suporte
Faturas Faturas Com suporte

Limitações

As transferências de dados do PayPal estão sujeitas às seguintes limitações:

  • Pode haver um atraso de várias horas até que as transações do PayPal fiquem disponíveis pela API do PayPal.
    • Recomendamos agendar transferências de dados subsequentes em intervalos mais longos (não mais de uma por hora) para evitar a perda de dados.
  • O conector do PayPal só aceita dados de transações dos últimos três anos.
  • O conector do PayPal só aceita dados de disputas dos últimos seis meses.
  • As APIs do PayPal usam limites de tamanho de página diferentes para cada objeto de dados. O conector do PayPal usa o tamanho máximo de página permitido pelo PayPal em uma transferência de dados.
    • No entanto, alguns objetos, como Payments ou Payment Transactions, usam limites menores de tamanho de página. Isso pode levar a transferências de dados mais lentas, especialmente ao lidar com grandes conjuntos de dados.

Antes de começar

Nas seções a seguir, descrevemos as etapas que você precisa seguir antes de criar uma transferência de dados do PayPal.

Pré-requisitos do PayPal

Para ativar as transferências de dados do PayPal, você precisa ter o seguinte:

  • Você precisa ter uma conta de desenvolvedor do PayPal. Para mais informações, consulte o Programa para desenvolvedores do PayPal.
  • Crie um app da API REST do PayPal. Para mais informações, consulte Começar a usar as APIs REST do PayPal.
    • Na seção Apps e credenciais, anote o ID do cliente e a chave secreta do app.
    • Na seção Recursos, ative as permissões da API Pesquisa de transações e Faturamento.

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). 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.update no usuário
  • bigquery.datasets.get no conjunto de dados de destino
  • bigquery.datasets.update no 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

Configurar uma transferência de dados do PayPal

Adicione dados do PayPal ao BigQuery configurando uma configuração de transferência usando uma das seguintes opções:

Console

  1. Acesse a página "Transferências de dados" no console Google Cloud .

    Acesse Transferências de dados

  2. Clique em Criar transferência.

  3. Na seção Tipo de origem, em Origem, selecione PayPal.

  4. Na seção Detalhes da fonte de dados, faça o seguinte:

    • Em ID do cliente, insira o ID do cliente do PayPal. Para mais informações, consulte Pré-requisitos do PayPal.
    • Em Chave secreta do cliente, insira a chave secreta do cliente do PayPal. Para mais informações, consulte Pré-requisitos do PayPal.
    • Selecione Is Sandbox se você estiver usando uma conta do PayPal sandbox.
    • Em Data de início, insira uma data no formato YYYY-MM-DD. A transferência de dados carrega dados do PayPal a partir dessa data.
      • Se esse campo for deixado em branco, a transferência vai recuperar dados dos últimos três anos.
      • Para saber quais objetos são compatíveis com o filtro de data de início, consulte Objetos compatíveis.
    • Em Objetos do PayPal para transferência, insira os respectivos nomes ou clique em Procurar e selecione os objetos que você quer transferir.
  5. Na seção Configurações de destino, em Conjunto de dados, selecione o conjunto que você criou para armazenar seus dados.

  6. 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.

  7. 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 forneça uma data de início e um horário de execução.
  8. 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 Notificação por e-mail. Quando você ativa 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, ative a opção Notificações do Pub/Sub. Selecione o nome do tópico ou clique em Criar um tópico.
  9. 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): o ID do projeto do Google Cloud . Se --project_id não for fornecido para especificar um projeto determinado, o projeto padrão será usado.
  • DATA_SOURCE: a fonte de dados — paypal.
  • 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 do PayPal:

    • assets: uma lista de objetos do PayPal a serem incluídos nesta transferência.
    • connector.authentication.clientId: ID do cliente do aplicativo do PayPal.
    • connector.authentication.clientSecret: chave secreta do cliente do aplicativo do PayPal.
    • connector.isSandbox: defina o valor como true se você estiver usando uma conta do PayPal sandbox ou false se estiver usando uma conta do PayPal de produção.
    • connector.createdStartDate: (opcional) insira uma data no formato YYYY-MM-DD. A transferência de dados carrega dados do PayPal a partir dessa data.

Por exemplo, o comando a seguir cria uma transferência de dados do PayPal no projeto padrão com todos os parâmetros necessários:

  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"}'

Quando você cria uma transferência de dados usando a ferramenta de linha de comando bq, a configuração programa transferências de dados uma vez a cada 8 horas.

API

Use o método projects.locations.transferConfigs.create e forneça uma instância do recurso TransferConfig.

Quando você salva a configuração de transferência, o conector do PayPal aciona automaticamente uma execução de transferência de acordo com a opção de programação. A cada execução de transferência, o conector do PayPal transfere todos os dados disponíveis do PayPal para o BigQuery.

Para executar manualmente uma transferência de dados fora da sua programação regular, inicie uma execução de preenchimento.

Mapeamento de tipo de dados

A tabela a seguir mapeia os tipos de dados do PayPal para os tipos de dados correspondentes do BigQuery.

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

Resolver problemas na configuração da transferência

Se você tiver problemas para configurar a transferência de dados, consulte Problemas de transferência do PayPal.

Preços

Não há custo para transferir dados do PayPal para o BigQuery enquanto esse recurso está em Pré-lançamento.

A seguir