Skip to main content
本指南帮助您完成 Subotiz 支付功能的基础集成——通过托管式结账页面(hosted mode)快速实现支付流程。Subotiz 提供完整的支付能力,支持订阅管理、交易处理等核心功能,适用于 AI、SaaS 等各类业务场景。

前置条件

  1. 已注册 Subotiz 商户账号(注册地址
  2. 完成 Subotiz 支付入网及支付方式配置
  3. 完成商品和定价创建

集成步骤

1

获取接入凭证

登录 Subotiz 管理平台,完成以下两项配置:

1. 配置支付回调地址

  • return_url:客户支付成功之后跳转的 URL,创建 checkout session 时的默认值
  • cancel_url:客户取消支付之后跳转的 URL,创建 checkout session 时的默认值
优先级规则:创建会话时传入的地址将覆盖此处的默认设置。为确保灵活性,建议在此设置通用默认地址,并在特定场景下通过 API 传入自定义地址。

2. 获取平台接入信息

  • access_no:接入方唯一识别号
  • merchant_id:商户唯一标识
  • API Key:API 鉴权密钥,获取方式参阅 鉴权严格保密,勿暴露在客户端
2

获取商品信息

在 Subotiz 管理平台中创建商品和商品定价,将商品信息和价格信息保存在服务端中。创建 Checkout Session 需要依赖商品定价的 price_id 来动态获取商品信息。

创建商品

创建商品定价

3

创建 Checkout Session

通过 API 创建结账会话,获取支付页面 URL,引导用户完成支付。请求示例:
4

测试完成支付

1. 获取支付页面 URL

接口响应成功后,取 data.session_url(支付页面 URL)。

2. 访问支付页面

在浏览器中打开该链接,即可看到 Subotiz 托管的支付页面。

示例结账页

3. 使用测试卡号完成支付

使用测试卡号完成支付(Subotiz Payment 渠道):
  • 支付成功:卡号 4242424242424242,CVC 为任意 3 位,有效期需为未来日期
  • 支付失败:卡号 4000000000000002,CVC 为任意 3 位,有效期需为未来日期
5

处理支付结果通知

1. 重定向回 return_url

支付完成后,用户被重定向至 return_url(成功场景)。

2. 接收 Webhook 通知

Subotiz 同时发送 Webhook 通知(事件类型 trades.succeeded)。

3. 验证 Webhook 签名

  1. 提取参数:从请求头获取 X-Timestamp 时间戳(记为 timestamp),并获取原始请求体内容(记为 body)。
  2. 构造签名原串:格式为 ${timestamp}.${body}
  3. 计算签名:使用 Subotiz 分配的 API Key 作为密钥,通过 HMAC-SHA256 算法计算签名值(示例见下)。
  4. 比对验证:将计算得到的签名与请求头中的 X-Signature 值比对,一致则为合法请求。

验证结果

  1. 登录 Subotiz 管理平台,查看交易记录和订阅记录
  2. 验证订单金额、商品信息是否正确