将 PayPal 数据加载到 BigQuery 中

您可以使用 BigQuery Data Transfer Service 的 PayPal 连接器将数据从 PayPal 加载到 BigQuery。借助 PayPal 连接器,您可以安排周期性转移作业,以将 PayPal 中的最新数据添加到 BigQuery。

PayPal 连接器支持生产和沙盒 PayPal 账号。

支持的对象

PayPal 对象类型 BigQuery 支持的对象 日期过滤条件支持
交易 TransactionReports 支持
TransactionReportsCartInfoItemDetails 支持
TransactionReportsIncentiveDetails 支持
争议 争议 支持
DisputeDetails 支持
DisputeTransactions 支持
付款 付款 支持
PaymentTransactions 支持
余额 余额 不支持
产品 产品 不支持
ProductDetails 不支持
账单 账单 支持

限制

PayPal 数据转移作业受到以下限制:

  • PayPal 交易可能需要延迟几个小时才能通过 PayPal API 提供。
    • 我们建议您以更长的时间间隔(不超过每小时一次)安排后续数据转移,以防数据丢失。
  • PayPal 连接器仅支持过去 3 年的交易数据
  • PayPal 连接器仅支持过去 6 个月内的争议数据
  • PayPal API 针对每个数据对象使用不同的页面大小限制。PayPal 连接器在数据传输中使用 PayPal 允许的最大网页大小。
    • 不过,某些对象(例如 PaymentsPayment Transactions)使用的页面大小限制较小。这可能会导致数据传输速度变慢,尤其是在处理大型数据集时。

准备工作

以下部分介绍了在创建 PayPal 数据转移作业之前需要执行的步骤。

PayPal 前提条件

如需启用 PayPal 数据转移,您必须满足以下条件:

  • 您必须拥有 PayPal 开发者账号。如需了解详情,请参阅 PayPal 开发者计划
  • 创建 PayPal REST API 应用。如需了解详情,请参阅 PayPal REST API 使用入门
    • 应用和凭据部分中,记下应用的客户端 ID 和密钥。
    • 功能部分,启用交易搜索账单 API 权限。

所需 BigQuery 角色

如需获得创建转移作业所需的权限,请让您的管理员为您授予 BigQuery Admin (roles/bigquery.admin) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

此预定义角色可提供创建转移作业所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

创建转移作业需要以下权限:

  • 针对用户的 bigquery.transfers.update 权限
  • 针对目标数据集的 bigquery.datasets.get 权限
  • 针对目标数据集的 bigquery.datasets.update 权限

您也可以使用自定义角色或其他预定义角色来获取这些权限。

BigQuery 前提条件

设置 PayPal 数据转移作业

通过使用以下选项之一设置转移配置,将 PayPal 数据添加到 BigQuery 中:

控制台

  1. 前往 Google Cloud 控制台中的“数据转移”页面。

    转到“数据传输”

  2. 点击 创建转移作业

  3. 来源类型部分的来源中,选择 PayPal

  4. 数据源详细信息部分,执行以下操作:

    • 客户端 ID 部分,输入 PayPal 客户端 ID。如需了解详情,请参阅 PayPal 前提条件
    • 客户端密钥部分,输入 PayPal 客户端密钥。如需了解详情,请参阅 PayPal 前提条件
    • 如果您使用的是沙盒 PayPal 账号,请选择 Is Sandbox
    • 对于开始日期,请输入格式为 YYYY-MM-DD 的日期。数据转移会加载自此日期起的 PayPal 数据。
      • 如果此字段留空,则默认情况下,此转移会检索过去 3 年的数据。
      • 如需了解哪些对象支持开始日期过滤条件,请参阅支持的对象
    • PayPal objects to transfer(要转移的 PayPal 对象)部分,输入要转移的 PayPal 对象的名称,或点击浏览并选择要转移的对象。
  5. 目标设置部分的数据集中,选择您创建用来存储数据的数据集。

  6. 转移配置名称部分的显示名称中,输入数据转移作业的名称。

  7. 时间表选项部分,执行以下操作:

    • 重复频率列表中,选择一个选项来指定此数据转移作业的运行频率。如需指定自定义重复频率,请选择自定义。如果您选择按需,则当您手动触发转移作业时,此转移作业会运行。
    • 如果适用,请选择立即开始从设置的时间开始,并提供开始日期和运行时间。
  8. 可选:在通知选项部分,执行以下操作:

    • 如需启用电子邮件通知,请将电子邮件通知切换开关切换到开启位置。启用此选项后,转移作业管理员会在转移作业运行失败时收到电子邮件通知。
    • 如需为此转移作业启用 Pub/Sub 转移作业运行通知,请将 Pub/Sub 通知切换开关切换到开启位置。您可以选择主题名称,也可以点击创建主题来创建一个主题。
  9. 点击保存

bq

输入 bq mk 命令并提供转移作业创建标志 --transfer_config

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

其中:

  • PROJECT_ID(可选):您的 Google Cloud 项目 ID。如果未提供 --project_id 来指定具体项目,则系统会使用默认项目。
  • DATA_SOURCE:数据源,paypal
  • DISPLAY_NAME:数据转移作业配置的显示名称。转移作业名称可以是任何可让您在需要修改转移作业时识别该转移作业的名称。
  • DATASET:转移作业配置的目标数据集。
  • PARAMETERS:所创建转移作业配置的参数(采用 JSON 格式)。例如 --params='{"param":"param_value"}'。以下是 PayPal 数据转移作业的参数:

    • assets:要包含在此转移中的 PayPal 对象列表。
    • connector.authentication.clientId:PayPal 应用的客户端 ID。
    • connector.authentication.clientSecret:PayPal 应用的客户端密钥。
    • connector.isSandbox:如果您使用的是沙盒 PayPal 账号,请将值设置为 true;如果您使用的是正式版 PayPal 账号,请将值设置为 false
    • connector.createdStartDate:(可选)输入日期,格式为 YYYY-MM-DD。数据转移会加载自此日期起的 PayPal 数据。

例如,以下命令会使用所有必需参数在默认项目中创建 PayPal 数据转移作业:

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

使用 bq 命令行工具创建数据转移作业时,转移作业配置会安排每 8 小时转移一次数据。

API

使用 projects.locations.transferConfigs.create 方法并提供 TransferConfig 资源实例。

保存转移配置后,PayPal 连接器会根据您的安排选项自动触发转移运行。在每次转移运行时,PayPal 连接器都会将 PayPal 中的所有可用数据转移到 BigQuery。

如需在常规安排之外手动运行数据转移,您可以启动回填运行

数据类型映射

下表将 PayPal 数据类型映射到相应的 BigQuery 数据类型。

PayPal 数据类型 BigQuery 数据类型
String STRING
Decimal BIGNUMERIC
Boolean BOOL
Datetime TIMESTAMP

排查转移作业设置问题

如果您在设置数据转移作业时遇到问题,请参阅 PayPal 转移作业问题

价格

将 PayPal 数据转移到 BigQuery 的功能处于预览版阶段时,您无需付费即可使用此功能。

后续步骤