概览
开始重定向流程的目的是向用户提供完成付款所需的足够信息,并将其重定向到付款集成商。集成商进而将用户重定向到发卡机构的网页界面,转发 Google 提供的信息。然后,用户可以按照发卡机构提供的说明完成付款。这会触发完全重定向流程。
该流程的运作方式
用户可以通过两种方式选择要用作付款方式 (FOP) 的发卡机构。
- 用户在 Google 界面中选择发卡机构。
- 用户在 Google 界面中选择集成商,并在集成商界面中选择发卡机构。
用户在 Google 界面中选择发卡机构
在这种情况下,用户在 Google 界面中在 FOP 选择期间选择发卡机构,因此 RedirectRequest 中 formOfPayment
对象的 issuerId
字段将包含由 Google 生成的唯一标识符,代表该发卡机构。请注意,如果付款集成商和发卡机构是同一实体,Google 将为付款集成商生成issuerId
。重定向请求使用 HTTPS GET 方法并在网址中编码参数。
开始重定向流程(已选择颁发者)
以下序列图显示了用户在 Google 界面中选择发行商时,用户浏览器、Google、集成商和发行商之间的交互:
以下是上图中的对象列表:
- 用户:希望付款的人。
- Google 界面:客户用来付款的 Google 网站或应用界面。
- Google 服务器:位于 Google 的后端服务器,用于创建重定向请求。
- 付款集成商:将用户和重定向请求转发给发卡机构的集成商。
- 发卡机构:用户拥有帐号的发卡机构。
对于“开始重定向”流程,我们已假设用户位于 Google 的产品和服务(Google 界面)上,并且正在选择付款方式。一切从这里开始。
- 用户选择要用于付款的特定发卡机构。这会触发“开始重定向”流程。
- Google 界面调用 Google 服务器(后端)以创建新的重定向请求。
- Google 服务器会创建重定向请求。
- 重定向请求会发送到 Google 界面。
- Google 界面将用户重定向到集成商的服务器。
- 集成商会处理 Google 的重定向请求,并生成特定于发卡机构的重定向请求。
- 集成商将用户重定向到发卡机构的网页界面。
- 用户在颁发者的网页界面中进行身份验证。
- 用户按照屏幕上的说明完成付款。
用户在 Google 界面中选择集成商
在这种情况下,用户在 Google 界面中选择集成商,因此 RedirectRequest 的 formOfPayment
字段将设置为 noneChosen
,因为只有发卡机构会被视为有效的 FOP。集成商必须提供一个界面,以便用户从 Google 批准的发卡机构中选择一个发卡机构。重定向请求使用 HTTPS GET 方法并在网址中编码参数。
开始重定向流程(集成商已选择)
以下序列图显示了用户在 Google 界面中选择集成商时,用户浏览器、Google、集成商和发行商之间的交互:
以下是上图中的对象列表:
- 用户:希望付款的人。
- Google 界面:客户用来付款的 Google 网站或应用界面。
- Google 服务器:位于 Google 的后端服务器,用于创建重定向请求。
- 付款集成商:用户选择发卡机构的集成商。
- 发卡机构:用户拥有帐号的发卡机构。
对于“开始重定向”流程,我们已假设用户位于 Google 的产品和服务(Google 界面)上,并且正在选择付款方式。一切从这里开始。
- 用户选择集成商(而非特定发卡机构)进行付款。这会触发“开始重定向”流程。
- Google 界面调用 Google 服务器(后端)以创建新的重定向请求。
- Google 服务器会创建重定向请求。
- 重定向请求会发送到 Google 界面。
- Google 界面将用户重定向到集成商的网页界面。
- 集成商处理 Google 的重定向请求。
- 集成商向用户显示可用的发卡机构。
- 用户选择要用于付款的特定发卡机构。
- 集成商生成特定于发行商的重定向请求。
- 集成商将用户重定向到发卡机构的网页界面。
- 用户在颁发者的网页界面中进行身份验证。
- 用户按照屏幕上的说明完成付款。
最佳实践和其他注意事项
安全措施
重定向网址请求网址将包含未加密的 callbackUrl
字段和加密的 redirectRequest
字段。这两个字段都将包含当前交易的 requestId
。供应商应验证 callbackUrl
和加密载荷中的 requestId
是否相同,以验证两者是否相关。