跳到主要内容

AI 支付协议概览

AI 支付协议是一套面向协议的无鉴权 API,旨在使 AI Agent 和自主客户端能够代表用户发现、协商并执行支付。

与依赖服务端 API Key 的核心商户 API 不同,AI 支付协议在所有状态变更操作中都使用 EIP-712 签名,确保用户明确授权支付流程的每一步。

核心概念

1. EIP-712 授权

所有状态变更 API(如创建会话或准备支付)都需要来自支付者钱包的 EIP-712 签名。该机制取代了传统的 API Key,主要有两个目的:

  1. 认证:验证请求是否来自 payer 地址。
  2. 授权:确保用户已明确同意特定的支付参数(金额、代币、链)。

每个请求体都包含一个 message 对象和一个 signature 字符串。message 必须遵循 API 在上一步中提供的特定 EIP-712 类型定义。

2. AI 视图 (AI View)

每个 API 响应都包含一个 aiView 对象。这是当前状态的“协议视图”,专为 AI Agent 消费而设计。它包含:

  • pricingModel:描述价格如何计算(例如 "fixed" 固定价格)。
  • workflow:指示交易的当前阶段(例如 link_readysession_ready)以及允许的 nextAction(下一步动作)。
  • Requirements (要求):下一步操作的具体指令,例如 createPaymentSessionRequirementpreparePaymentRequirement。这些对象提供了构建下一个请求所需的精确 EIP-712 类型定义。

协议工作流

AI 支付的典型生命周期如下:

  1. 发现:Agent 获取 Payment Link (GET /payment/link/:id)。响应包含 aiView,其中列出了可用的 supportedPaymentTokenscreate_payment_session 的签名要求。
  2. 协商与授权:Agent 向用户展示选项。用户选择链和代币,并签署 create_payment_session 消息。
  3. 创建会话:Agent 将签名提交给 POST /payment/session/create 以创建 Payment Session
  4. 准备:Agent 获取会话状态。如果准备就绪,用户签署 prepare_payment 消息以授权资金转账。
  5. 执行:Agent 将准备签名提交给 POST /payment/prepare。服务器返回原始区块链 calldata。Agent(或前端)将此交易广播到区块链。

统一错误处理

所有 AI 支付 API 均遵循平台的 统一错误处理 标准。业务逻辑错误将返回 HTTP 200 OK,并在 JSON 响应体中包含非零的 code 字段。Agent 必须检查 code === 0 以确认成功。