Commerce Сложно

x402: HTTP 402 платежи для AI-агентов

Что такое x402 (Coinbase), как агент платит через HTTP 402, минимальный пример, как объявить поддержку и как мы это проверяем.

Обновлено:

Что это

x402 — открытый протокол платежей поверх HTTP от Coinbase, оживляющий зарезервированный статус HTTP 402 Payment Required. Сервер отвечает 402 с заголовком PAYMENT-REQUIRED, агент шлёт PAYMENT-SIGNATURE, facilitator проверяет подпись и проводит on-chain транзакцию — всё без участия человека. Платежи в стейблкоинах (USDC) на сетях Base, Polygon, Arbitrum, Solana.

Зачем это AI-агентам

Автономным агентам нужен способ платить без человека. x402 закрывает: pay-per-use API (агент платит $0.001 за вызов), монетизацию агентского трафика без подписок, межагентные расчёты. К апрелю 2026 — ~165 млн транзакций, ~69 тыс. подключённых агентов.

Минимальный рабочий пример

GET /premium-report HTTP/1.1

HTTP/1.1 402 Payment Required
PAYMENT-REQUIRED: scheme="exact", amount="0.01", currency="USDC",
  network="eip155:8453", recipient="0x..."

# Агент платит и повторяет запрос:
GET /premium-report HTTP/1.1
PAYMENT-SIGNATURE: <signed_payment_payload>

HTTP/1.1 200 OK

network — в формате CAIP-2 (eip155:8453 = Base).

Как объявить поддержку

В ai-agent.json:

{ "payments": { "x402": "https://api.example.com/x402" } }

Или Link-заголовком:

Link: <https://api.example.com/x402>; rel="x402-endpoint"

Типичные ошибки

  • Объявили endpoint, но он не реализует флоу 402/PAYMENT-SIGNATURE.
  • Неверный network (не CAIP-2) — агент не поймёт сеть.
  • Нет декларации ни в ai-agent.json, ни в Link — агент не узнает о поддержке.

Как проверить

Проверка x402 информационная (на балл не влияет). Сканер ищет декларацию двумя способами: поле payments.x402 в /.well-known/ai-agent.json или Link-заголовок rel="x402-endpoint". Реальный платёжный флоу не тестируется.

curl -s https://example.com/.well-known/ai-agent.json | jq '.payments.x402'
curl -sI https://example.com/ | grep -i 'x402-endpoint'

Источники