跳转到内容

核心概念

几个概念一旦理清,其余一切都会变得显而易见。

三个层次:协议 · 结算轨 · 账户

Section titled “三个层次:协议 · 结算轨 · 账户”

把它们分开看 —— 它们各自独立变化。

层次 它回答的问题 示例
协议 agent 怎样发起支付请求? ACP、A2A、UCP、AP2、Visa TAP、Skyfire
结算轨 怎样流动 卡 · 账户转账
账户 钱最终落到哪里 你的 Curless 账户

同一种货币可以在不止一种协议上完成结算,而同一种协议也可以承载不止一条结算轨 —— 所以你接受的协议与钱实际如何流动是解耦的。你接受所有协议; AgentBank 根据货币来选择结算轨。

AgentBank 托管你的目录。在生产模型里,你的后端为每一个结账定价,用你自己的 API key 向网关打开它(商户报价);随后由 agent 完成它。反欺诈依然成立 —— 价格来自你经过认证的请求,绝不来自买方。

你的后端 ──(你的 API key,"这是 €1,920")──▶ AgentBank 打开一个结账
买方 agent ──(完成这个结账)───────────▶ 用它自己的资金支付
钱结算到你的账户

对于目录小而静态的商户,还有一条 目录驱动 路径(由网关根据你注册的目录定价),但大多数接入都是商户报价 —— 让定价留在它该在的地方。

每一个金额都是该货币最小单位下的整数 —— 绝不是浮点数。

  • 法币(USD/EUR):2 位小数。192000 = €1,920.00。

同一个整数在不同货币下代表不同的钱,所以在比较金额之前,务必先看清一种货币的精度。

每个结账都会变成一个持久的订单,其状态由支付情况推导得出:

订单状态 含义
pending_payment 已打开,等待 agent 支付。
paid 已捕获 / 已结算 —— 钱已流动。
refunded 已通过 Curless 全额或部分退款。
disputed 处于争议中。
canceled 扣款失败,一个未付费的结账超时。

未付费的结账(ACP/UCP)会在一个时间窗口(默认 30 分钟)后自动取消,以免它们一直挂在待付状态。校验/记录型协议(Skyfire)永远不会被自动取消 —— 它们的支付意图是在付款那一刻创建的,而不是作为一个“稍后付款”的会话。

  • Base URL: https://mcp.curless.ai
  • 商户认证: 用你的 Curless API key,作为 Authorization: Bearer …。一个凭据搞定一切 —— 打开结账、读取订单、读取余额。
  • 测试 vs 正式: 你的 Curless 钱包 会发一个测试 key(测试模式 —— 不动真钱,用于端到端测试)和一个 正式 key(生产)。两者作用域隔离,测试和正式数据互不混。
  • Agent 认证 / 远程连接器: OAuth 2.0。参见商户 MCP 连接器