The Agentic Bank.

Dexter Wallet is born from one face scan. No account, no email, no seed phrase. Your money never leaves it, and every permission you grant, to an AI agent or to a position, is enforced by the chain where you can check it yourself.

Dexter Wallet

No app. Just your face.

One Face ID or fingerprint tap creates it. There is no account behind it and no seed phrase to lose.

Your face never leaves your device: it unlocks a passkey, the passkey signs, and the chain itself verifies that signature. Your passkey is the wallet’s root authority; no custodian and no co-signer hold anything for you.

Your agent starts with a small spending allowance you approve when the wallet is born: capped, on the label, and your passkey can kill it anytime.

The wallet syncs where your passkeys sync, so the one you make on your laptop is already on your phone.

Verified on Solana mainnet
Watch one get born

Tap the frame. One tap is the whole ceremony.

a rehearsal · the real one is the same single tap
Never on the path
CustodianMPC serviceCo-signer

Dexter Tabs

Let your agents spend your money. Not run away with it.

Open a tab, set a cap, and hand it to an agent. It pays per call from your Dexter Wallet, and the chain stops it the moment it reaches your limit. Your face arms it once — after that the chain does the enforcing, every call, no prompts.

Set your agent’s capdrag the wall
$75
Agent spent $0.00cap $75

It can spend up to the wall. Never a cent past it.

Live on Solana mainnet

A tab is a running bill.

Every call your agent makes is a line item — cents for a scrape, a couple dollars for a render. It all meters onto one tab in real time, settling per call from your Dexter Wallet.

And the bill stops dead the moment it reaches the cap. No overage, no surprise invoice, no draining the wallet while you sleep.

One wallet.
A card for every agent.

Open a tab for each agent you run and hand it its own card — its own cap, its own job, all drawing from one balance. An agent burning through its limit can’t touch another’s, and none can reach past the ceiling you set.

••••••••••••x402
CardholderTRADING AGENT
Expires••/••
Dexter
••••••••••••x402
CardholderRESEARCH AGENT
Expires••/••
Dexter
••••••••••••x402
CardholderMEDIA AGENT
Expires••/••
Your agents
  • Trading agentExecutes on-chain — the shortest leash
    $43 / $50
  • Research agentSearches, scrapes, buys data per call
    $118 / $200
  • Media agentRenders image and video by the second
    $240 / $1,000
One Dexter Wallet · each cap enforced on-chain · none can exceed its own

Your money never leaves until it’s earned.

Your agent gets a card, not your keys — and never a blank check. Each call swipes a locked slice of a capped tab, and only what it actually earns the seller ever settles out of your wallet.

Dexter
••••••••••••x402
CardholderCLAUDE
Expires••/••
Your Dexter Wallet$1,000.00
The tab$0.00 / $50.00waiting for first call…capped on-chain · locked
Seller · received$0.00paid only what’s earned

A tab is the first thing your wallet can say yes to. It isn’t the last.

Swipe → meter → reserve → settle, enforced on Solana mainnet — program Hg3wRa…2fhc

Three balances · one program
A strangertheir bad bet
Youuntouched
A strangeruntouched
Each balance backs only what its owner armed.

No contagion

Someone else’s blowup can’t touch you.

The same separation that keeps your agent inside its cap keeps everyone else’s risk away from your money. Every position in Dexter is walled by construction: your balance backs what you armed and nothing else, and the program enforces that on-chain.

When one wallet somewhere makes a bad bet, it is that wallet’s problem alone. Nothing here pools your money with anyone’s.

Deployed 2026-07-02 · view the transaction

The receipts

Every claim on this page resolves to a public record. Open them.

Hg3wRa…2fhcEnforces every permission on this page
5SxPwH…oubFWalled positions, live since 2026-07-02
draft-sander-open-tabs-passkeyOpen Tabs Standard, published IETF Internet-Draft
@dexterai/x402@dexterai/vaultOpen source, on npm

Give your agent a tab in about ten lines.

One call runs the 402 handshake, signs, and retries, paying from the key you funded. Protect your own route with one middleware. Eight chains, zero fees, USDC in and out.

typescript · agent.ts
import { payAndFetch, createKeypairWallet } from '@dexterai/x402/client';

const solana = await createKeypairWallet(AGENT_KEY); // the agent's own key, not yours

// pays per call from what you funded it with — your wallet stays out of reach
const res = await payAndFetch('https://seller.dev/chat', {
  method: 'POST',
  body: JSON.stringify({ messages }),
}, { solana });

if (res.ok) console.log(await res.response.json());