去中心化集成

为了便于去中心化服务的集成,LP-SDK 扩展了以下参数,改变预设的中心化服务的交互功能。

使用去中心化服务的集成方式时,不需要传入中心化服务集成方式中用到的安全参数和签名。验证依赖 payment-intent-idexternal-order-id

user-flow="dex-wallet"

payment-intent-id
external-order-id
app-id
app-key
app-url
app-uid
app-email

signature
timestamp

用户交互流程 user-flow

  • cex-email | dex-wallet,默认值为 cex-email,在去中心化服务集成中需要设置为 dex-wallet
  • 设置为 dex-wallet时,用户会进入去中心化服务适配的交互流程,通过邮箱完成验证。
<legend-trade
  user-flow="dex-wallet"
></legend-trade>

预先交易的支付订单 payment-intent-id

  • 从服务端请求 /app/payment/intent 返回内容中获取。
  • 需要和 external-order-id正确关联,同时传入。
<legend-trade
  payment-intent-id="6c8683e9-acdb-4451-b1b8-c44363d102f4"
  external-order-id="0123456789"
></legend-trade>

外部发起交易的订单 external-order-id

  • 从服务端请求 /app/payment/intent 返回内容中获取。
  • 需要和 external-order-id正确关联,同时传入。
<legend-trade
  payment-intent-id="6c8683e9-acdb-4451-b1b8-c44363d102f4"
  external-order-id="0123456789"
></legend-trade>

交互流程简述

  1. 用户进入 LP-SDK,通过 payment-intent-id 获取当前的钱包地址,以及在 legend 服务记录里关联的邮箱。
  2. 用户验证邮箱,获取授权令牌,进入 KYC 或者交易流程。
    1. 用户本地存在有效的授权令牌,可以跳过邮箱验证的步骤。
    2. 当前钱包地址没有关联过邮箱时,进入新增邮箱绑定的交互流程。
  3. 获取的授权令牌会在本地环境做持久化存储,当钱包地址相同时可以读取本地存储的授权令牌进行验证。

在线示例

https://demo.legendtrading.com/?preset=jssdk-dex-wallet