Blog / pay-without-account
2026-09-05
Pay for one scaffold without an account (x402)
Call purchase_scaffold with no account, get HTTP 402, pay USDC on Base via x402, retry. A rail, not the brand — confirm /pay.json the day you send.
BotKelp has a dashboard and bk_live_ keys. It also has a path that does not need either.
That path exists because MCP clients are not always humans with a credit card form. Some callers are agents with a wallet. Some humans just refuse a fifth SaaS login to generate a starter.
This is a payment rail, not the product.
What is actually live
Public /pay describes a single scaffold paid with x402:
1. Call purchase_scaffold with your component ids and no Authorization header. 2. The server answers HTTP 402 with x402 accepts[]: price, network (Base), asset (USDC) and payTo. 3. Sign that exact payment and retry the same call with _meta["x402/payment"]. Payment settles only after the build succeeds.
The published price is 0.5 USDC per scaffold (/pricing). The only address, amount and on/off state that matter are the ones on /pay.json the moment you send. If it says payable: false, do not send funds.
Do not paste wallet addresses into tutorials that will be cached.
Where x402 fits
x402 is an HTTP convention: request a paid resource, receive 402 Payment Required with amount/network/asset, sign a stablecoin payment, retry. Coinbase and Cloudflare document this for agent HTTP clients. Cloudflare’s Agents SDK can wrap MCP tools with the same idea.
BotKelp’s purchase_scaffold speaks x402 directly. Before you write “we are an x402 endpoint,” open /tools.json and /pay.json. Market the flow that answers.
Is this a market?
There is real x402 volume on Base in 2026 (ecosystem posts cite millions of transactions and on the order of a million dollars transferred in a 30-day window — ecosystem-wide, not BotKelp). That proves rails. It does not prove agents want to buy *Next.js scaffolds* at all.
Typical x402 examples are fractions of a cent to a few cents; 0.5 USDC per scaffold is already at the low end of a human “save me an hour” price. Whether wallet agents become a meaningful buyer is the experiment.
Rules for callers
- Confirm chainId 8453 (Base) and the USDC token on that chain from
/pay.json, not from memory. - Exact atomic amount. Wrong amount is a stuck transfer, not a retry.
- Each 402 requirement is for one call; do not replay a payment.
- Still verify
INTEGRITY.jsonafter a paid scaffold. Payment does not make files trusted.
Rules for us
- Never lead the homepage with coins.
- Never put
payToin an X bio. - Count 402 → settled
purchase_scaffoldas the experiment KPI. - If that funnel is empty after 30 days, keep the rail, stop talking about it.
Install with a key instead: /install.