bWalletX is in beta: test with small amounts.
bWalletX DownloadWeb →

Development blog · 005 · 1–5 Oct 2026

Personal tokens and token rooms

Hold a token to enter its chat room. Your $NAME is a token with its own room. How rooms, tickets and issuers came together, and what we reversed.

The idea

Every token can have a chat room, and holding the token gets you in. To invite someone, you send them the token. Your own $NAME is a token too, so you have a room that people enter by holding some of your token. The room's owner sets the rules: how many tokens to enter, and whether you just hold them or spend them per message, per minute or per day, burned or sent back to the issuer.

A reversal on DMs

On 1 October we went all in: Chat became token rooms only, and we removed direct messages and new-chat-by-handle from the interface. On 2 October we added DMs back, with a merged contact list. People need to message one person without first buying a token. Open rooms came the same day (post 007).

Minting, and another reversal

The Mint sheet briefly had "Mint a chatroom" as the first option. We then removed "Mint a token", on the grounds that a token is a room. The same day we put it back. People do want to mint a token without thinking about chat.

Tickets

We wrote a spec for tickets: tokens that are burned to enter a room, checked at zero confirmations so entry takes seconds, not blocks. The server can verify a ticket burn from the transaction itself before it is mined. For a while the wallet had a Tickets tab. On 3 October we dropped it: tickets are just tokens that get burned on entry, so they appear under Tokens.

Who issued this token?

Anyone can deploy a token with any ticker, so a ticker proves nothing. Since 2 October every mint from the wallet carries a signed issuer statement in the same transaction, in a separate output so 1Sat indexing is not affected. The wallet checks the signature and shows "Issued by $handle". When several tokens share a ticker, it says so.

Only the issuer sets the rules

At first, whoever created a room could edit it. On 5 October we changed this: room settings can be changed only by the token's issuer, proved by signing with the key behind the issuer address. A wallet that holds that key can "Claim admin". Everyone else sees the room rules read-only.

Bounties

Token rooms got a Bounties sheet: work posted in a room, paid in the room's token when it is merged. This is early and lightly used.

What's not done

← 004 Names, handles and paymail006 Who pays for indexing →