跳转到主要内容
Subotiz 支持以托管页面(hosted 模式)的方式完成结账流程。当客户需要结账时,您可以使用 Subotiz API 创建一个 Checkout Session ,然后重定向到 Subotiz 支付页面来完成整个支付过程。

Checkout 流程描述

  1. 当客户准备完成购买时,从您的客户端(client)向您的服务端(server)发起结账请求,您的服务端应该使用 Subotiz API 创建一个 Checkout Session。
  2. Checkout Session 会提供一个结账页的 URL,您可以将客户重定向到 Subotiz 结账页。
  3. 客户会在 Subotiz 结账页输入支付信息并完成交易。
  4. 交易完成之后 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 结账页。

Hosted 模式创建 Checkout Session 示例

关键参数

  • order_id:为接入方订单 ID,用于后续关联业务数据
  • integration_method:设置为 hosted,表示使用托管式页面模式接入
  • cancel_url:客户在 Subotiz Checkout 页面取消支付时跳转的页面
  • return_url: 客户在 Subotiz Checkout 页面支付成功之后跳转的页面

示例结账页面

Subotiz 在客户完成结账之后会重定向回成功页面,完成一次完整的结账流程。并且 Subotiz 会以 Webhook 的形式通知到您的服务端,您可以在服务端处理成功订阅之后的逻辑。