Bitcoin mainnet, inscribed tokens
TAP: inscribed tokens that can delegate authority
TAP is an inscribed token protocol from the Trac ecosystem. It keeps the familiar deploy, mint and two step transfer of an inscribed token, and adds something those protocols do not have: a token can name an authority, and some operations only count when that authority has signed for them.
- Chain Bitcoin
- Network mainnet
- Protocol tag
tap - Carrier Ordinal inscriptions
- Lifecycle Experimental
- Document version 2.0.0
What TAP is
A TAP token lives entirely in Ordinal inscriptions. There is no contract and no sidechain. Every action is a small JSON object inscribed on a satoshi, tagged with "p": "tap". Indexers read those inscriptions in block order and agree on the resulting balances.
TAP did not originate at Bitcoin Universe. It comes from the Trac ecosystem, and this site documents the protocol as the ecosystem uses it, with every rule on this site traced to code that Bitcoin Universe runs. Where an indexing decision is specific to Bitcoin Universe rather than to TAP itself, it is labelled as such.
Two properties separate TAP from the inscribed token protocols it grew out of:
- A wider ticker space. A TAP ticker can be up to 32 UTF-16 code units and 128 UTF-8 bytes, so it can hold words, punctuation and emoji rather than a four character tag.
- Delegated authority. A deployment can name a privilege authority inscription. Once it does, privileged operations on that ticker are only meaningful when that authority has authorised them.
Authority in one picture
Most of what happens on a TAP token is ordinary: anybody holding a balance can transfer it, and anybody can mint while a mint is open. A smaller set of operations is authority bearing. Throughout this site, ordinary operations are drawn in indigo and authority bearing operations in gold.
- Ordinary operation, no authority needed
- Authority bearing operation
Who this is for
Token holders
You need to know that a TAP transfer takes two steps, and that the inscription created by step one is spendable like any other ordinal. The guide walks it through.
Application developers
You need the exact payload contract and the indexer's confirmation and reorg behaviour. Start with the specification and the reference.
Indexer implementers
You need reject conditions you can test. The test vectors are taken from the test suite of Bitcoin Universe's own TAP indexer.
Protocol facts
| Origin | The Trac ecosystem. TAP is an upstream protocol that Bitcoin Universe indexes, not a Bitcoin Universe invention. |
|---|---|
| Chain and network | Bitcoin, mainnet. The indexer refuses to start against any other network. |
| Protocol tag | "p": "tap", exact and lower case. |
| Carrier | Ordinal inscriptions. Bitcoin Universe's inscribe flow writes TAP payloads as text/plain;charset=utf-8. |
| Ownership model | Hybrid: balances are held per address, and a pending transfer is bound to a specific inscription and its output. |
| Address roles | Payment and ordinals. |
| Ticker limits | Up to 32 UTF-16 code units and 128 UTF-8 bytes, in NFC lower case form, with no Unicode control, format or separator characters. |
| Decimal scale | The indexer accepts a declared scale of 0 to 18 and converts by string padding, never by floating point arithmetic. |
| Source coverage | partial. Confirmed state is complete; there is no mempool feed. |
| Marketplace | Feature gated behind tapMarketplaceV1, executed in app, settling at one Bitcoin confirmation. |
Operations at a glance
The full table with per operation field requirements is in the specification. This is the shape of it.
| Operation | Does | Authority |
|---|---|---|
token-deploy | Creates a ticker with a supply cap and a per mint limit | Optional, through prv |
token-mint | Mints into an address under the deployment's terms | Optional, set by the deployment |
token-transfer | Step one of a transfer, makes an amount transferable | None |
token-send | Moves balances for a list of items in one payload | Required |
dmt-deploy | Digital Matter Theory deployment on the tap tag | Required |
dmt-mint | Digital Matter Theory mint on the tap tag | None |
Support in Bitcoin Universe
Bitcoin Universe runs a TAP indexer and exposes TAP in three product surfaces. The table records what the product code implements. It is not a promise that a surface is switched on in production, which the status pages report separately.
| Surface | Actions |
|---|---|
| Core | view, discover, view collection, view activity, view transaction, list, update listing, unlist, buy, make offer, accept offer, cancel offer, settle, reconcile |
| Wallet | view, send, receive |
| Inscribe | deploy, mint, transfer |
One marketplace action is not supported. The registry records sell as unsupported for TAP with this recorded reason:
TAP has no executable offer workflow on this marketplace surface.
Related protocols
- TAP on DogeThe Dogecoin variant of TAP, documented in its own repository. It is a separate chain with its own indexing and its own marketplace behaviour, so nothing on this site carries over to it.
- docs.bitcoinuniverse.ioThe central documentation portal, which ingests this repository along with every other Bitcoin Universe protocol and product.
- docs.tap-protocol.comUpstream TAP documentation from the Trac ecosystem, covering operations beyond the ones Bitcoin Universe indexes.
Where to start
- SpecificationNumbered rules: payload encoding, ticker rules, amounts, the operation table, state transitions and every condition that makes a payload invalid.
- GuideThe inscribe then send flow, worked end to end, plus what each Bitcoin Universe surface can actually do.
- ReferenceTerminology, indexer semantics, the concrete differences from BRC-20, fees, limitations, security considerations and an implementation checklist.
- Test vectorsAccepted and rejected payloads with the exact reason for each outcome.
- Payload validatorPaste a TAP payload and see what it is, whether it holds up and whether it needs an authority. It runs in your browser.
Reporting a problem
If you find a flaw in this documentation, or a way that a Bitcoin Universe TAP surface can be made to disagree with the chain, report it privately through GitHub private vulnerability reporting rather than in a public issue. SECURITY.md has the details.