Checkout 概览
Checkout 是基于 API 的低代码支付集成方案。它允许商户通过后端 API 动态创建支付会话,并生成一个安全托管的收银台页面。
与 Payment Link 不同,Checkout 能够深度集成到您的业务系统中,适用于电商购物车结算、SaaS 动态订阅或任何需要根据用户行为实时计算金额的场景。
核心机制:托管式收银台
为了确保资金安全并简化前端开发,我们的 Checkout 采用托管页面 (Hosted Payment Page) 模式。
工作流程
- 创建会话:当用户在您的网站点击“结账”时,您的后端服务器调用我们的 API 创建一个
Checkout Session。 - 重定向:API 返回一个托管页面的 URL,您将用户的浏览器重定向至该地址。
- 完成支付:用户在托管页面完成加密货币支付(使用平台支持的任意资产)。
- 回调与跳转:支付完成后,如果配置了成功支付跳转URL,用户被自动跳转至该URL,同时系统通过 Webhook 通知您的服务器进行履约。
为什么不支持嵌入式?
鉴于 Web3 支付的特殊性(需要唤起钱包签名、跨链路由计算),托管页面能提供最稳定、兼容性最好的支付体验,同时确保商户端无需处理复杂的钱包和链上交互逻辑。
灵活的商品构建
Checkout 提供了极高的灵活性,支持两种定义商品的方式:
1. 引用现有商品 (Product ID)
直接使用在商户后台“商品库”中创建好的商品 ID。
- 适用场景:标准化的商品,如固定的会员套餐、充值卡。
- 优势:便于统一管理图片和描述,后台修改商品信息后,前端无需改代码。
2. 即时构建商品 (Ad-hoc Products)
在调用 API 时,直接在请求体中定义商品名称、图片和价格(Price Data),无需预先在后台创建。
- 一次性逻辑:通过这种方式定义的商品是一次性的,它们不会被保存到您的后台商品库中。
- 适用场景:
- 动态购物车:用户买了 3 件不同的衣服,总价是动态计算的。
- 个性化服务:根据用户选择的配置生成的独特报价。
Checkout 与 Payment Link 的关系
从架构角度来看,Payment Link 本质上是一个静态化的 Checkout Session 封装。
- Payment Link:系统预先定义好商品和规则,生成一个永久有效的 URL。每次访问该 URL,实际上是在后台隐式地实例化了一个 Checkout Session。
- Checkout API:赋予您手动控制每一次 Session 实例化的能力。您可以为每一次点击定制不同的参数(如订单号、用户 ID、自定义金额等)。
适用场景
- 电商网站:完整的购物车结账流程,需传入内部订单号(Order ID)进行关联。
- SaaS 订阅:根据用户选择的坐席数量动态计算首期费用。
- 平台型业务:需要将交易元数据(Metadata)透传至结算流程。
下一步
了解了基本概念后,请查看标准的集成时序图与详细流程。