Chuyển đến nội dung chính

x402 là gì?

x402 là giao thức thanh toán máy-với-máy được xây dựng xung quanh HTTP 402 Payment Required. Nó cho phép các tác nhân AI tự động thanh toán cho quyền truy cập API mà không cần sự can thiệp của con người. AgentWallex triển khai x402 v2 với payload ủy quyền EIP-3009.

Header x402 v2

Giao thức sử dụng ba header HTTP:
HeaderHướngMục đích
PAYMENT-REQUIREDServer đến ClientThách thức 402 với thông tin giá cả
PAYMENT-SIGNATUREClient đến ServerPayload thanh toán đã ký
PAYMENT-RESPONSEServer đến ClientXác nhận thanh toán

Luồng Thanh toán

Client Agent               Paid API               AgentWallex
    |                        |                         |
    |-- GET /resource ------>|                         |
    |<-- 402 + PAYMENT-REQUIRED                        |
    |                        |                         |
    |-- POST /api/v1/x402/pay -----------------------> |
    |                        |     (sign + policy)     |
    |<-- payment_info        |                         |
    |                        |                         |
    |-- GET /resource + PAYMENT-SIGNATURE -----------> |
    |<-- 200 + PAYMENT-RESPONSE                        |
1

Tác nhân yêu cầu tài nguyên

Tác nhân gửi yêu cầu HTTP tiêu chuẩn đến endpoint API trả phí.
2

Server trả về 402

API phản hồi với HTTP 402 và header PAYMENT-REQUIRED chứa chi tiết giá cả (số tiền, token, chuỗi, địa chỉ payTo).
3

Tác nhân thanh toán qua AgentWallex

Tác nhân gửi chi tiết thanh toán đến POST /x402/pay. AgentWallex đánh giá chính sách và ký thanh toán.
4

Tác nhân thử lại với bằng chứng thanh toán

Tác nhân thử lại yêu cầu ban đầu với header PAYMENT-SIGNATURE được đính kèm.
5

Server xác minh và phản hồi

API xác minh chữ ký thanh toán (qua facilitator AgentWallex) và trả về tài nguyên.

Sử dụng API x402

Kiểm tra URL có Hỗ trợ x402 không

curl -X POST https://api.agentwallex.com/api/v1/x402/check \
  -H "X-API-Key: awx_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://paid-api.example.com/v1/data"}'

Tạo Ngân sách Phiên

Phiên cho phép bạn ủy quyền trước ngân sách chi tiêu cho các cuộc gọi API lặp lại:
curl -X POST https://api.agentwallex.com/api/v1/x402/sessions \
  -H "X-API-Key: awx_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "agent_uuid",
    "budget_limit": "100.00",
    "chain": "eip155:84532",
    "ttl_seconds": 3600,
    "allowed_urls": ["https://paid-api.example.com/v1/data"]
  }'

Kích hoạt Thương lượng Thanh toán

curl -X POST https://api.agentwallex.com/api/v1/x402/pay \
  -H "X-API-Key: awx_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "agent_uuid",
    "target_url": "https://paid-api.example.com/v1/data",
    "session_id": "optional_session_uuid",
    "chain": "eip155:84532"
  }'
Phản hồi bao gồm payment_info với:
TrườngMô tả
ledger_idID mục sổ cái nội bộ
amountSố tiền thanh toán
fee_amountPhí nền tảng được trừ
fee_rateTỷ lệ phí được áp dụng
tokenToken được sử dụng (ví dụ: USDC)
chainChuỗi được sử dụng cho thanh toán
statusTrạng thái thanh toán

Tích hợp SDK

Bộ chặn HTTP Tự động

SDK TypeScript cung cấp bộ chặn xử lý toàn bộ luồng x402 tự động:
const fetchWithPayment = aw.x402.httpInterceptor({
  agentId: "agent_abc123",
  chain: "eip155:84532",
});

// This automatically handles 402 challenges
const response = await fetchWithPayment("https://paid-api.example.com/v1/data");
const data = await response.json();

Luồng Thủ công

// 1. Create a session budget
const session = await aw.x402.createSession({
  agentId: "agent_abc123",
  budgetLimit: "100.00",
  chain: "eip155:84532",
  ttlSeconds: 3600,
  allowedUrls: ["https://paid-api.example.com/v1/data"],
});

// 2. Pay for an API call
const result = await aw.x402.pay({
  agentId: "agent_abc123",
  targetUrl: "https://paid-api.example.com/v1/data",
  sessionId: session.id,
  chain: "eip155:84532",
});

// 3. Or pay using the session directly
await aw.x402.sessionPay(session.id, {
  targetUrl: "https://paid-api.example.com/v1/data",
});

Dành cho Nhà cung cấp Dịch vụ

Nếu bạn cung cấp API trả phí, server của bạn nên trả về thách thức x402 v2 khi thiếu thanh toán.

Trả về 402 với PAYMENT-REQUIRED

Mã hóa thách thức JSON (base64) vào header PAYMENT-REQUIRED:
{
  "x402Version": 2,
  "resource": "https://your-api.com/v1/data",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "amount": "0.10",
      "asset": "USDC",
      "payTo": "0xYourAddress",
      "maxTimeoutSeconds": 300
    }
  ]
}

Xác minh và Thanh toán

Sử dụng các endpoint facilitator của AgentWallex:
# Verify a payment signature
POST /api/v1/x402/facilitator/verify

# Settle a verified payment
POST /api/v1/x402/facilitator/settle

# Query supported chains
GET /api/v1/x402/facilitator/supported

Giá trị Mặc định Vận hành

Tham sốGiá trị
Khoảng thời gian thanh toán300 giây
Ngưỡng thanh toán$10.00
Độ trễ thanh toán tối đa3,600 giây
Chuỗi được hỗ trợeip155:84532, eip155:8453, eip155:1, eip155:137