01 · Register
Connect your endpoints.
Sign up, register the routes you want to monetize, and set a price per call. Dynamic pricing supported — scale with response size or compute cost.
For API providers
Drop one line of middleware into your server. Earn USDC on Solana per request. Cash out to your bank via Dodo — no subscription pages, no chargebacks.
To integrate. Express, Fastify, Hono supported.
Smallest viable charge. Solana fees ≈ zero.
Settled on-chain, per request, verifiable.
Cash out via Dodo payouts — bank in hours, not days.
Section I — How merchants earn
No subscription pages. No card forms. No chargebacks. Just pay-per-call, settled on-chain, cashable in rupees.
01 · Register
Sign up, register the routes you want to monetize, and set a price per call. Dynamic pricing supported — scale with response size or compute cost.
02 · Wrap
One line in your Express, Fastify, or Hono app. Agents hitting the route now pay per call via x402 before your handler runs.
03 · Earn
Payments land in your Solana payout wallet on every request. Cash out to your bank via Dodo — INR and USD, GST-compliant invoicing included.
Section II — Integration
Works with Express, Fastify, and Hono out of the box. Python and Go middlewares ship next.
X-Payment, runs your handler.Section III — The economics
Card processors charge a floor of $0.30 per transaction. That kills pay-per-call at any realistic price. Solana fees are ~$0.0001. You keep the rest.
Legacy — Stripe
4% + $0.30 means the floor is $0.31 before you break even. Micropayments don't work here.
Obscura — Solana + x402
Solana settlement + 0% platform fee during beta. The merchant SDK is open-source and verification is a single Solana RPC call your server makes — no third party in the loop.
An agent hits your weather API 5,000 times a dayat $0.01 a call. On Obscura that's $50/day — $1,500/month — in your wallet.
With Stripe, the same traffic yields minus $1,500 a month. You would pay to serve those calls.
Section IV — FAQ
They don't get a response. The middleware returns HTTP 402 with payment terms and only runs your handler after the X-Payment header is verified on-chain. You never serve unpaid requests.
USDC accrues in your Solana payout wallet. Cash-out routes through Dodo's payout API — INR and USD supported, GST-compliant invoicing, MoR coverage, typical settlement within hours.
Payments are per-call and settled on-chain, so chargebacks in the card sense don't exist. Agents are deterministic, disputes are rare, and Dodo provides MoR coverage on the cash-out leg.
Yes. Each route has its own pay.charge({ amount }). Prices can be static, dynamic (scaled with response size / compute), or computed on the fly inside the handler.
No. The middleware abstracts it entirely. You watch a USDC balance rise in your payout wallet and click cash-out when you want rupees. The Solana layer is opaque if you want it to be.
No. x402 is an open protocol. Our middleware is a thin convenience layer — verification is a public Solana RPC call your server makes, the SDK is self-hostable, and removable without changing the protocol your API already speaks.
Issue End · Start earning
Free during beta. One middleware line. USDC in your wallet before your next standup.
Solana × Dodo · Shipped from India