Headless SDK Enrollment 网络 Enrollment
推荐的 SDK我们建议使用WebSeamless SDK,以获得流畅的集成体验。该选项提供了灵活的支付解决方案,预置了用户界面组件和自定义选项。
Yuno 的Headless SDK 可让您注册支付方式并标记银行卡,以便将来使用。
以下步骤介绍了如何使用 Yuno 的Headless SDK 创建付款。
要求
要执行注册程序,您需要提供 customer_session 开始在 步骤 3.获得 customer_session您需要
- 创建客户:客户必须注册付款。使用 创建客户 endpoint 来创建新客户。在响应中,您将收到客户
id用于创建客户会话。 - 创建客户会话:使用客户
id和 创建客户会话 endpoint 接收customer_session.
第 1 步:在项目中加入程序库
在继续实施Headless SDK 之前,请参阅SDK 集成概述,了解如何将 SDK 正确集成到项目中的详细说明。
集成指南提供了三种灵活的方法:
- 直接包含 HTML 脚本
- 动态 JavaScript 注入
- 安装 NPM 模块
选择最适合您的开发工作流程和技术要求的集成方法。完成 SDK 集成后,您可以继续执行以下步骤来实现无头注册功能。
TypeScript 库如果您使用的是 TypeScript,Yuno 提供了一个库,您可以使用该库查看 Yuno Web SDK 中的所有可用方法。
步骤 2:使用公钥Initialize Headless SDK
在您的 JavaScript 应用程序中,创建一个 Yuno 类提供一个有效的 PUBLIC_API_KEY.
const yuno = await YunoinitializePUBLIC_API_KEY);
证书更多信息,请参阅全权证书页面: https://docs.y.uno/reference/authentication
步骤 3:创建客户会话
要开始注册程序,您需要提供 customer_session.首先,您需要创建一个客户。您需要一个客户来注册付款。使用 创建客户 endpoint 来创建新客户。在响应中,您将收到客户 id用于创建客户会话。
创建客户后,可以创建客户会话。使用客户 id 和 创建客户会话 endpoint。端点 customer_session 将在回复中提供。您需要一个新的 customer_session 每次您注册新的付款方式时,都会收到该信息。
步骤 4:创建注册付款方式对象
您需要一个注册付款方式对象,以便为注册设置Headless SDK 集成。您可以使用 "注册付款方式"(Enroll Payment Method)endpoint创建一个对象。创建支付方式对象时,您需要定义客户可以注册的支付方式。目前,只有 CARD 可用于Headless SDK。
验证卡如果您想在注册前验证卡片(零值授权),您需要提供
verify对象。
步骤 5:开始注册程序
接下来,您将使用 apiClientEnroll 函数,提供必要的配置参数。
参数
使用以下选项配置注册:
const apiClientEnroll = yuno.apiClientEnroll({
country_code: "CO",
customer_session: "eec6578e-ac2f-40a0-8065-25b5957f6dd3"
});步骤 6:生成保险库token
收集完所有用户信息后,就可以开始注册了。首先,您需要创建一个 vaulted_token 使用函数 apiClientEnroll.continueEnrollment.由于这是一个异步函数,您可以使用 try/catch 以确保正确处理触发的错误。下面的示例展示了如何创建一个 vaulted_token:
const vaultedTokenResponse = await apiClientEnroll.continueEnrollment({
customer_session: "eec6578e-ac2f-40a0-8065-25b5957f6dd3",
payment_method: {
type: "CARD",
card: {
detail: {
expiration_month: 11,
expiration_year: 25,
number: "4111111111111111",
security_code: "123",
holder_name: "ANDREA B",
type: "DEBIT"
}
},
customer: {
}
}
});注册新卡后,您将收到 vaulted_token您可以用它来进行支付,而无需询问客户的银行卡信息。下面的代码块显示了来自 apiClientEnroll.continueEnrollment 功能:
{
vaulted_token: "9104911d-5df9-429e-8488-ad41abea1a4b",
customer: {
session: "eec6578e-ac2f-40a0-8065-25b5957f6dd3"
},
status: "ENROLLED"
}
可能的状态值"(《世界人权宣言》)
status字段可以有以下值之一:
CREATEDEXPIREDREJECTEDREADY_TO_ENROLLENROLL_IN_PROCESSUNENROLL_IN_PROCESSIN_PROCESSENROLLEDDECLINEDCANCELEDERRORUNENROLLED
演示应用程序除提供的代码示例外,您还可以访问演示应用程序,了解 Yuno SDK 的完整实施过程。
保持更新
请访问更新日志,了解最新的 SDK 更新和版本历史。
3 个月前已更新