术语表

账号 ID

在关联期间,账号 ID 从集成商服务器发回 flow;用于通过两种方式帮助 Google 识别相关账号。 首先,确定使用相同基础用户的多种付款方式 以评估风险和欺诈行为。其次,Google 会使用 Google Cloud 来标识此账号。此值必须是唯一的 跨关联请求标识用户账号,且必须不可更改 而且必须能让用户识别

例如,如果集成商使用电子邮件地址作为身份, 电子邮件地址。但是,如果集成商使用电子邮件地址登录 但该地址可以更改,那么对于 账号 ID。无论选择哪个选项,对于多个 尝试以相同的付款集成商用户身份建立关联。

Android 应用软件包 (APK)

Android 操作系统分发时使用的软件包文件格式 以及安装和使用移动应用

API 版本控制

本规范支持版本控制。支持的版本配置于 Google 服务器。从版本 N 迁移到 M(其中 M 是主要版本)时 大于 N),则集成商必须同时支持 N 和 M,直到 Google 完成验证 所有流量都已迁移到 M。版本标识方式不同 进行微调。Android API 和 WebRedirect API 会传递 API version 作为参数添加到请求中。服务器到服务器的调用会传递 作为网址路径的一部分。

流程并非固定版本。在从 N 迁移到 M 期间,集成商 对于相同的内容, 交易。在关联期间,集成商可能会收到身份验证请求 与版本 N 的关联请求。

关联 ID

associationID 标识客户账号之间的关联 和 Google 插桩。associationId 与 GPT 非常相似。在 事实上,它与 GPT 具有相同的生命周期,并且基数与 GPT 是 1:1。通过 associationId 与 GPT 的敏感度不同。GPT 是一种 令牌,用于付款。associationId 是一个公开标识符, 代表相同的关系,但本身并不敏感。

associationId 会在以下期间传递给付款集成商: associateAccount。在重新进行身份验证期间,系统会将相同的值传递到 集成商这样,集成商就能够了解 进行身份验证。如果传入了关联 ID, 原始关联期间标识的 ID 必须预填充并经过身份验证 。

付款集成商应存储所有关联 ID,并将 在合同有效期内使用特定集成商账号。

身份验证请求 ID

refreshTokenassociateAccount 和(可选)捕获方法接受一个 对身份验证的引用。此引用的格式为 requestId Google 所指的身份验证凭据。此字段是 付款集成商使用这些信息来验证相应方法是否确实 身份验证成功。

拍摄方法可以填充身份验证 requestId。这种情况会发生 两种情况下。如果 Google 在截图前对用户进行了身份验证, 会填充身份验证 requestId 字段。此外,Google 通常会 用户在设置时自动完成付款时间安排。Google 按该时间表写入身份验证 requestId,并发送 requestId 以及与该特定时间表关联的每个拍摄。

付款集成商应将所有身份验证 requestIds 存储 30 次 天。如果付款集成商想要审核身份验证 requestIds 可出现在拍摄请求中的信息,包括付款中包含的信息 则集成商必须存储所有requestId身份验证 集成商与 Google 之间合同的有效期。

公司

公司是在 Google 的配置和合同中定义的概念。答 公司定义了集成商与 Google 之间的关系。PGP 密钥和 (可选)SSL 根 CA 与公司关联。最重要的是 与一个或多个付款集成商账号 ID 相关联。GPT 在公司内创建,主要适用于所有付款集成商账号 ID 不过,也有一些例外情况。例如,如果 GPT 与以一种货币计价的账户相关联(不支持外汇 且正尝试通过 Google Cloud 服务 不同币种。

付款方式 (FOP)

所有交易都包括一种或多种付款方式 (FOP),例如信用卡 用户通过信用卡或电子转账向 Google 付款 或由 Google 支付费用(如果是 AdSense 用户) 和 Google Play 开发者付款方式通常也称为付款 付款方式、付款方式和付款方式。

Google 付款令牌 (GPT)

GPT 是由 Google 服务器在 关联时间并传递给集成商服务器。GPT 是一种 代表用户账号与 和 Google 工具进行集成。GPT 是一种令牌 凭据或账号 ID。此令牌用于在购买流程中识别 该账户以信用卡或借记卡付款,且对双方保密。GPT 不得 以明文形式发送,并且必须经过加密以确保隐私安全。

GPT 不同于 associationId,因为 associationId 不受保护 并通过公开方式(网址、不安全连接)自由传递。GPT 是 只有 Google 和集成商知道。

付款集成商应存储所有 GPTS 并将其与 特定集成商账号,在整个 集成商和 Google。

幂等性

幂等操作可以多次应用, 改变结果或在初始应用后产生新的副作用 操作。幂等性通常使用“键”来标识 请求。在两个服务器之间定义的所有请求都使用幂等性 键。请求标头包含一个请求 ID,该 ID 为 用作幂等键。请求 ID 具有全局唯一性。幂等 请求必须是完全相同的 JSON 正文,但有一种例外情况。通过 每个请求的 requestTimestamp 都不同。这是一项非常重要的 区别。requestTimestamp 是服务器发送此请求的时间。且 每次尝试都是唯一的。这有助于降低重放攻击的能力。 同样,幂等响应必须与 JSON 正文完全相同, 每个回答的“responseTimestamp”都不一样。

除 Echo 方法之外的所有服务器到服务器方法都必须具有幂等性。 向集成商界面(无论是 Android 还是 Web)发出的身份验证请求不是 幂等性。

有关幂等行为的示例,请参阅 参考文档

标识符 (ID)

标识符代表付款之间的交易或通信 集成商和 Google。

乐器

付款方式是指 Google 客户。乐器示例包括:

  • 登记的信用卡号
  • 银行账户和汇款路线号码

用户可以拥有多个与其 Google 身份相关联的付款方式。

百万分之一

此 API 中的货币值使用名为“微单位”的格式表示,该格式是 Google 的一项标准。微单位是一种基于整数的固定精度格式。要以微单位表示货币价值,请用标准货币价值乘以 1,000,000。

例如:

  • 1.23 美元 = 1230000 微美元
  • 0.01 美元 = 10000 微美元

付款集成商

处理用户交易付款的外部集成商。

付款集成商账号 ID

此标识符表示 Google 和 集成商。集成商账号 ID 由 Google 生成并分配给 在设置期间与集成商联系。这通常称为“MID”。全部 请求和响应必须包含此 ID。此标识符是不透明的,必须 永远不会被解析。此标识符的格式可能并非在所有 已签发的 ID。

此标识符在事务的生命周期内保持不变。如果 捕获和退款,则使用相同的标识符。

集成商账号 ID 的限制条件由合同本身定义。 通常,限制与账单结算有关。例如,集成商 支持以美元结算加元和墨西哥比索,但要求使用欧元交易时 账单币种为欧元。在这种情况下,两个不同的付款集成商账号 ID 将对应 一个用于以美元结算,另一个用于以欧元结算。

可以逐步淘汰标识符,取而代之的是新标识符。如果 标识符将被弃用,Google 将停止对该标识符进行捕获 标识符。但是,集成商必须接受所进行交易的退款 自上次拍摄开始一年后(拍摄 初始化定义为 requestHeader 中的 requestTimestamp)。

个人身份信息

个人身份信息 (PII) 是指 识别个人以及任何可以合理关联到 此类信息(例如用户姓名、电子邮件地址、邮寄地址) 地址或电话号码,可以单独使用,也可以组合使用

申请 ID

requestId 用于标识 Google 与付款之间的所有通信 集成商

SPII

敏感的个人身份信息 (SPII) 是 Google 个人所认为的 会给用户带来高风险的个人身份信息 (PII) 遭到入侵或滥用。SPII 通常具有限制性的处理和存储 法律、监管或合规实体规定的要求。

令牌

在出现敏感凭据(例如个人身份信息或 Google 与集成商之间交换 SPII。

用户地址

在创建付款方式时,Google 会检查用户是否为 Google 付款客户。这与成为 Google 客户无关。为此, 是 Google Payments 客户,我们需要用户的账单邮寄地址。部分 监管机构要求我们了解用户的完整地址,而 而其他调用则要求使用该地址的子集。

如果付款集成商已有该用户的地址,Google 会 想要在关联流程中获取该地址,以便预填充 填写地址表单用户可以更改预填充的 地址。预填充用户地址可减少添加 并提升添加这些付款方式的用户的转化率。

如果分享地址,Google 还会将该地址作为计算其风险 模型。这样,Google 的风险引擎就能了解用户所说的地址 并与用户当前所在的 IP 地址进行比较 。

地址共享纯粹是一种优化。这没关系 集成商不会有用户的账单邮寄地址,或者无法分享该地址 地址。

网络安全的 Base64 编码

RFC 4648 第 5 节“使用网址的 Base 64 编码”中指定的编码标准 和文件名安全字母(有时也称为“网络安全 Base64”)或 “base64url”编码。(这与使用 网址 和 文件名安全字母表。)所有加密值和签名值 必须按照此标准进行编码