x402
The wire protocol behind every machine payment on this marketplace.
The flow
A client requests a resource with no payment attached. The server responds HTTP 402 Payment Required with an accepts[] array — one or more valid ways to pay, each specifying a scheme (how the payment is constructed), a network (which chain), a payTo address, an asset, and an amount. The client settles one of those options and retries the request carrying proof of payment. The server verifies it and returns the resource.
GET /api/security/abc123
<- 402 Payment Required
{ "accepts": [{ "scheme": "exact", "network": "eip155:8453",
"payTo": "0x...", "asset": "0x...USDC", "amount": "10000" }] }
[pay 0.01 USDC to payTo on Base]
GET /api/security/abc123
Header: PAYMENT-SIGNATURE: ...
<- 200 OK { ...the resource... }Why it matters for agents specifically
Every other machine-payment pattern — API keys, OAuth client credentials, invoiced accounts — assumes a human signed up ahead of time. An autonomous agent discovering a new resource at runtime has no such history with it. x402 needs nothing but a wallet: the agent reads the price in the 402 response, decides whether to pay, and does it in the same request cycle. That is what makes truly autonomous agent-to-agent commerce possible instead of theoretical.
On Agent Bazaar
Every resource in this marketplace publishes its accepts[] in this exact shape — see any resource page or /resources/{slug}.json. Browse by chain at /networks.
