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-2 | USDC 合约 |
|---|---|---|
| Base | eip155:8453 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| Ethereum | eip155:1 | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 |
| Polygon | eip155:137 | 0x3c499c542cef5e3811e1192ce70d8cc03d5c3359 |
验证规则
- 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 扩展。