Skip to main content
如果你嵌入了 Fluz 小部件,验证功能会随之而来。你无需构建验证流程、收集身份字段或处理证件——小部件会将验证作为一道闸门呈现,并在放行客户继续之前完成验证。 这是唯一一条客户身份信息从不接触你基础设施的路径,通常也是选择该方式的决定性因素。
先决条件
  • 在开发者门户中配置好的小部件应用,且已设置 OAuth。参见 配置应用小部件
  • 由 Fluz 在你的应用上启用 VERIFY_KYC scope。参见 所需 scope
  • 已注册的 webhook 端点。参见 验证客户

验证在何处发挥作用

验证是小部件正常序列中的一步,而不是单独的集成:
1

你的页面调用 FluzEmbedded.init()

小部件会在一个 iframe 中打开。
2

客户登录或注册

如果他们还没有 Fluz 账户,小部件会创建一个。
3

小部件检查验证状态

如果客户已完成验证,将直接继续。否则,此处会执行验证。
4

客户完成剩余步骤

设置 PIN 和授权 OAuth scopes。
5

客户完成其交易

确认,然后完成。
由于验证位于交易之前,无法完成验证的客户将根本不会到达交易步骤。

客户会经历什么

当未验证的客户到达这道闸门时,小部件首先会在后台尝试静默验证。许多客户在此时无需提供任何信息即可通过。 如果仍未解决,小部件会在 iframe 内呈现验证表单,并预填 Fluz 已有的信息。客户进行检查,补充缺失项并提交。随后小部件会显示等待状态,处理结果后自动继续。 如果验证仍未成功,小部件会将客户升级到证件验证——在同一 iframe 中采集其政府签发的身份证件和自拍照。
以上全部都在小部件内完成。你无需检测客户所处阶段或自行触发升级。

Scopes

小部件应用会在 OAuth 授权步骤中自动请求其所需的 scopes,包括 VERIFY_KYC。你无需手动将其添加到小部件的 scope 列表中。 你仍需要由 Fluz 在应用本身启用 VERIFY_KYC。若未启用,小部件将因缺少权限错误而无法加载,而不是跳过验证。
生成传递给小部件作为 patToken 的短期令牌时,请在 Authorization: Basic 头中使用你的 API Key——不是你的 OAuth client ID,也不是你的 app_id。使用错误的值是小部件无法加载的最常见原因。参见 获取你的 API 凭证

了解结果

小部件会直接告知客户其结果,但你的应用不应从小部件关闭来推断验证状态。请改为依赖 webhooks。 当客户在小部件中开始验证时,Fluz 会发出 WIDGET_KYC_INITIATION。这需要 VERIFY_KYC scope。
此事件标记的是验证的开始,而非结果。使用 externalReferenceId 将该事件映射到你自己的客户记录,并同时订阅验证结果事件,以便了解最终结论。参见 Webhooks

将小部件与 API 结合使用

小部件与 API 在每位客户层面共享同一个验证状态,因此两种方式可以顺畅组合:
  • 通过 API 完成验证的客户会直接通过小部件的验证闸门。
  • 在小部件中完成验证的客户也同样适用于你的 API 调用。
  • 在任一渠道用尽尝试次数的客户,在两边都视为已用尽。
如果你在开户期间通过 API 验证客户,随后再交由小部件处理:请检查客户当前的验证状态,而不是假设小部件会为其提供新的尝试机会。

测试

在预备环境中,使用已发布的测试身份运行完整的小部件流程,包括有意的拒绝,以便观察升级到证件验证的过程。预备环境的小部件会指向预备环境而非生产环境——请确认你加载的是预备环境的小部件脚本和基础 URL。参见 测试 KYC 流程预备环境与正式环境