Headless SDK (支付)
Yuno 的 Headless SDK让您完全控制结账用户体验和用户界面,而无需符合 PCI 标准。使用Headless SDK,您可以进行银行卡支付或将银行卡信息注册到客户账户中。访问Headless SDK (注册)了解更多信息。本页介绍支付操作。您可在下面查看可用指南。
Payment workflow
下图说明了完整的付款工作流程。下文将详细解释每个步骤。有关特定平台的实施细节,请参阅相应指南:
SDK 无头Payment 流程
本图说明了使用 SDK 的无头payment 流程,详细介绍了商家客户端、商家服务器、Yuno 服务器和 Yuno SDK 之间的交互。它概述了从启动结账、请求payment 方法到创建和接收payment 结果的各个步骤。
商户客户
商家客户端(Merchant Client)代表您与后端服务器和 Yuno SDK 交互的前端应用程序。它处理payment 流程中面向用户的方面,包括
- 启动结账
- 列出付款方式
- 用户选择payment 方式
- 使用结账会话和付款方式启动 SDK
- 获取token (一次性使用)
- 启动付款
商户服务器
商家服务器代表您的后台应用程序,负责处理服务器端操作并与 Yuno 服务器通信。它的主要职责包括
- 创建客户
- 创建结账会话
- 申请可用的付款方式
- 创建payment
- 通过网络钩子接收付款结果
Yuno 服务器
Yuno 服务器处理与客户管理、结账会话和付款处理相关的所有后台操作。它的主要职责包括
- 创建客户
- 创建结账会话
- 返回可用的付款方式
- 在付款提供程序中创建付款
- 接收付款提供商的付款结果
Yuno SDK
Yuno SDK 在客户端处理用户界面和支付流程,管理支付方式选择、token 生成和支付完成。它的主要职责包括
- 接收用户选择的结账会话和付款方式
- 回调一次性token
流量
以下步骤概述了 SDK HeadlessPayment 集成的所有组件之间的完整交互流程,详细说明了每个request 和响应如何在系统中移动:
- 商家服务器:创建客户 --> Yuno 服务器:创建客户
- 商家客户端:启动结账 --> 商户服务器:创建结账会话
- 商家服务器:创建结账会话 --> Yuno 服务器:创建结账会话
- 商户客户端:列出付款方式 --> 商户服务器:请求可用的付款方式
- 商户服务器:请求可用的付款方式 --> Yuno 服务器:返回可用的付款方式
- 商户客户端:列出付款方式 --> 商家客户端:用户选择付款方式
- 商户客户端:用户选择支付方式 --> 商户客户端:使用结账会话和支付方式启动 SDK
- 商家客户端:使用结账会话和支付方式启动 SDK --> Yuno SDK:接收用户选择的结账会话和支付方式
- Yuno SDK:接收用户选择的结账会话和支付方式 --> Yuno SDK:回调一次性token
- Yuno SDK:回调一次性token --> 商户客户端:获取token (一次性)
- 商家客户端:获取token (一次性使用) --> 商户客户端:启动支付
- 商户客户端:启动支付 --> 商户服务器:创建付款
- 商家服务器:创建付款 --> Yuno 服务器:在支付提供商中创建支付
- 商户服务器:通过 webhook 接收付款结果 --> Yuno 服务器:从支付提供商接收支付结果
选择集成Headless SDK 仅用于接受银行卡付款。如果您需要使用其他支付方式进行支付,则需要选择其他 Yuno 集成:
付款时注册信用卡
使用Headless SDK,您可以在同一付款请求中保存信用卡/借记卡,以便今后购买,而无需注册 整合.您可以获得 拱形token 在执行 apiClientPayment.generateToken 在 步骤 4.
在结账时提供一个复选框,让用户选择是否要保存银行卡以供将来使用。如果用户选择此选项,请设置 payment_method.card.save = true 在调用 apiClientPayment.generateToken 功能。您将收到 vaulted_token 在函数响应中。
其他付款方式要注册其他支付方式,请参阅Lite SDK (注册)页面。
注册付款方式后,可以使用保险库token 执行付款。要访问每个用户注册的支付方式的相关信息,可以使用以下endpoints之一:
使用拱顶token即使用户选择了已注册的支付方式,Yuno 也建议使用 SDK 来标记信息,而不是直接在 Yuno 的 API 中使用保险库token 。这种方法有几个好处:
- 支持 3DS:增强在线支付的安全性。
- 欺诈筛查:更好地防范欺诈交易。
- 收集所需信息:必要时,收集提供方要求的其他字段。
要实现这一点,发送
vaultedToken在安装 SDK 时。SDK 将处理其余事宜。如果支付方法需要额外步骤(如 3DS 挑战),请使用yuno.continuePayment()方法。该方法可处理任何所需的重定向,并适用于需要额外客户操作的注册支付方式和普通支付方式。
3 个月前已更新