x402 payment middleware for stablecoin content gating on Base.
loading...Middlebit normalizes USDC (EIP-3009) and SBC (EIP-2612) payments into a consistent API. Point your frontend at middlebit with your merchant wallet address — everything else (facilitator setup, signature standards, on-chain settlement) is handled for you.
That's it. No API keys, no thirdweb accounts, no facilitator configuration.
| Token | Standard | Decimals | Address |
|---|---|---|---|
| USDC | EIP-3009 | 6 | 0x833589fC...02913 |
| SBC | EIP-2612 | 18 | 0xfdcC3dd6...80798 |
Both on Base (chain ID 8453). The user pays zero gas — thirdweb settles on-chain.
/api/healthHealth check. Returns version and supported tokens.
/api/supported-tokensToken configs for client discovery.
/api/payment-requirementsReturns 402 with x402 v1 payment requirements. The frontend uses these to construct the EIP-712 signing request.
Note: You pass your merchant wallet as payTo. The response returns the on-chain addresses middlebit uses internally — your client just needs to sign what's returned.
/api/settleSettles a signed payment on-chain via thirdweb. The paymentSignature is a base64-encoded x402 v1 payload.
POST /api/payment-requirements — get signing instructionsbtoa(JSON.stringify({ x402Version: 1, payload: { signature, authorization } }))POST /api/settle with paymentSignature — get transaction receiptCopy this and hand it to an AI coding agent or use it as a spec to build a client:
When a user pays, the signed transfer goes to an intermediary wallet managed by middlebit. Settlement happens on-chain and funds are forwarded to your merchant wallet. The end user pays zero gas.
| You provide | Middlebit handles |
|---|---|
| Your merchant wallet address | Facilitator wallet, on-chain settlement, gas fees |
| Token choice + amount | EIP-712 signing instructions, payload normalization |
| Resource URL (gated content) | Payment verification + transaction receipt |
Middlebit is open source. The codebase is ~500 lines of TypeScript across 4 API endpoints and 3 utility modules.