概览
“开始重定向”流程完成后,用户在发卡机构的网页界面中完成付款后,即会启动“完整重定向”流程。完全重定向流程的目的是:
- 通知 Google 和付款集成商付款已成功。
- 通过集成商将用户重定向回 Google。
该流程的运作方式
集成商可通过三种不同的方式将填写完毕的付款信息传送给 Google。
- 集成商将用户重定向到 Google,同时将付款信息添加到重定向响应。
- 付款完成后,集成商会向 Google 的 RedirectPaymentCompleteNotification 端点发送 HTTPS 请求。
- Google 向集成商的 GetRedirectPaymentStatus 端点发送 HTTPS 请求,集成商提供付款信息进行响应。
完成重定向流程
以下序列图显示了用户浏览器、Google、集成商和颁发者之间的交互:
以下是上图中的对象列表:
- 用户:完成付款的人。
- Google 界面:客户发起付款的 Google 网站或应用界面。
- Google 服务器:位于 Google 的后端服务器,可获取完整的付款明细并向用户提供所购商品或服务。
- 付款集成商:付款集成商,在 Google 与发卡机构之间充当中介。
- 发卡机构:用户进行支付的发卡机构。
我们假定用户刚刚在发卡机构的网站上完成了付款,这会触发完全重定向流程。
- 用户在发卡机构的门户中完成付款。
- 发卡机构创建一个指向集成商的重定向网址,其中包含有关已完成付款的信息。
- 发卡机构将用户重定向到付款集成商的后端服务器。
- 付款集成商使用发卡机构重定向中的信息创建重定向响应。
- 付款集成商将用户重定向到 Google。
- 付款集成商向 Google 发送 RedirectPaymentCompleteNotification。如果在用户完成付款后重定向失败,就会使用此方法。
- 如果 Google 没有收到重定向响应或 RedirectPaymentCompleteNotification,Google 将向付款集成商发送 GetRedirectPaymentStatus 调用,由付款集成商返回付款状态信息。
- Google 会处理付款信息,从而向用户提供购买的商品或服务。
重定向付款完成通知
如上图所示,Google 要求集成商在集成商确定接受或拒绝重定向付款时向 Google 发送 RedirectPaymentCompleteNotification
。此通知可能会在用户被重定向回 Google 之前或之后发送给 Google。
如果集成商在重定向发生数天后发现重定向付款已完成(接受或拒绝),则集成商仍应向 Google 发送 RedirectPaymentCompleteNotification
。这些通知有助于更新有关付款的最终状态,并且是正确处理对帐所必需的。
最佳实践和其他注意事项
安全措施
重定向响应网址将包含一个未加密的 redirectRequestId
字段以及一个具有相同值的加密 RedirectResponse 对象。Google 将验证这两个值是否与重定向请求中发送的 requestId
字段匹配。