一、核心挑战:Agent为什么"付不了钱"

传统支付基础设施的每一层都假设交易发起方是一个经过KYC的自然人:发卡行基于持卡人身份核发卡片,3-D Secure基于浏览器与设备指纹做强客户认证(SCA),争议处理(Chargeback)依赖持卡人本人的签名与申诉。AI Agent作为交易发起者,在这套体系里几乎没有合法位置:

  1. 无金融账户:Agent无法开立银行账户或申请信用卡,它持有的只是一段在推理运行时中执行的代码与一组密钥。
  2. 无法律身份:Agent不是法人,无法承担合同义务,也无法成为持卡协议的签约主体。
  3. 无强认证通道:Agent的"行为"是模型推理的输出,没有指纹、没有手机短信、没有生物特征,传统SCA通道全部失效。
  4. 授权边界模糊:用户对Agent的指令是自然语言("帮我买下周的咖啡豆"),而支付网络需要的是精确到分、精确到商户类别的可验证授权。

这一矛盾的解法不是给Agent发一张卡,而是构建一套密码学信任链:用可验证数字凭证(Verifiable Digital Credential, VDC)把"人类用户的授权意图"以一种任何交易参与方都能独立验证的方式,沿交易路径传递下去。这条信任链的技术载体,就是本文拆解的三层协议栈与AP2 Mandate机制。


二、三层支付协议栈架构总览

AI Agent自主支付的工程实现并非单一协议,而是一个自下而上的三层协议栈:协议层负责"Agent如何调用工具",PSP层负责"钱怎么走",网络层负责"信任如何被全网验证"。

graph TD subgraph 协议层 Protocol Layer MCP["MCP - Model Context Protocol<br/>标准化Agent调用工具的方式<br/>JSON-RPC over stdio/SSE/HTTP<br/>97M+月下载 / 10000+活跃服务器"] end subgraph PSP层 Payment Service Provider Layer STRIPE["Stripe Agent Toolkit<br/>mcp.stripe.com<br/>~25种支付操作"] PAYPAL["PayPal MCP Server<br/>订单/支付/退款"] SQUARE["Square MCP Server<br/>目录/结账/对账"] AGENTPAY["AgentPay MCP<br/>HTTP 402自动赎回<br/>硬性消费上限"] end subgraph 网络层 Payment Network Layer VISA["Visa Intelligent Commerce<br/>+ Trusted Agent Protocol (TAP)<br/>Agent专属支付凭证"] MC["Mastercard Agent Pay<br/>+ Agentic Tokens<br/>可编程guardrails"] AMEX["Amex ACE<br/>Agent Commerce"] X402["x402 / A2A x402 Extension<br/>HTTP 402 + 稳定币链上结算<br/>USDC on Base/Ethereum/Solana"] end subgraph 授权层 Authorization Layer 横切 AP2["Google AP2 - Agent Payment Protocol<br/>Mandate信任链(VDC)<br/>Intent / Cart / Payment 三Mandate"] ACP["ACP - Agentic Commerce Protocol<br/>商户能力发现与支付方式协商"] end MCP --> STRIPE MCP --> PAYPAL MCP --> SQUARE MCP --> AGENTPAY STRIPE --> VISA STRIPE --> MC PAYPAL --> VISA SQUARE --> VISA AGENTPAY --> X402 AP2 -.横切授权.-> MCP AP2 -.横切授权.-> VISA AP2 -.横切授权.-> X402 ACP -.能力发现.-> STRIPE ACP -.能力发现.-> MC

理解这张图的关键在于分清授权(Authorization)与结算(Settlement)的职责切分:AP2只携带授权、不搬运资金,因此一个AP2 Mandate既可以上游对接Mastercard卡轨道,也可以对接x402稳定币轨道——授权与结算被解耦,这是整个架构能同时兼容法币与加密货币的根本原因。


三、协议层:MCP——Agent调用支付工具的统一契约

3.1 MCP在支付栈中的定位

Model Context Protocol(MCP)由Anthropic发起,已成为事实上的Agent-工具交互标准。它标准化了三件事:工具发现(tools/list)、工具调用(tools/call)、资源读取(resources/read),全部以JSON-RPC 2.0承载,传输层支持stdio、HTTP+SSE、Streamable HTTP。在支付场景中,MCP的价值在于:把"创建支付意图""发起退款""查询交易状态"这些支付原语,统一成LLM可理解、可调用的工具接口,使Agent无需为每个PSP编写专属胶水代码。

截至2026年中,MCP生态已达到97M+月下载量、10000+活跃服务器的规模,支付类MCP服务器是其增长最快的垂直子类之一。

3.2 MCP支付工具调用代码示例(JSON-RPC格式)

下面是一个Agent通过MCP调用Stripe Agent Toolkit创建Payment Intent的完整JSON-RPC交互。首先是工具发现:

// 1. Agent 向 MCP Server 发起 tools/list 请求
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

// 2. MCP Server 返回可用工具(节选支付相关)
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [
      {
        "name": "create_payment_intent",
        "description": "创建一个Stripe Payment Intent,用于接收持卡人付款",
        "inputSchema": {
          "type": "object",
          "properties": {
            "amount": { "type": "integer", "description": "金额,最小货币单位(分)" },
            "currency": { "type": "string", "description": "ISO 4217 货币代码" },
            "metadata": { "type": "object", "description": "附加元数据,如 mandate_id" }
          },
          "required": ["amount", "currency"]
        }
      },
      {
        "name": "create_refund",
        "description": "对指定Charge发起全额或部分退款"
      }
    ]
  }
}

随后Agent根据用户意图发起实际调用,注意metadata字段携带了AP2 Mandate的引用,这是授权链与结算链的缝合点:

// 3. Agent 调用 create_payment_intent 工具
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "create_payment_intent",
    "arguments": {
      "amount": 4789,
      "currency": "usd",
      "metadata": {
        "ap2_intent_mandate_id": "mandate_intent_01HZX...",
        "ap2_cart_mandate_id": "mandate_cart_01HZX...",
        "agent_id": "did:web:shopper.acme.com",
        "user_id": "did:web:user.alice.com"
      }
    }
  }
}

// 4. MCP Server 返回 Payment Intent
{
  "jsonrpc": "2.0",
  "id": 2,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"id\":\"pi_3PqX...\",\"client_secret\":\"pi_3PqX..._secret_...\",\"status\":\"requires_payment_method\"}"
      }
    ],
    "isError": false
  }
}

这里有一个常被忽略的工程细节:MCP的tools/call结果以content数组返回(支持text/image/resource多模态),而非直接返回业务对象。这意味着Agent运行时必须解析content[0].text中的JSON才能拿到Payment Intent ID。在生产环境中,应在MSP Server侧对支付结果做结构化封装,避免LLM误读isError字段而把成功响应当作失败重试,造成重复扣款。


四、PSP层:Agent Toolkit的标准化

4.1 Stripe Agent Toolkit

Stripe通过mcp.stripe.com暴露了远程托管的MCP Server,提供约25种操作,覆盖Payment Intents、Checkout Sessions、Customers、Subscriptions、Refunds、Invoices、Webhook事件等全链路能力。其设计哲学是"零本地凭证":Agent通过OAuth连接商户的Stripe账户,无需在Agent运行时内存中落盘API Key,从根上降低了凭证泄露面。

4.2 PayPal MCP与Square MCP

PayPal MCP Server封装了订单创建(Orders v2)、支付捕获、退款与交易查询;Square MCP Server则侧重线下/全渠道对账,提供目录(Catalog)、结账(Checkout)、订单(Orders)与支付(Payments)能力。三者共同构成了PSP层的"标准件库",使上层AP2授权可以无缝下发到不同的资金通道。

4.3 AgentPay MCP:HTTP 402自动赎回

AgentPay MCP是PSP层中面向加密轨道的特殊成员。它的核心机制是:当Agent发起HTTP请求并收到402 Payment Required响应时,自动完成链上支付并重试原始请求。其安全设计有三个要点:

  • 硬性消费上限:在MCP Server配置中设定不可逾越的单笔与累计上限,即使LLM被提示注入诱导,也无法超额签署交易;
  • 人工审批模式:对于超过阈值的支付,挂起交易并向用户推送审批请求,等待人类确认后才广播;
  • 链上审计追踪:每笔支付都产生不可篡改的链上收据,与AP2 Mandate的hash chain对齐,形成完整的争议解决证据链。

五、网络层:Visa TAP与Mastercard Agent Pay

网络层是信任链的"终局裁判"——它决定了商户最终能否相信一笔Agent发起的交易。2025-2026年,两大卡组织分别推出了Agent原生的网络级框架。

5.1 Visa Trusted Agent Protocol (TAP)

TAP是Visa Intelligent Commerce的组成部分,由Visa与Cloudflare联合创建,并吸纳Shopify、Microsoft、Stripe的输入,于2025年10月发布。其核心是agent-specific payment credentials密码学签名的HTTP消息:Agent在每次与商户交互时携带一个安全数字签名,商户无需改造支付栈即可即时验证"这是一个经授权的合法Agent,而非匿名爬虫"。TAP被刻意设计为叠加在现有Web与商户基础设施之上的标准化信任层,而非另起炉灶的支付轨道。

5.2 Mastercard Agent Pay与Agentic Tokens

Mastercard Agent Pay是一个网络级框架,与EMVCo tokenization、3-D Secure处于同一层级。其核心创新是Agentic Tokens(代理令牌)——一种新型token类型,除替代真实卡号外,还携带三类元数据:Agent身份、授权用户、策略约束。可编程guardrails允许发卡机构在token上直接绑定消费限额与商户类别限制(MCC restriction),使"消费上限"从应用层下沉到网络层强制执行。Mastercard已披露Agent Pay存在生产环境真实交易。

5.3 Agentic Token vs 传统Network Token对比

维度 传统Network Token Agentic Token
承载主体 持卡人设备/钱包(手机、手表) 经过验证注册的AI Agent
身份信息 仅Device Primary Account Number的token化映射 Agent身份 + 授权用户 + 策略元数据三联体
消费控制 依赖发卡行风控规则,事后拦截 可编程guardrails,网络层强制消费限额与MCC限制
授权来源 持卡人本人主动刷卡/绑卡 用户签发的Mandate(VDC)委托授权
认证方式 3-D Secure SCA(指纹/OTP) 密码学签名 + Mandate链验证
审计粒度 交易级,无意图上下文 携带购买意图(自主/辅助)、购物车、有效期窗口
争议处理 持卡人申诉,he-said-she-said Mandate hash chain提供可验证争议证据
部署层级 EMVCo tokenization 与EMVCo/3DS同层,网络级框架

这张表揭示了Agentic Token的本质区别:它把"谁授权、授权做什么、授权上限多少"三个原本散落在应用层的约束,编码进token本身,使网络层成为策略的执行点而非仅仅是资金的搬运点。


六、Google AP2:Mandate信任链的工程实现

6.1 基于角色的架构

AP2(Agent Payments Protocol)是Google开源的Agent支付授权协议,作为Agent2Agent(A2A)协议的扩展,并与MCP协同。AP2定义了六个角色:

  • Users:最终人类用户,是授权链的唯一源头;
  • User Agents / Shopping Agents:代表用户执行购物与支付的AI Agent;
  • Credential Providers:签发并托管支付凭证(如钱包、发卡行);
  • Merchant Endpoints:商户侧接收Agent请求的端点;
  • Merchant Payment Processors:商户收单处理器;
  • Networks and Issuers:支付网络与发卡机构,执行最终授权与结算。

6.2 Mandate:可验证数字凭证(VDC)

AP2的灵魂是Mandate(授权书)机制——一种密码学签名的可验证数字凭证(VDC),编码用户的支付指令。Agent在交易中携带Mandate,商户、支付网络及任何参与方都可独立验证其签名,确认用户确实授权了这一具体行为。AP2定义三类核心Mandate:

  • Intent Mandate(意向授权):用户预授权Agent在某一范围内消费,包含消费限额、类别约束、时间窗口、可选商户白名单、Agent身份绑定。Agent据此可在无实时人工审批下自主行动。
  • Cart Mandate(购物车授权):在购买时刻签发,包含具体商品与数量、精确价格、商户身份、配送信息、用户签名与时间戳。
  • Payment Mandate(支付授权):下发给支付网络,携带对Intent与Cart Mandate的引用、token化支付方式凭证、Agent身份与欺诈信号,标记本次交易有Agent参与。

6.3 AP2 Mandate的JSON结构示例

下面是一个Cart Mandate的JSON结构示例,展示VDC的核心字段与签名封装:

{
  "mandate_id": "mandate_cart_01HZX9F8T7Y6K5J4",
  "type": "cart",
  "version": "ap2-1.0",
  "issuer": "did:web:user.alice.com",
  "subject_agent": "did:web:shopper.acme.com",
  "issued_at": "2026-07-23T08:14:22Z",
  "expires_at": "2026-07-23T08:24:22Z",
  "intent_mandate_ref": "mandate_intent_01HZX9A0B1C2D3E4",
  "merchant": {
    "id": "did:web:store.specialty-coffee.com",
    "name": "Specialty Coffee Roasters"
  },
  "cart": {
    "items": [
      { "sku": "BEAN-ETHIOPIA-250G", "name": "耶加雪菲 250g", "qty": 2, "unit_price": 1899 },
      { "sku": "SHIP-STANDARD", "name": "标准配送", "qty": 1, "unit_price": 0 }
    ],
    "currency": "usd",
    "total": 3798
  },
  "policy": {
    "max_amount": 5000,
    "allowed_mcc": ["5499"],
    "valid_for_seconds": 600
  },
  "prev_hash": "sha256:9f2c...e41a",
  "proof": {
    "type": "Ed25519Signature2020",
    "verification_method": "did:web:user.alice.com#key-1",
    "proof_value": "z3Xt...kQ7v",
    "proof_purpose": "assertionMethod",
    "created": "2026-07-23T08:14:22Z"
  }
}

几个关键设计点:

  1. prev_hash构成hash chain:Cart Mandate的prev_hash指向Intent Mandate的哈希,Payment Mandate的prev_hash指向Cart Mandate的哈希。任何对上游Mandate的篡改都会使下游哈希失配,从而实现可验证的争议解决。
  2. proof采用W3C VC的Ed25519Signature2020:分离签名与负载,便于任何方仅凭公钥(verification_method)独立验证。
  3. policy内嵌约束:限额与MCC限制写在凭证内,验证方无需查询外部策略库即可判定合法性。

6.4 Mandate签名验证流程

Mandate的验证是一个确定性流水线,任何参与方(商户、网络、收单行)都可独立执行:

flowchart TD A[收到Agent携带的Mandate链] --> B[步骤1: 解析proof.verification_method<br/>解析DID文档获取公钥] B --> C[步骤2: 用Ed25519公钥<br/>验证proof_value对负载的签名] C --> D{签名有效?} D -- 否 --> X[拒绝: Mandate伪造/篡改] D -- 是 --> E[步骤3: 校验expires_at未过期<br/>与issued_at时间窗] E --> F{时间有效?} F -- 否 --> Y[拒绝: Mandate过期] F -- 是 --> G[步骤4: 重算prev_hash<br/>与上游Mandate哈希比对] G --> H{hash chain连续?} H -- 否 --> Z[拒绝: 链断裂/上游被篡改] H -- 是 --> I[步骤5: 校验policy<br/>金额/MCC/Agent身份匹配] I --> J{策略满足?} J -- 否 --> W[拒绝: 超额/越权] J -- 是 --> K[验证通过: 接受本次授权]

整个验证过程零信任、零外部依赖——验证方不需要回调用户的身份服务,也不需要信任Agent本身,只需密码学即可确证"这是用户授权过的、未被篡改的、在范围内的交易"。这正是AP2区别于API Key/OAuth预付钱包模式的根本所在:它把"用户说了yes"变成一个可被全网独立验证的密码学事实。

6.5 兼容性:法币与加密货币的统一授权

AP2的Mandate框架与结算轨道解耦,因此能同时兼容:

  • 传统卡网络:通过Mastercard、Visa、Amex的合作伙伴关系,Payment Mandate可触发标准卡授权;
  • 加密货币轨道:通过A2A x402扩展(与Coinbase、MetaMask联合开发),同一套Mandate可授权USDC链上支付。

这意味着一个AP2实现既能授权一笔Mastercard卡支付,也能授权一笔经x402在Base链上结算的USDC支付——授权逻辑一份,结算通道多选。


七、x402:HTTP 402的复活与链上支付原语

7.1 协议本质

x402由Coinbase发起,是开源、网络中立的协议,复活了HTTP中沉睡多年的402 Payment Required状态码。它把支付嵌入HTTP请求生命周期:服务端在返回数据前要求并收取一笔稳定币(USDC)付款,无需API Key、无需订阅、无需注册。x402支持EVM兼容网络(Base、Ethereum、Injective等)与SVM兼容网络(Solana)。

7.2 x402支付流程的HTTP交互示例

下面是一次完整的x402交互,展示402挑战、签名、赎回、重试四个阶段:

// ─── 阶段1: 客户端发起普通请求 ───
GET /v1/marketdata/TSLA-USD HTTP/1.1
Host: api.quantfeed.example
Accept: application/json


// ─── 阶段2: 服务端返回 402 与报价 ───
HTTP/1.1 402 Payment Required
Content-Type: application/json

{
  "x402_version": 1,
  "accepts": [{
    "scheme": "exact",
    "network": "base-mainnet",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "description": "$0.01 USDC for TSLA market data"
  }],
  "max_retry_after_seconds": 60
}


// ─── 阶段3: 客户端签署USDC转账(不上链),
//         由facilitator代为广播并等待确认 ───
// (客户端钱包对EIP-3009 transferWithAuthorization签名)


// ─── 阶段4: 客户端携带支付凭证重试请求 ───
GET /v1/marketdata/TSLA-USD HTTP/1.1
Host: api.quantfeed.example
X-PAYMENT: base-mainnet,0x8335...,10000,0x4f2a...signature...0xb1c3


// ─── 阶段5: 服务端经facilitator验证收据后返回数据 ───
HTTP/1.1 200 OK
Content-Type: application/json
X-PAYMENT-RESPONSE: 0x9d8e...receipt...

{ "symbol": "TSLA", "price": 248.37, "ts": "2026-07-23T08:15:01Z" }

x402的核心抽象是facilitator(促成器):它代为处理签名验证、RPC提交、Gas估算、链上确认轮询,使API服务端保持纯Web原生——服务端只需一个中间件调用即可把任意端点变成按请求付费的服务。对于Agent而言,x402消除了"预先注册凭证"这一瓶颈:一个持有USDC余额的Agent可以调用任何x402保护的端点,无需事先开通账户,每次请求都产生一条不可篡改的链上收据作为审计轨迹。


八、四Mandate链式验证时序图

AP2规范定义三类核心Mandate(Intent / Cart / Payment)。在需要完整可验证争议解决的扩展实现(如VCAP-AP2 verified commerce settlement绑定)中,会在交易完成后追加第四个Fulfillment/Settlement Mandate(履约结算授权),闭合"授权→下单→支付→履约"的可验证环路。四Mandate通过hash chain首尾相连,任一环节篡改都会使链条断裂。

sequenceDiagram autonumber participant U as 用户 User participant A as Shopping Agent participant M as 商户端点 Merchant participant P as 收单处理器 Processor participant N as 支付网络/链上 Network Note over U,N: ① Intent Mandate —— 用户预授权 U->>A: 下达购物意图 + 签发 Intent Mandate<br/>(限额/类别/有效期/Agent身份) A->>A: 校验 Intent 签名与时间窗 Note over U,N: ② Cart Mandate —— 商户签名购物车 A->>M: 发起选品请求 M-->>A: 返回购物车(商品/价格) A->>U: 呈递 Cart Mandate 请求签名<br/>prev_hash = SHA256(Intent) U-->>A: 签署 Cart Mandate A->>M: 提交 Cart Mandate M->>M: 验证 Intent→Cart hash chain 连续 Note over U,N: ③ Payment Mandate —— 支付授权绑定 A->>P: 发起支付 + Payment Mandate<br/>prev_hash = SHA256(Cart) P->>P: 三Mandate链式验证(签名+hash+policy) P->>N: 提交授权请求(Agentic Token / x402) N-->>P: 授权成功 / 链上确认 P-->>A: 支付完成回执 Note over U,N: ④ Fulfillment Mandate —— 履约结算授权(闭合环路) M->>M: 签发 Fulfillment Mandate<br/>prev_hash = SHA256(Payment)<br/>(配送/数字交付证明) M->>P: 提交 Fulfillment Mandate 触发结算 P->>N: 最终结算 capture N-->>P: 结算完成 Note over U,N: 争议发生时: 任何方可独立重算四段hash chain<br/>定位被篡改环节,提供密码学争议证据

hash chain的工程价值在于争议解决的确定性:当用户否认某笔交易时,网络不再依赖"持卡人申诉 vs 商户举证"的对峙,而是直接重算SHA256(Intent) → SHA256(Cart) → SHA256(Payment) → SHA256(Fulfillment)四段哈希。哪一段失配,责任就在哪一段的签发方——这是从"he-said-she-said"到"密码学举证"的范式跃迁。


九、ACP与ConvPayMAS:能力发现与对话式支付

9.1 ACP (Agentic Commerce Protocol)

ACP解决的是"Agent如何发现商户能力并协商支付方式"的前置问题。在异构PSP与网络并存的生态中,Agent在发起交易前需要知道:该商户接受哪些支付轨道?是否支持AP2 Mandate?是否暴露了x402端点?ACP提供了一套能力发现协议,使Agent能在下单前完成支付方式的自动协商,避免"选好商品却发现无法支付"的尴尬。

9.2 ConvPayMAS:对话式支付多Agent系统

ConvPayMAS(Conversational Payment Multi-Agent System)是AP2三Mandate机制的学术级参考实现,其工程细节具有标杆意义:

  • 跨协议互操作:通过Google A2A协议实现可信握手与安全消息传递,实现Agent-to-Agent的授权传递;
  • AP2三Mandate实现:用Intent/Cart/Payment三Mandate的密码学链实现可验证授权与争议解决;
  • MCP工具服务:支付能力以MCP tools server暴露,支持会话、钱包操作与基于Mastercard基础设施的实时授权;
  • 加密与会话管理:传输层采用AES-256-CBC加密载荷,会话管理采用JWT(HS256)签发与校验;
  • 端到端验证:演示了从对话式结账到实时Mandate验证的完整闭环。

ConvPayMAS证明了一个关键论点:AP2 Mandate链可以与MCP工具调用、A2A跨Agent通信、Mastercard网络授权无缝组合,构成端到端的对话式支付流水线。


十、支付安全威胁模型分析

Agent自主支付引入了传统支付不存在的全新攻击面。以下从四个核心威胁建模。

graph LR subgraph 威胁模型 Threat Model T1[Agent被劫持<br/>Prompt Injection/模型越狱] T2[Mandate伪造<br/>私钥泄露/签名欺骗] T3[重放攻击<br/>截获有效Mandate重用] T4[超额消费<br/>限额绕过/累计失控] end T1 --> D1["缓解: 网络层Agentic Token guardrails<br/>+ 人工审批模式"] T2 --> D2["缓解: HSM/KMS托管私钥<br/>+ W3C VC分离签名负载"] T3 --> D3["缓解: nonce + expires_at<br/>+ prev_hash 单向链防重放"] T4 --> D4["缓解: 硬性消费上限<br/>+ Mandate policy 网络层强制"]

10.1 Agent被劫持(Prompt Injection / 模型越狱)

威胁:攻击者通过提示注入或模型越狱,诱导Agent执行非授权交易,例如在解析网页内容时被恶意指令劫持,转而向攻击者商户付款。

缓解:将消费限额从应用层下沉到网络层Agentic Token的可编程guardrails,即使Agent推理输出被完全控制,网络层也会拒绝超额交易;对超阈值交易启用人工审批模式(AgentPay MCP模式),把最终决策权交还人类。

10.2 Mandate伪造(私钥泄露 / 签名欺骗)

威胁:用户签名私钥泄露,攻击者伪造Intent/Cart Mandate,冒充用户授权。

缓解:私钥托管于HSM/KMS,签名操作在硬件安全边界内完成,应用层永不可读私钥明文;采用W3C VC的分离签名负载结构,签名与业务负载解耦,便于独立审计;Mandate携带verification_method指向DID文档,支持密钥轮换与撤销。

10.3 重放攻击(截获有效Mandate重用)

威胁:攻击者截获一个合法的Cart Mandate,在有效期内重复提交,造成多次扣款。

缓解:每个Mandate内嵌nonce与短expires_at(如10分钟),收单方维护已用nonce去重表;prev_hash构成单向链,使Mandate只能在其所属链的特定位置使用,跨交易重用会导致hash chain断裂;Payment Mandate绑定具体交易ID,使重放的Mandate无法对接新的结算请求。

10.4 超额消费(限额绕过 / 累计失控)

威胁:Agent在Intent Mandate的合法范围内高频小额消费,累计突破用户预期;或利用验证逻辑漏洞绕过单笔限额。

缓解:Intent Mandate同时设置单笔限额与累计(月度)限额,收单方维护累计计数器;策略校验在商户、收单、网络三处冗余执行(defense in depth),任一处拒绝即终止;引入冷却期与速率限制,防止Agent在短时间内发起海量交易。


十一、企业级Agent支付部署架构建议

基于上述协议栈与威胁模型,给出企业级Agent支付部署的架构建议。

11.1 分层部署架构

graph TD subgraph 用户与策略层 IDP[企业身份系统 IdP<br/>签发Intent Mandate] POL[策略引擎<br/>限额/MCC/审批阈值] end subgraph Agent运行时层 RT[Agent Runtime<br/>沙箱隔离] KMS[KMS/HSM<br/>签名私钥托管] AUD[审计日志<br/>Mandate全链留存] end subgraph 协议与网关层 MCPGW[MCP网关<br/>工具路由 + 速率限制] AP2S[AP2 Mandate服务<br/>签发/验证/撤销] ACPD[ACP能力发现<br/>支付方式协商] end subgraph 结算层 PSP[Stripe/PayPal/Square<br/>法币通道] X402F[x402 Facilitator<br/>稳定币通道] end subgraph 网络层 NET[Visa TAP / Mastercard Agent Pay<br/>Agentic Token] end IDP --> AP2S POL --> AP2S RT --> MCPGW AP2S --> RT KMS --> AP2S RT --> AUD MCPGW --> PSP MCPGW --> X402F ACPD --> MCPGW PSP --> NET X402F --> NET

11.2 关键架构原则

  1. 私钥永不落Agent运行时:签名私钥托管于KMS/HSM,Agent运行时仅持有短期委托令牌,运行时被攻破也不影响签名私钥安全。
  2. Mandate全链留存:四Mandate及其hash chain完整写入不可篡改审计日志(建议追加链上锚定),满足合规审计与争议举证需求。
  3. 三处冗余策略校验:消费限额在MCP网关、AP2 Mandate服务、网络层Agentic Token三处独立校验,避免单点绕过。
  4. 双轨结算能力:同时保留法币PSP通道与x402稳定币通道,按交易金额与场景路由——微支付走x402(低费率、链上审计),大额交易走卡网络(争议保护成熟)。
  5. 人工审批兜底:超过阈值的交易强制进入人工审批队列,Agent挂起等待,确保人类对高风险交易保留最终否决权。
  6. 能力发现先行:通过ACP在交易前完成支付方式协商,避免下单后支付失败的资源浪费。

十二、结语

AI Agent自主支付的成熟,本质上是一次信任载体从"账户"到"凭证"的迁移。传统支付信任锚定在持卡人账户与发卡行KYC上;Agent支付则把信任锚定在密码学签名的Mandate链上——Agent无需银行账户,因为它携带的是用户授权的可验证凭证,而非自己的金融身份。

这条从MCP(工具调用契约)到PSP Agent Toolkit(资金通道标准化),再到Visa TAP/Mastercard Agent Pay(网络级信任)与AP2 Mandate(授权信任链)、x402(链上结算原语)的技术路径,正在把"Agent付款"从一个被怀疑的黑箱,变成一个每一步都可被密码学独立验证的透明过程。当四Mandate的hash chain能在争议发生的瞬间指出责任归属时,Agent自主支付才真正跨越了从"能付"到"可信付"的门槛——而这,正是它走向企业级规模化部署的前提。