Deploy
Defines a ticker
Sets the identity, maximum supply, and per-mint limit. No tokens are created. The first valid deploy of a name wins forever.
Walkthrough
Three operations, one payload each, and one rule that decides whether a mint counted. This page walks each operation with the exact bytes, then covers what to check before funding and which Universe products can do what.
Mental model
Inscribing a BLOCK-20 payload does not create tokens. It publishes a claim. A reader replays every BLOCK-20 inscription in block order, applies the rules, and produces balances. The reader can reject your claim silently and your Bitcoin is still spent.
Deploy
Sets the identity, maximum supply, and per-mint limit. No tokens are created. The first valid deploy of a name wins forever.
Mint
Names a Bitcoin block. The reader checks that block against the chain before crediting anything.
Transfer
Inscribing reserves an amount. Moving the inscription decides where it lands.
Worked example 1
Suppose you want a ticker called BLK with 21 million maximum supply and a 1000 unit cap per mint.
{"p":"block-20","op":"deploy","tick":"BLK","max":"21000000","lim":"1000"}
With an optional description:
{"p":"block-20","op":"deploy","tick":"BLK","max":"21000000","lim":"1000","des":"Anchored supply experiment"}
BLK to the identity blk. If blk, Blk, or BLK was already deployed, this inscription is ignored.lim (1000) does not exceed max (21000000).Casing is preserved for display but not for identity. Deploying BLK means nobody can later deploy blk. Choose the casing you want shown, because it is fixed at deploy and immutable afterward.
Worked example 2
Say BLK deployed at height 767430, nothing has been minted yet, and you want 1000 units. The writer reads the current tip while creating your order. In this example the tip is block 767430, whose ID is the value below.
{"p":"block-20","op":"mint","tick":"BLK","amt":"1000","hash":"000000000000000000029730547464f056f8b6e2e0a02eaf69c24389983a04f5"}
Your reveal is mined at height 767500.
p, op, tick, amt, hash.blk.amt (1000) does not exceed lim (1000). Equal is allowed.Run these exact numbers through the anchor verifier to see each step evaluated.
The failure mode to watch. If the same order sits unfunded and the reveal lands at height 767600 instead, the anchor is 170 blocks old, the freshness rule fails, and the mint credits nothing. The inscription still exists on Bitcoin, and the fees are still spent.
Worked example 3
You hold 1000 BLK and want to send 250 to someone. This takes two chain events.
{"p":"block-20","op":"transfer","tick":"BLK","amt":"250"}
Revealing this inscription creates a reservation. Your balance still reads 1000. Your available balance drops to 750, because 250 is now committed to that inscription.
send the transfer inscription to the recipient's address
The first move settles the reservation. Three outcomes are possible:
| What happens to the inscription | Your balance | Recipient | Supply |
|---|---|---|---|
| Sent to a supported address | 1000 becomes 750 | +250 | unchanged |
| Sent back to your own address | 1000, reservation released | none | unchanged |
| Spent in transaction fees | 1000, reservation released | none | unchanged |
| Burnt or sent somewhere unreadable | 1000 becomes 750 | none | total and circulating fall by 250, burned rises by 250 |
A transfer inscription is single use. After it settles, moving it again does nothing to any balance. If you want to send another 250, inscribe another transfer.
Before you fund
Order creation puts nothing on Bitcoin. The payment starts the commit and reveal sequence, and after that nothing is reversible. This is the moment to catch a mistake.
Never share wallet secrets. BLOCK-20 never needs a seed phrase or a private key. Your wallet should only be asked to send the reviewed Bitcoin amount to the order's commit address.
The lifecycle page explains each order status and what to do about it.
After the reveal
An inscription that exists on Bitcoin is not the same as a balance that exists in a reader. The test vectors show a range of inscriptions that are perfectly valid Bitcoin transactions and still credit nothing.
Product support
This table lists only what is recorded in the Bitcoin Universe capability registry. Support that is not listed does not exist, and this page does not speculate about third-party wallets or marketplaces.
| Product surface | Can do | Cannot do |
|---|---|---|
| Core explorer | View tokens, discover, view collections, view activity, view transactions | Any write or trade action |
| Wallet | View balances, send, receive | List, buy, sell, offer |
| Inscribe | Build and broadcast deploy, mint, and transfer inscriptions | Validate token rules; it emits payloads without checking supply, limits, or ticker existence |
| Marketplace | Nothing | Everything: there is no BLOCK-20 marketplace entry at all |
BLOCK-20 is indexed, not tradeable. No Bitcoin Universe product implements listing, buying, offers, acceptance, or settlement for BLOCK-20. If you acquire a balance, the supported ways to move it are a wallet send or a transfer inscription. There is no in-house market, and this documentation makes no claim about markets elsewhere.
Third-party readers may disagree. Everything on this site describes the bitcoin-universe-block20-v1 profile. Another indexer that does not check the anchor against the active chain will show different balances for the same inscriptions. Ask any service you rely on which profile it implements.