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
$0.005
GET /v1/market/ohlcv/:symbol
$0.005
GET /v1/market/trending
$0.002

AI Tools

POST /v1/ai/summarize
$0.01
POST /v1/ai/sentiment
$0.01
POST /v1/ai/translate
$0.02
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
$0.02

Utilities

POST /v1/util/qr-code
$0.005
POST /v1/util/screenshot
$0.02
POST /v1/util/pdf-generate
$0.03

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.