Everyone is rebuilding the contract layer — proof of who authorized what. Almost nobody is rebuilding the control plane: scope, revocation, velocity, reversal. Card networks spent twenty years on that half. dfmi brings the machinery to x402 — built, deployed, and running against a live economy.
scroll to walk through itTo be useful, an agent has to pay on its own, without you approving every purchase. But the moment it can, your checkpoint is gone: it can be tricked into paying the wrong party, have its key leak, or simply go wrong — and the mistake spends real money. The sharpest question comes first: when it goes wrong, can you even stop it? A signed key works like cash — once it's out, there's no cancel button, so "just revoke it" collapses into three bad options:
For an agent paying ten times a second, an expiry date isn't a control — it's a countdown you can't stop. There's no real off switch.
The agent's funds live in a contract. The agent holds only a session key — a spend cap and an expiry the owner can revoke on-chain, in the authorization path. Watch one signature meet two fates:
Not a screenshot — the same sequence runs on the public network every day.
And revocation is only the first of three. The same move — putting the control where the payment is authorized, not in a prompt or bolted on afterward — answers the other two questions: who the agent is, and what it's allowed to buy.
The agent never holds funded keys — only a session key with a cap and an expiry. One revoke() freezes it mid-flight, money untouched. Revocation lives in the credential, not the balance.
Keys rotate — that's hygiene. The agent behind them persists. An on-chain registry binds every rotating key to a durable agentId, so the public ledger names the buyer and reputation finally has somewhere to live.
"Only market-data services, half a dollar, seven days" — one grant. The wallet checks the payee's category in the authorization path, before money moves. The same valid signature settles in-scope and reverts outside it.
Everything on this page is live in production right now. An autonomous agent holding nothing but a session key buys a real market report every hour through the standard 402 flow. The facilitator relays, the contract enforces every gate, and the settlement lands on a public ledger under the agent's registered name.
You can run the whole loop yourself in five minutes: claim free dUSD, deploy your own wallet in the owner console, grant a scoped key to an agent — then hit revoke and watch a perfectly valid signature stop working.
And it's a layer, not a lock-in: every gate runs before money moves, in the authorization path — so dfmi sits above, and composes with, whatever settles or accepts the payment underneath. Bring your own rail, your own acceptance network.
Moving the money is commoditizing; the value is in the layers around it — money honored at par when it lands, and proof the agent was allowed to send it at all. dfmi owns that second layer: the control plane — what an agent holds, who it is, and what it's allowed to want.