Paid checks with x402
Agents pay per check in USDC. The report is deterministic; the payment receipt travels in an outer envelope.
Test network only: Polygon Amoy (eip155:80002). Real-money payments are switched off until the owner approves launch.
Pricing
- Standard keys: $0.10 per check (100000 atomic USDC)
- Intelligence Hub node keys: $0.05 per check (50000 atomic USDC)
The tier is chosen from your access key, never from the request. Invalid documents are rejected before any charge.
1. Request a check
curl -i -X POST https://<your-host>/api/public/v1/paid/checks/financial-consistency \ -H "Authorization: Bearer <access-key>" \ -H "Content-Type: application/json" \ -d @document.json
Without payment you get HTTP 402 with a payment-required header listing the exact amount, asset and recipient 0x2d2Ae8ECC19EA7970E1E3Df50598aA5a97072515.
2. Pay and retry
Sign an EIP-3009 authorization with any x402 v2 client and resend the same request with a payment-signature header. The facilitator pays gas; settlement is verified on-chain before the report is released.
import { wrapFetchWithPayment } from "x402-fetch";
const pay = wrapFetchWithPayment(fetch, signer);
const res = await pay(url, { method: "POST", headers, body });
const envelope = await res.json(); // envelope.report, envelope.paymentReference3. Safe retries
- Reuse the same
clientRequestIdto retry; a completed check returnsx-idempotent-replay: truewith no second charge. - A
clientRequestIdreused for a different document returns 422. - 409
settlement_pendingor 500report_failed_paid: retry the same request — the recorded payment is reused.
Free check
POST /api/public/v1/checks/financial-consistency stays free within hourly limits.