SV.CAFE API Doc

联系 [email protected] 获取 app_id 和 app_secret,同时设置用于事件通知(如用户付款等)的回调地址(如需要)。

请务必保证 app_secret 私密,推荐 app_secret 只在服务端存储。

新建订单

GET https://sv.cafe/api/v1/orders/new

参数列表

参数解释
app必填,平台分配的 app_id
cny订单金额,整数,范围 [1, 5000],单位“元”
satoshi按 BSV 数量下单,整数,范围 [100000, 400000000],单位“聪”
address必填,BSV 收款地址
comment可选,用户自定义的信息
timestamp必填,10 位 UNIX 时间戳,调试时为了关闭校验可以用 app_id 的值代替
signature必填,将 app、cny 或 satoshi、address、timestamp、app_secret 参数的值按顺序拼接后 MD5

注意:参数 cny 和 satoshi 必须且只能有一个存在。如果按金额下单,则只传递 cny,如果按 BSV 数量下单,则只传递 satoshi。

返回值

调用成功,结果如下

可能的 status 值:

注意:订单如果在下单 180 秒后才支付,会进入支付超时逻辑,需人工干预。

调用失败,结果如下:

可能的 r 值:

查询订单

GET https://sv.cafe/api/v1/orders/{order_id}

返回值

调用成功,结果如下

调用失败,结果如下:

可能的 r 值:

回调示例

如果设置了事件回调地址为https://example.com/callback,当用户付款后,会触发一次 GET 回调,超时时间 2 秒,请求为

可能的 event 值:

签名signature的值,由 app_id、event、order_id、timestamp、app_secret 的值按顺序拼接后 MD5 得到。

注意,回调时的txid参数只在 event 值为paid_ok才存在。

Python 签名代码示例

付款交互示例

如果是桌面客户端集成,推荐直接展示二维码,让用户扫码支付。演示视频

如果是手机端应用集成,用户无法扫码,推荐只使用支付宝付款链接,用户打开链接就可以直接跳转支付宝应用(微信付款链接无此效果)。演示视频

参考