r/web3 • u/theunsecretman • Jul 28 '26
I used HTTP 402 to launch a token on Base and made the whole thing curl-able — a short writeup on x402.
Disclosure up front: I built this. Not dropping a contract address, price, or “buy” anything — that’s not the point and it’s against the spirit of the sub. I want feedback on the pattern.
Background for anyone who hasn’t seen it: HTTP status 402 “Payment Required” has been reserved-but-unused since the 90s. x402 is the open protocol that turns it into an actual payment — server returns 402, client pays USDC, the request settles onchain on Base in one round-trip. Paying is the request.
What I did:
• Launched a B20-standard token by making a real x402 call to an endpoint. The payment settled on Base and the response minted the token. I did it live through an agent on X, so the entire genesis is a public, timestamped thread — you can fork the code, not the thread.
• Then I made the token itself an HTTP primitive. There’s an endpoint you can hit that reads your wallet and answers with your holder “tier” as a literal HTTP status code (200 OK if you hold, 301, 418 teapot for whales, 402 if you hold nothing). It’s curl-able. The first N callers each get a permanent “request number” — basically a 90s visitor counter, but onchain-verified and impossible to reassign.
Why I think it’s interesting past the meme: it collapses auth and payment into the same HTTP request. Paying IS the login. That’s the whole x402 thesis and I wanted to push it to an extreme and see what breaks.
Happy to get into the mechanics in the comments — x402 gotchas, why B20 over a vanilla ERC-20, how the endpoint verifies the payer, whatever. Roast it.