SDK 参考#
Onchain OS Payment 提供 Node.js / Rust / Go / Java 四个 SDK,覆盖 HTTP 卖家场景下的中间件挂载、配置管理、链上结算对账等核心能力。
Agent 卖家场景请使用 OnchainOS Skill,无需 SDK。
支付方式覆盖#
| 支付方式 | Node.js | Rust | Go | Java |
|---|---|---|---|---|
单次支付 · exact | ✅ | ✅ | ✅ | ✅ |
单次支付 · charge(分账) | 🔜 | 🔜 | 🔜 | 🔜 |
批量支付 · aggr_deferred | ✅ | ✅ | ✅ | ✅ |
按量支付 · session | 🔜 | 🔜 | 🔜 | 🔜 |
担保支付 仅 Agent 卖家可用,请使用 OnchainOS Skill,SDK 不覆盖。
选择你的 SDK#
Node.js SDKExpress / Koa / NestJS 兼容;NPM 包 @okx/onchainos-paymentRust SDK高性能场景;Cargo 包 onchainos-paymentGo SDKGin / Fiber / net/http 兼容;Go moduleJava SDKSpring Boot / Vert.x / 任意 JVM Web 框架兼容;Maven 包
四种 SDK 共通能力#
不管选哪个语言,SDK 都覆盖以下能力——只是 API 风格略有差异。
| 能力 | 说明 |
|---|---|
| 路由中间件 | 在 HTTP 路由上挂载,自动处理 402 / Verify / Settle |
| 多 scheme 声明 | 同一路由同时支持 exact + aggr_deferred(其余 scheme 即将推出) |
| Broker 客户端 | 主动调用 Broker API(创建订单、查状态、对账) |
| 状态轮询 / 事件监听 | 监听支付完成、聚合结算等事件 |
| 错误码与重试 | 标准化错误码 + 推荐重试策略 |
选型建议#
我的服务用 Node.js / Express,怎么开始?#
直接用 Node.js SDK:npm install @okx/onchainos-payment 即可。
高并发、低延迟要求很高,选哪个?#
Rust SDK 性能最佳。Go SDK 在易用性和性能之间取得很好的平衡。
我用的 Web 框架不在支持列表里怎么办?#
四个 SDK 都暴露了底层的 verify / settle 函数,可以手动接入任何框架。具体见各语言 SDK 的"手动集成"章节。
不打算用 SDK?#
支付协议是完全开放的。你也可以基于 API 参考 直接调用 Broker REST 接口,自己处理 402 响应构造、签名验证、Settle 提交等流程。
但这样意味着你需要自己处理:
- HTTP 402 响应规范(Challenge 字段结构)
- 多 scheme 声明 + 买家钱包能力检测
- KYT 错误处理
- 通道状态对账(如使用
session) - 聚合结算事件监听(如使用
aggr_deferred)
SDK 帮你封装了上述全部细节。除非有强定制需求,或需使用 SDK 暂未覆盖的支付方式(按量 / 单次分账),建议优先用 SDK。