Checkout 流程描述
- 当客户准备完成购买时,从您的客户端(client)向您的服务端(server)发起结账请求,您的服务端应该使用 Subotiz API 创建一个 Checkout Session。
- Checkout Session 会提供一个结账页的 URL,您可以将客户重定向到 Subotiz 结账页。
- 客户会在 Subotiz 结账页输入支付信息并完成交易。
- 交易完成之后 Subotiz 会以 webhook 的方式通知您的服务端。
接入步骤
1
创建商品
在 Subotiz 管理平台中创建商品和商品定价,将商品信息和价格信息保存在服务端中。创建 Checkout Session 时需依赖商品定价的 price_id 来动态获取商品信息。


创建商品

创建商品定价
2
提供支付成功或取消页面
您的程序需要准备两个页面 URL,分别是顾客支付成功和取消支付时跳转的 URL,并确保能够在公网中访问,以便 Subotiz 能够将客户重定向到这些页面中。(两者允许使用同一页面)
3
提供 webhook 通知地址
创建一个事件接收地址,以接收您账户上发生的事件。当有事件发生时,Subotiz 会发送 HTTPS POST 请求将 Webhook 事件通知到该端点,请求体内容是 JSON 格式的事件对象。您可以通过关注事件来同步变更您系统的业务数据。
4
提供创建 Checkout Session 的入口
您的系统客户端中需要提供一个用于发起结账的入口,例如在订单预览页的结账按钮。当客户点击按钮时,在您的服务端应该调用 Subotiz API 创建 Checkout Session ,并根据订单信息修改调用参数,创建 Checkout Session 时传入的参数决定客户在结账页看到的内容,例如:商品信息、订单价格等。待接口响应后,将客户重定向到 Subotiz 结账页。
Subotiz 在客户完成结账之后会重定向回成功页面,完成一次完整的结账流程。并且 Subotiz 会以 Webhook 的形式通知到您的服务端,您可以在服务端处理成功订阅之后的逻辑。
Hosted 模式创建 Checkout Session 示例
关键参数
order_id:为接入方订单 ID,用于后续关联业务数据integration_method:设置为hosted,表示使用托管式页面模式接入cancel_url:客户在 Subotiz Checkout 页面取消支付时跳转的页面return_url: 客户在 Subotiz Checkout 页面支付成功之后跳转的页面

示例结账页面