介绍

核心概念#

HTTP 402#

什么是 HTTP 402?#

HTTP 402 是 HTTP 规范中预留的状态码,含义是 "Payment Required"——客户端需要付费才能访问该资源。它在 1999 年的 HTTP/1.1 规范(RFC 2616)中就被定义了,但当时没有配套的支付机制,所以一直处于 "保留未启用" 状态长达二十多年。

为什么 402 一直没被用起来?#

因为 HTTP 规范只定义了状态码的语义("需要付费"),但没有定义怎么付、付给谁、怎么验证。没有标准化的支付流程,浏览器和客户端就不知道收到 402 后该做什么。x402 协议就是来补这块的——它定义了基于 402 的完整支付交互流程。详见 x402 协议 FAQ。

为什么选 402 而不是自定义状态码?#

因为 402 的语义本来就是 "需要付费",这是 HTTP 标准的一部分,所有 HTTP 客户端、代理、CDN、负载均衡器都能正确传递这个状态码。用标准状态码意味着不需要改造中间任何一层网络基础设施,支付协议可以在现有 HTTP 生态上直接运行。

x402 协议#

x402 是什么?#

x402 是基于 HTTP 402 状态码的开放支付协议标准。它定义了一套完整的请求-付款-交付流程:服务器返回 402 + 支付要求 → 客户端链上支付 → 客户端携带凭证重试 → 服务器验证并返回资源。

x402 协议中有哪些角色?#

  • Buyer(买家):发起请求并支付的一方,通常是 AI Agent 或应用客户端。Buyer 签名构造支付凭证,通过 HTTP 请求头提交给 Seller。
  • Seller(卖家):提供付费 API 或资源的一方。Seller 在未付款请求上返回 402 + 支付要求,在收到合法支付凭证后交付资源。
  • Facilitator(验证结算方):负责支付验证(Verification)和链上结算(Settlement)的第三方服务。Facilitator 让 Seller 无需自己维护区块链节点、管理 Gas、提交交易——这些全部由 Facilitator 代劳。Onchain OS Payment 的核心角色就是 Facilitator。

x402 是谁提出的?#

x402 由 Coinbase 提出并开源,目前由 x402 Foundation(Coinbase 和 Cloudflare 共同治理)推进。它是一个开放标准,任何人都可以实现。

x402 只能用于 AI Agent 吗?#

不是。x402 是通用的 HTTP 支付协议,浏览器、移动端、CLI、自动化脚本都能使用。AI Agent 是当前最典型的场景,因为 Agent 需要在无人工干预下自主完成付费 API 调用。

Facilitator#

什么是 Facilitator?#

Facilitator 是 x402 协议中的第三方角色,负责支付验证(Verification)和链上结算(Settlement)。在 x402 的 Buyer-Seller-Facilitator 三方架构中,Facilitator 是中间的信任层:Buyer 签名支付后,由 Facilitator 验证支付凭证的合法性并提交链上交易,Seller 不需要自己维护区块链基础设施。

为什么需要 Facilitator?不能 Buyer 直接转账给 Seller 吗?#

技术上可以,但 Facilitator 解决了几个实际问题:

  • Seller 不需要跑节点:Facilitator 替 Seller 处理链上交互(RPC 连接、Gas 管理、交易提交),Seller 只需要一个收款地址。
  • 验证与结算分离:Facilitator 先做密码学验证(~100ms,不上链),确认支付凭证合法后再提交链上结算。这让验证速度极快,同时保证结算可靠。
  • 统一合规入口:KYT 审查等合规检查可以在 Facilitator 层统一执行,而不是每个 Seller 各自实现。

Onchain OS 就是一个 Facilitator 吗?#

是的。Onchain OS Payment 的核心角色就是 Facilitator——接收 Buyer 的支付凭证、验证合法性、执行 KYT 审查、提交链上结算、向 Seller 确认支付完成。Coinbase 也提供自己的 Facilitator 服务(CDP Facilitator),两者是同一角色的不同实现。

Facilitator 会接触到我的资金吗?#

Facilitator 提交链上交易,但资金直接从 Buyer 转到 Seller 的收款地址。Facilitator 不托管资金,也不作为中间账户。它的角色更类似于 "公证人"——验证和执行,但不持有。

可以自建 Facilitator 吗?#

x402 是开放协议,理论上任何人都可以实现自己的 Facilitator。但自建意味着你需要维护区块链节点连接、Gas 管理、交易签名和广播、KYT 合规等全套基础设施。使用 Onchain OS Payment 的 Facilitator 服务可以省去这些工作。

交易结算#

什么是交易结算?#

交易结算(Settlement)是指 Buyer 的支付凭证经过 Facilitator 验证后,将资金从 Buyer 地址实际转移到 Seller 收款地址的链上执行过程。在 x402 流程中,结算由 Facilitator 负责——Seller 不需要自己提交链上交易。

简单来说:验证(Verification)回答的是 "这笔支付合不合法",结算(Settlement)回答的是 "钱什么时候到账"。Onchain OS 支持同步和异步两种结算模式,区别在于 Seller 是等钱到账后再交付资源,还是先交付、钱随后到。

什么是同步结算?#

同步结算(syncSettle = true)指 Facilitator 提交链上交易并等待最终确认后,才通知 Seller 交付资源。"先确认,再交付"——没有坏账风险,但需要等待链上出块确认。

什么是异步结算?#

异步结算(syncSettle = false)指 Facilitator 验证支付凭证后立即返回交易哈希,Seller 随即交付资源,链上确认在后台异步完成。"先交付,后确认"——延迟几乎为零,适合高频小额场景。

异步结算安全吗?有坏账风险吗?#

极低。交易广播到链上后几乎不可能被回滚(尤其在 X Layer 的 finality 机制下)。Onchain OS 在验证环节检查交易参数和广播状态,欺诈的可操作窗口极小。对于高频小额调用(如每次 $0.001 的推理 API),异步结算的风险收益比远优于同步结算带来的延迟成本。

我的场景该选哪种?#

简单判断标准:如果单次调用价值低于 $1 且调用频率高,选异步;如果单次调用价值高或对资金确认有严格要求,选同步。大多数 AI Agent 场景适合异步结算。

异步结算失败了怎么办?#

如果链上交易最终未确认(极罕见),卖家可以通过 Onchain OS 的结算状态 API 追踪。协议层面,未确认的交易意味着买家未被实际扣款,损失由卖家承担,但概率极低。

Gas 补贴#

什么是 Gas 补贴?#

Gas 补贴是 OKX 为 X Layer 上的支付交易提供的费用减免。通常链上交易需要支付 Gas 费(矿工/验证者处理费),但在 X Layer 上使用 USDG 或 USDT 进行 x402 支付时,Gas 费为零——由 OKX 承担。

Gas 补贴适用于所有链吗?#

不是。Gas 补贴目前仅适用于 X Layer 上使用 USDG 和 USDT 的支付交易。在其他链上支付时,Gas 费由买家按正常费率承担。

零 Gas 对微支付意味着什么?#

意味着再小的金额都具备经济可行性。在有 Gas 费的链上,一笔 $0.001 的支付如果 Gas 费就要 $0.01,显然不合理。在 X Layer 上 Gas 为零,买家的实际成本 = 卖家标价,没有额外开销。这是 AI Agent 高频小额调用场景的基础条件。

Gas 补贴会取消吗?#

Gas 补贴政策取决于 OKX 的运营策略。建议关注 Onchain OS 官方公告获取最新信息。即使未来政策调整,X Layer 的 Gas 费率本身也远低于以太坊主网等高成本链。

KYT#

什么是 KYT?#

KYT(Know Your Transaction)是交易级别的合规审查技术。它通过分析链上资金流向,识别与制裁名单地址、混币器、暗网市场、被盗资金等高风险实体关联的交易。

KYT 和 KYC 有什么区别?#

KYC(Know Your Customer)是对 "人" 的身份验证——你是谁、住哪、身份证号。KYT 是对 "交易" 的风险评估——这笔钱从哪来、是否涉及高风险活动。x402 协议不要求用户注册和 KYC,但 Onchain OS 通过 KYT 在交易层面实现合规,在保持匿名性的同时过滤违规资金。

KYT 审查会拖慢支付速度吗?#

不会有感知。KYT 审查与交易验证并行执行,对端到端延迟的影响在毫秒级。

如果我的交易被 KYT 标记了怎么办?#

被标记的交易将不会通过验证,服务器不会返回付费资源,买家不会被扣款。具体的拒绝原因会通过错误码返回。如果你认为是误判,可以联系 Onchain OS 支持团队。

作为卖家,我需要自己做 KYT 吗?#

不需要。Onchain OS 在交易验证环节自动执行 KYT 检查,对卖家完全透明。这是 Onchain OS 相比裸 x402 协议的核心差异之一。