ES

Token-2022 Extensions

Token-2022 extends SPL Token with post-base TLV blocks for fees, interest, confidential transfers, metadata, and more.

ConfidentialTransferAccount (extension)

Token-2022 Program · 295 bytes

Account-side Token-2022 extension holding a holder's ElGamal-encrypted balances. The 295-byte counterpart to ConfidentialTransferMint — where the actual hidden amounts and pending-balance machinery live.

Explore

ConfidentialTransferFee (extension)

Token-2022 Program · 129 bytes

The pair of extensions that let transfer fees work on confidential transfers — a mint-side config with an ElGamal key for encrypted withheld fees, and an account-side encrypted withheld amount.

Explore

ConfidentialTransferMint (extension)

Token-2022 Program · 65 bytes

Mint-side Token-2022 extension that enables confidential transfers — amounts are ElGamal-encrypted on-chain and proven correct with zero-knowledge proofs. This extension holds the policy; encrypted balances live on the account side.

Explore

CpiGuard (extension)

Token-2022 Program · 1 bytes

Account-side Token-2022 extension that, when enabled, blocks certain token actions from happening inside a CPI — protecting users from malicious programs that try to redirect approvals or close accounts mid-call.

Explore

DefaultAccountState (extension)

Token-2022 Program · 1 bytes

Mint-side Token-2022 extension that sets the state new TokenAccounts start in. Setting it to Frozen turns the token into an allowlist — accounts must be thawed before they can transact.

Explore

GroupPointer (extension)

Token-2022 Program · 64 bytes

Mint-side Token-2022 extension that records where a token's group (collection) configuration lives. The grouping analogue of MetadataPointer — can point at a TokenGroup account or the mint itself.

Explore

InterestBearingConfig (extension)

Token-2022 Program · 52 bytes

Mint-side Token-2022 extension that makes a token accrue interest continuously. The stored balance never changes — the UI amount is computed from a rate and elapsed time.

Explore

MetadataPointer (extension)

Token-2022 Program · 64 bytes

Mint-side Token-2022 extension that records where a token's metadata lives. It can point at an external account or at the mint itself for inline metadata — Token-2022's answer to Metaplex.

Explore

MintCloseAuthority (extension)

Token-2022 Program · 32 bytes

Mint-side Token-2022 extension that names an authority allowed to close the mint and reclaim its rent — but only once supply is zero. SPL Token mints could never be closed.

Explore

NonTransferable (extension)

Token-2022 Program · 0 bytes

Mint-side Token-2022 extension that makes a token soulbound — it can be minted and burned but never transferred. Its byte payload is empty; the extension's presence is the entire signal.

Explore

PermanentDelegate (extension)

Token-2022 Program · 32 bytes

Mint-side Token-2022 extension that grants one address unlimited authority to transfer or burn tokens from any account of the mint, forever. The clawback primitive — powerful and dangerous.

Explore

ScaledUiAmount (extension)

Token-2022 Program · 56 bytes

Mint-side Token-2022 extension that multiplies displayed balances by a configurable factor. The on-chain amount is unchanged; the UI amount is amount × multiplier — used for rebasing and stock-split-style display.

Explore

TLV Layout Primer

Token-2022 Program

How Token-2022 stores extensions on-chain — a 4-byte Type-Length-Value header followed by per-extension payload, walked left-to-right until a type-0 sentinel.

Explore

Token-2022 Mint/Account + Extensions

Token-2022 Program · 165 bytes

Token-2022 Mints and TokenAccounts share SPL Token's base layouts and append features as post-base TLV extension blocks — a 1-byte discriminator at offset 165 distinguishes Mint from TokenAccount.

Explore

TokenGroup (extension)

Token-2022 Program · 80 bytes

Mint-side Token-2022 extension that defines a group (collection) — its update authority, the group mint, and the current/maximum member count. The Group Interface analogue of a Metaplex Collection.

Explore

TokenMetadata (extension)

Token-2022 Program

Mint-side Token-2022 extension that stores name, symbol, URI, and arbitrary key-value pairs inline in the mint account — Token-2022's self-contained alternative to a separate Metaplex metadata account.

Explore

TransferFeeConfig (extension)

Token-2022 Program · 108 bytes

Mint-side Token-2022 extension that charges a percentage fee on every transfer. Fees accumulate as withheld balances on recipient TokenAccounts and are claimed later by the withdraw authority.

Explore

TransferHook (extension)

Token-2022 Program · 64 bytes

Mint-side Token-2022 extension that calls a custom program on every transfer. The token program CPIs into the hook's Execute instruction, enabling allowlists, royalty enforcement, and per-transfer logic.

Explore