PonponPay

x402 Agent 支付

用标准 x402 exact 支付保护 API、数字内容或 Agent 可调用资源。Agent 收到 HTTP 402 后签署 USDC 授权,PonponPay 负责验证签名、锁定 nonce 并提交链上结算。

接入方式

x402 必须在服务端使用 API Key 模式。不要把 API Key 或 x402 settlement 代码放到浏览器包中。

import { ponponpayX402 } from '@ponponpay/sdk/x402';

const x402 = ponponpayX402({
  apiKey: process.env.PONPONPAY_API_KEY!,
  resource: {
    resource: 'https://merchant.example.com/api/premium-data',
    method: 'GET',
    price: '$0.01',
    maxAmountRequired: '10000',
    network: 'eip155:8453',
    asset: 'USDC',
    payTo: '0xYourMerchantSettlementWallet',
    description: 'Premium market data'
  }
});

export async function GET(request: Request) {
  const result = await x402.verifyAndSettle(request);
  if (!result.paid) {
    return result.required();
  }

  return Response.json({ data: 'premium payload' });
}

支持网络

当前仅支持标准 EVM exact 流程,也就是 Circle USDC 的 transferWithAuthorization。

网络CAIP-2USDC 合约
Baseeip155:84530x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
Ethereumeip155:10xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
Polygoneip155:1370x3c499c542cef5e3811e1192ce70d8cc03d5c3359

验证规则

  • scheme 必须是 exact。
  • network、asset、assetContract、payTo、amount 必须和资源配置匹配。
  • resource URL 和 HTTP method 会强制匹配当前请求。
  • validAfter / validBefore 必须处于有效窗口内,nonce 只能结算一次。
  • EIP-712 签名必须恢复到 authorization.from。

暂不支持的链

BSC、Tron、Solana、TON、BTC 不属于当前标准 EVM exact 流程。后续如果支持,需要单独的 x402 scheme 或 PonponPay 扩展。