The First x402 Payment API

Pay per request with USDC. No subscriptions, no credit cards. Just instant micropayments for AI agents and developers.

Why x402?

⚡ Instant Payments

Pay per request, no subscriptions. Perfect for AI agents making autonomous payments.

💰 Micropayments

Pay from $0.001 per request (typical $0.01, range $0.001–$0.10 by endpoint). QR code endpoint free. No minimums, no commitments.

🤖 AI Agent Ready

Native x402 support means AI agents can pay automatically without human intervention.

🌐 No Account Required

Just pay and use. No registration, no credit cards, no KYC.

API Endpoints

Market Data

GET /v1/market/price/:symbol
FREE
GET /v1/market/ohlcv/:symbol
FREE
GET /v1/market/trending
FREE

AI Tools

POST /v1/ai/summarize
FREE
POST /v1/ai/sentiment
FREE
POST /v1/ai/translate
FREE
POST /v1/ai/code-review
$0.05

Crypto Analytics

GET /v1/crypto/wallet-score/:address
$0.05
GET /v1/crypto/token-analysis/:address
$0.10
GET /v1/crypto/whale-alerts
FREE

Utilities

POST /v1/util/qr-code
FREE
POST /v1/util/screenshot
FREE
POST /v1/util/pdf-generate
FREE

Authentication

AsterPay uses one rule per surface. You almost never need an API key.

Surface Auth How
Free read endpoints
trust score, settlement estimate, discovery, market rates
None Plain HTTP GET. No key, no account.
Paid endpoints
deep analysis, offramp, AI tools, crypto analytics
Pay-per-call (keyless) x402 PAYMENT-SIGNATURE header, or MPP Authorization: Payment. No account.
Dashboard & merchant features
usage analytics, settlement payouts (app.asterpay.io)
API key Authorization: Bearer sk_.... Only for dashboard-bound calls — never required for the public API above.

Live payout requires KYB (handled at settlement, not at the API). Reads and per-call payments stay keyless and accountless.

Example Usage

// FREE read endpoint — no key, no payment
const est = await fetch(
  'https://x402.asterpay.io/v1/settlement/estimate?amount=100'
).then(r => r.json());
console.log(est.data.netEurAmount, est.data.estimatedSepaTime);

// PAID endpoint — easiest path is the x402 fetch wrapper, which
// auto-handles the 402 -> pay -> retry loop for you.
// npm install x402-fetch   (USDC on Base, EIP-3009, mainnet)
import { wrapFetchWithPayment } from 'x402-fetch';
import { account } from './wallet.js'; // your funded signer

const pay = wrapFetchWithPayment(fetch, account);

const data = await pay(
  'https://x402.asterpay.io/v1/agent/deep-analysis/0xYourAgentAddress'
).then(r => r.json());
// The wrapper reads the 402 challenge (x402Version 2, network eip155:8453,
// USDC asset), signs an EIP-3009 transferWithAuthorization, base64-encodes it,
// and retries with the PAYMENT-SIGNATURE header. You just get the result.

Prefer raw HTTP or another language? The full request/response shapes are in the OpenAPI 3.1 spec, the Postman collection, and the interactive docs. Every paid call also accepts MPP (Authorization: Payment) on the same URL.