What Payless does today, what is being built next, and what it will not do. Dates are deliberately absent — things move here when they ship.
Live on Robinhood Chain now, settling in USDG. All of it is in the repository under an MIT licence.
One wrapper around a route handler sets its price and enforces it.
The receipt is the payment. Every request is paid for by a verified ERC-20 transfer, not by a signature.
A settled transaction buys exactly one response, and only within 30 minutes of being mined.
Shareable URLs with a QR code, for taking a payment without writing any code.
Per-second, per-minute and per-hour billing for metered services.
Holder tiers resolved from an on-chain balanceOf. No allowlist to maintain.
Signed deliveries with retry and backoff, plus a delivery log.
Revenue, endpoint and status breakdowns, exportable as CSV or JSON.
Fire real 402s at live endpoints and copy the generated client code.
npx payless-mcp gives any MCP client four tools, of which exactly one can move money. The spending limit is checked in the tool before a transaction is signed, so the model cannot see it, raise it, or argue with it. Four agent payments have settled on chain under it.
Both ledgers sit behind Upstash Redis, claimed with SET NX so the server decides the winner. Without them a receipt could be spent once per warm serverless instance; the app now fails closed if the ledger is unreachable.
npm i payless — one wrapper prices any fetch-style route handler, with settlement verification and replay protection built in.
Live reads from Robinhood Chain — token metadata, balances and receipts — plus market data and QR generation. Anything that would return placeholder data is free and labelled demo until a real provider sits behind it.
Being worked on now. The first one is a correctness gap we would rather state plainly than leave in a source comment.
The commitment is an ERC-20 allowance rather than a card on file. The payer approves a spend limit, we may collect the plan amount once per period and never more than was approved, and cancelling is approve(0) from their own wallet — immediate, and not something we can block. Collection now runs in a separate process holding the only key that can pull funds, each period is claimed atomically before anything is signed, and a transfer whose outcome is unknown is resolved from the chain rather than sent again. Live once that worker is deployed with its key.
Per-endpoint revenue, repeat payers, and why failed payments failed.
Agreed on and specified, not yet started. Roughly in the order we expect to build them.
One transfer, several recipients, settled together — so an API can pay its upstream out of the same payment that paid it.
Funds held on chain and released on delivery, for the trades instant settlement does not suit.
Price in dollars, settle in USDG, conversion handled server-side.
Paying for a response and hammering an endpoint are different problems. x402 only solves the first.
The same in-memory caveat as above, applied to everything else that outlives a single request.
The AI, weather, stock and news routes stay free while their output is simulated. Each one gets a price the day it is wired to a genuine upstream, and not before.
Decisions already made, so nobody has to ask twice.
Payless settled on Solana, BSC and Ethereum before this. Four chains meant four signature schemes and four token registries for a product that needs one dollar to work. Robinhood Chain has a native one.
Payments go from payer to merchant wallet. Payless never holds funds, so there is no balance to withdraw and nothing to freeze.
There is no cut to take. If that ever changes it will be an announcement, not a quiet config edit.
No email, no OAuth, no login standing between you and your revenue. A wallet address is the whole identity.
Last updated 31 August 2026. Open an issue if something here is wrong or missing.