Live on Arc · settled in USDC

The payment rail for
autonomous AI agents.

Your agent pays per request in USDC on Arc — metered, capped, settled and verified on-chain. No subscriptions, no API keys, no humans in the loop.

agent.ts
const payer = createPayer({ walletId, maxPerCall: 0.05, budget: 1 })

const { data } = await payer.payAndFetch("https://api.example.com/premium")
// → 402 Payment Required   → pays 0.01 USDC on Arc   → 200 + data
Interactive · real on-chain

Don’t take our word for it.

Run the flow — for real.
Click once. A real AI agent pays 0.01 USDC on Arc to unlock the resource. You watch every step + the on-chain tx.
1Request
GET /premium
The agent hits a paywalled resource.
2Pay
router.pay(invoice, service)
Agent's Circle wallet pays the invoice in native USDC.
3Unlock
GET /premium?invoice=…
Service verifies the payment on-chain, then serves the data.
Sponsored demo · rate-limited · real testnet USDC on Arc. In production your own agent pays with its own wallet + budget.
Or pay with your own wallet.
Connect a wallet and pay the invoice yourself — your address (not the sponsor’s) settles it on-chain.
Connect above to pay from your own address.
Needs Arc testnet + a little test USDC in your wallet. Most visitors won’t have it — that’s what the sponsored demo above is for.
The flow · x402-style

Pay-per-call, in three steps.

01
Request
Agent calls a paid resource. The service replies 402 Payment Required with an invoice — price, invoice id, and where to pay.
02
Pay
The agent's Circle wallet pays the invoice through the on-chain PaymentRouter in native USDC — within its per-call and budget caps.
03
Unlock
The service verifies the payment on-chain (bound to the invoice and recipient), then serves the response. One payment, one call.
Guardrails · try the knobs

Autonomous, never unbounded.

Every agent runs under a per-call cap and a total budget. Drag the sliders — see how many calls it gets, and when it refuses to pay.

Price per call0.010 USDC
Per-call cap0.050 USDC
Agent budget1.00 USDC
100
calls before the budget runs out · 1 USDC total. After that, the agent stops paying — automatically.
bar = price vs. cap · headroom before a single call is rejected
Live ledger

Agents paying for what they use.

28
Paid calls
0.28
USDC settled
2
Agents
Agent
paid for /premium
+0.01 USDC
20d ago
invoice 0x8bba9dcdf2fba2e3bbb5d002253b519fb1b31ee952d7f89bb8e6131c4a8d08ba
agent
status verified on-chain · settled in USDC
You0xfC61…114e
paid for /premium
+0.01 USDC
23d ago
invoice 0x229a9f2019c21d18d3b35e524641d45231921fd47b4a159d28c75bff215b9366
status verified on-chain · settled in USDC
Agent
paid for /premium
+0.01 USDC
23d ago
invoice 0xa4e88d3e76e0b7339a8e127ff0778a2504ca5dd2e95782e2edfce7f815c3efe3
agent
status verified on-chain · settled in USDC
Agent
paid for /premium
+0.01 USDC
25d ago
invoice 0x156f9df1f171c620cf29ab2b43fa91f97906d5a715f19de0ed6f3867eeece3b6
agent
status verified on-chain · settled in USDC
Agent
paid for /premium
+0.01 USDC
26d ago
invoice 0x8a1be4a23caad28232af5d946f320ef01c3fa61aecae2f3e0b3907d3e8b8a32c
agent
status verified on-chain · settled in USDC
Agent
paid for /premium
+0.01 USDC
26d ago
invoice 0xebb8d9d470c443475d95dd240798343026886a1014b624750385615a7e903dfd
agent
status verified on-chain · settled in USDC
Why Arc
USDC is native
On Arc, USDC is the native gas/value token — payments are plain value transfers, final in ~1 second.
Signed by MPC
Agents sign through Circle Programmable Wallets. No raw private key sits on a server.
Verifiable, bounded
Every call is on-chain, tied to an invoice and recipient, and capped per-call and per-budget.
For developers

Or hit the paywall from your terminal.

# 1) get an invoice curl https://agentpay-service.arcpump2403.workers.dev/premium # 2) pay it via the PaymentRouter on Arc, then retry curl https://agentpay-service.arcpump2403.workers.dev/premium?invoice=<id>
Open the demo service →