Headless SDK Enrollment 网络 Enrollment


👍

推荐的 SDK

我们建议使用WebSeamless SDK,以获得流畅的集成体验。该选项提供了灵活的支付解决方案,预置了用户界面组件和自定义选项。

Yuno 的Headless SDK 可让您注册支付方式并标记银行卡,以便将来使用。

以下步骤介绍了如何使用 Yuno 的Headless SDK 创建付款。

要求

要执行注册程序,您需要提供 customer_session 开始在 步骤 3.获得 customer_session您需要

  1. 创建客户:客户必须注册付款。使用 创建客户 endpoint 来创建新客户。在响应中,您将收到客户 id用于创建客户会话。
  2. 创建客户会话:使用客户 id创建客户会话 endpoint 接收 customer_session.

第 1 步:在项目中加入程序库

在继续实施Headless SDK 之前,请参阅SDK 集成概述,了解如何将 SDK 正确集成到项目中的详细说明。

集成指南提供了三种灵活的方法:

  1. 直接包含 HTML 脚本
  2. 动态 JavaScript 注入
  3. 安装 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 函数,提供必要的配置参数。

参数

使用以下选项配置注册:

参数说明
country_code该参数用于指定正在设置payment 流程的国家。使用 ENUM 值代表所需的国家代码。支持的国家及其相应代码的完整列表可在 覆盖国家 page.
customer_session指当前注册的 客户会议 收到的答复 创建客户会话 endpoint。例如 '438413b7-4921-41e4-b8f3-28a5a0141638'
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 字段可以有以下值之一:

  • CREATED
  • EXPIRED
  • REJECTED
  • READY_TO_ENROLL
  • ENROLL_IN_PROCESS
  • UNENROLL_IN_PROCESS
  • IN_PROCESS
  • ENROLLED
  • DECLINED
  • CANCELED
  • ERROR
  • UNENROLLED
📘

演示应用程序

除提供的代码示例外,您还可以访问演示应用程序,了解 Yuno SDK 的完整实施过程。

保持更新

请访问更新日志,了解最新的 SDK 更新和版本历史。