Token-2022: Solana's Stablecoin Standard and Token Extensions Explained
What Token-2022 is, how PayPal, Paxos, and Circle build their stablecoins on it, which extensions enable compliance — and where Permanent Delegate and Transfer Hooks became new attack vectors in 2026.
Solana can anchor tokens with built-in rules — fees, freezes, access controls — directly into the standard. That makes powerful financial products possible, and at the same time opens new doors for fraud.
In plain terms: Think of classic SPL tokens as simple coins that can only change hands. Token-2022 is the same coin, but with built-in extra functions: a fee on every transfer, a freeze switch, or built-in interest logic. PayPal, Paxos, and Circle use exactly this to run their regulated stablecoins on Solana. Powerful — but these same switches are also what fraudsters exploit: in 2026, over 40 percent of all new Solana tokens have a hidden “Permanent Delegate” built in, which lets the creator burn buyers’ tokens at any time.
Core idea
Token-2022 is Solana’s second token standard, live on mainnet since January 2024. It offers more than twenty optional extensions baked directly into the token program: programmable transfer fees, frozen-by-default accounts, permanent delegate rights, and confidential transfers. For regulated stablecoins, this is the decisive difference from everything before — PYUSD, USDG, and EURC are all built on this standard. At the same time, a growing rug-pull industry uses the same features against ordinary buyers. Six independent audits (Halborn, Zellic, Trail of Bits, NCC Group, OtterSec, Certora) are on record.
What this is about
Since January 2024, Solana has had a second token standard: the Token Extensions Program, commonly called Token-2022. Its program ID is TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb. Unlike the classic SPL token standard, Token-2022 allows more than twenty optional extensions: programmable transfer fees, frozen-by-default accounts, permanent delegate rights, confidential transfers using zero-knowledge proofs, and many more.
PayPal built its US dollar stablecoin PYUSD on it, Paxos its Global Dollar USDG, Circle its euro stablecoin EURC. By May 2026, every major institutional stablecoin launch on Solana has moved to Token-2022 — older SPL tokens like USDC or BONK stay where they are, new mints almost always start with extensions.
This article explains what Token-2022 is, which extensions exist, who uses them today, and where they became new risks in 2026 — especially around permanent-delegate rug pulls and transfer-hook reentrancy.
Not financial advice. This article describes a technical Solana standard and the forensic implications of its extensions.
What distinguishes Token-2022 from SPL Token
The classic SPL token standard with program ID TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA has been the foundation of almost every Solana token since 2020. It can do very little: mint, transfer, burn, freeze. Anything beyond that has to be implemented outside the token program.
Token-2022 is a separate program, not an upgrade. Anyone wanting to launch a token with extensions deploys it on Token-2022 from the start. Existing tokens cannot be migrated without re-deploying and moving holders over.
The data structure is a superset: the first 165 bytes of a mint or account record are identical to the classic SPL standard, with extensions following as TLV-encoded data (type-length-value, a compact format that tags each field with its type, length, and content). Wallets that only know SPL tokens can still read the mint account but won’t see the extensions. RPC methods (programming interfaces for querying the blockchain) like getAccountInfo with jsonParsed expose the extensions separately.
Important: most mint extensions must be activated at mint creation time. Adding them later is only allowed for a small set: cpi-guard, memo-transfer, token-group, token-member, token-metadata. An issuer who has to choose between Permanent Delegate and Soulbound (NonTransferable) at launch cannot switch later.
The mint extensions
Mint extensions apply to the entire token. They live in the Mint struct.
MintCloseAuthority allows a mint with zero total supply to be closed, reclaiming the SOL rent. Classic for NFT-like use cases after a complete burn.
TransferFeeConfig defines a protocol-level transfer fee in basis points with an optional cap. Important quirk: the fee is withheld at the recipient, not deducted from the sender. The authority can harvest collected fees. Used for RWA tokens, royalty splits, or treasury funding.
DefaultAccountState makes new token accounts start in frozen status. Users must first be unfrozen by the freeze authority before they can receive or send the token. The basis for KYC gates, allowlist stablecoins, and institutional distribution.
NonTransferable makes the token soulbound. It can no longer be transferred, only burned and the account closed. Use cases according to the Solana documentation: credentials, on-chain diplomas, achievements, membership markers.
InterestBearingMint stores an interest rate inside the mint. The displayed UI balance grows continuously for the holder — the on-chain supply does not change. It is a UI layer, not real token issuance. Tax treatment in Germany sits in a grey zone; more on that below.
PermanentDelegate (permanent third-party access) is the most controversial extension. A one-time authority has unlimited delegate rights over every token account holding this mint. It can transfer, burn, or freeze at any time — without the owner’s signature, without warning. For regulated stablecoin issuers this is the prerequisite to enforce sanctions, recover stolen funds, or correct compliance violations. For anonymous meme-coin launches it is the most powerful rug tool that exists on Solana.
TransferHook (code that automatically runs on every token transfer) invokes a program named by the issuer on every transfer. Custom logic there can check allowlists, validate on-chain KYC, collect royalties, or run anti-bot filters. Quicknode documents the typical patterns. From a security perspective: highly complex, because the hook runs inside the transfer path with CPI depth (the nesting depth of cross-program calls) — see the risks section.
MetadataPointer points to the account that holds the canonical metadata. The target can be an external Metaplex account or the mint itself.
TokenMetadata stores name, symbol, URI, and arbitrary custom fields directly in the mint. Eliminates the separate Metaplex infrastructure and makes tokens self-contained.
GroupPointer and TokenGroup define collection relationships — for example, NFT collections or stablecoin families. GroupMemberPointer and TokenGroupMember mark a token as a member of a group.
ConfidentialTransferMint (private transfer via zero-knowledge proof) enables zero-knowledge encryption of token balances and transfer amounts. An optional auditor key (a regulatory read key) — typically the issuer — can be configured to preserve compliance visibility. Without an auditor key, the transfers are unreconstructible for forensic tools.
ConfidentialTransferFeeConfig combines transfer fees with confidential transfers — the fee accounting itself runs encrypted.
ConfidentialMintBurn additionally encrypts mint and burn operations. A complete privacy stack including issuance — relevant for institutional treasury operations.
ScaledUiAmount scales the displayed token balance uniformly for all holders. Use case: stock splits, reverse splits, dividends without a new mint.
Pausable is a global pause switch. A configured authority can stop all transfers, mints, and burns in one action. Implements classic TradFi requirements — emergency stop, regulatory freeze, technical correction.
The account extensions
Account extensions apply to individual token accounts, not to the mint as a whole.
ImmutableOwner makes the owner unchangeable. Automatically set on Associated Token Accounts (ATAs) and prevents hijack patterns where an account is reassigned.
MemoTransfer requires a memo on every incoming transfer. Useful for exchange deposits, internal accounting, and compliance trails.
CpiGuard blocks certain actions inside a cross-program invocation. Protects against a malicious program silently moving tokens in the context of a multi-step transaction.
TransferFeeAmount, ConfidentialTransferAccount, and similar account states mirror the corresponding mint extensions at account level.
Who uses Token-2022 today
Adoption has accelerated noticeably since 2024. According to DL News, non-USDC, non-USDT stablecoin supply on Solana grew roughly tenfold from January 2025 onwards. As of February 2026, Solana had over 13 billion US dollars in stablecoin supply, per the State of Solana report.
PayPal USD (PYUSD) lives at mint address 2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo. Paxos issues on behalf of PayPal. Active extensions, per PayPal’s technical deep-dive: Confidential Transfers (initialized, auditor key set), Permanent Delegate, Metadata plus MetadataPointer, MintCloseAuthority, Transfer Hook as a placeholder, TransferFeeConfig at 0 as a fail-safe. According to the Solana Foundation, PYUSD transaction volume has exceeded its Ethereum counterpart since July 2025.
Paxos Global Dollar (USDG) runs at 2u1tszSeqZ3qBWF3uNGPFc8TzMk2tdiwknnRMWGWjGWH. The issuer is Paxos Digital Singapore, regulated by the Monetary Authority of Singapore. Paxos documentation lists Permanent Delegate, Confidential Transfers, Metadata, Transfer Hook, and MintCloseAuthority.
Circle Euro Coin (EURC) at HzwqbKZw8HxMN6bF2yFZNrht3c2iXXzpKcFu7uBEDKtr is MiCA-compliant. Circle announced the launch in April 2024. At minimum, metadata extensions are active; further compliance extensions are likely, but Circle has not published a technical deep-dive. To get the exact stack, check the mint live via Solscan or a getAccountInfo call with jsonParsed.
Paxos USDP, several PYUSDe yield wrappers, and institutional RWA tokens typically follow the same compliance stack: Permanent Delegate, optional Confidential Transfers, Metadata, Transfer Hook for allowlists.
Wallet reality
Token-2022 has been supported at the wallet-adapter level for a while. The actual display behavior depends on the individual wallet UI.
Phantom displays Token-2022 correctly, including token metadata read directly from the mint. Transfer fees show up in the quote. Confidential Transfers, as of early 2026, still have no native UI — balances may be partially invisible without the user knowing why.
Solflare was one of the first native Solana wallets with Token-2022 support. Metadata-only mints render cleanly.
Backpack supports Token-2022 including xNFT integrations and MetadataPointer-only tokens.
Stumbling blocks in everyday use:
- Transfer-fee surprise — the recipient ends up with less than the sender sent, because the fee is withheld at the receive side. Wallet quotes don’t always flag this prominently.
- Frozen-by-default tokens cause “token not receivable” errors when an account is not in the allowlist.
- Permanent Delegate is technically invisible — no wallet shows in its default flow that an external authority can pull or burn your tokens at any time.
- Confidential Transfers require per-account ElGamal keypair setup. Too complex for mass-market use; mostly seen so far in specialized custodian tools.
- DeFi compatibility is uneven. Raydium CLMM, Orca Whirlpools, and FluxBeam support Token-2022; many older AMM forks do not. Transfer-hook tokens often route only through specialized pools.
Forensic risks
Token-2022 in 2026 is both a compliance toolkit and an attack surface. Three risk classes appear visibly.
The permanent-delegate rug industry
The evidence is hard: per a threat-research analysis on DEV.to, RugCheck.xyz flags more than 40 percent of all new Solana tokens as permanent-delegate-enabled. The source estimates Q1 2026 losses from Token-2022 extension abuse at over 50 million US dollars.
The pattern works in three steps:
- Launch the token with active Permanent Delegate. Mint authority and freeze authority are publicly revoked, so standard checks register the token as “renounced.”
- Seed liquidity in an LP. Tools that only check mint and freeze authority often report the token as clean.
- Once enough buyers are in, the permanent-delegate owner triggers a burn of all user tokens — wallets show balance 0, the scammer keeps the SOL from the pool.
Permanent Delegate is not evil in itself. For PYUSD, USDG, and EURC the extension is necessary to satisfy regulatory requirements. But for any anonymous meme coin or RWA token with active Permanent Delegate, treat it as a red flag unless the issuer is a known custodian.
Transfer-hook reentrancy
Before Token-2022, Solana was considered reentrancy-immune. Transfer hooks broke that assumption. Neodyme documents concrete attack surfaces in its Token-2022 security brief.
Three attack classes are observable:
- CPI-depth attack — Solana allows four CPI levels. A malicious hook intentionally exhausts the depth, so legitimate follow-up calls fail with
CallDepthExceeded. The calling protocol thinks the transfer failed — in reality the hook wrote side effects. - Recursive loop — the hook triggers further transfers of the same mint, causing state confusion in pools.
- State manipulation via CPI into other protocols during the transfer, before the calling protocol can check its post-transfer invariants.
Implication: any DeFi protocol that accepts Token-2022 with transfer hooks needs an explicit audit of its integration path. The classic “transfer plus pool update” pattern is no longer safe when the transfer itself runs arbitrary code.
Honeypots, silent value extraction, and forensic blackboxes
Three additional vectors observed in practice in 2026:
- DefaultAccountState equals frozen as a honeypot — tokens look normal in DEX listings, the user buys, but the token account immediately ends up frozen. Selling becomes impossible. A classic honeypot pattern, now built into the protocol instead of via custom code in the token program.
- Transfer fees up to 9.99 percent are technically allowed (999 basis points). Wallets do not always surface the effective value extraction at a glance.
- Confidential Transfers without an auditor key are forensic blackboxes — the money flow is unreconstructible on-chain. Rare as of May 2026, but relevant for threat modeling.
DACH context
Three topics matter for German-speaking users and operators.
MiCA applies in full from 1 July 2026 for all EU member states. EURC, as a MiCA-compliant euro stablecoin, is the default for on-chain EUR within the European region. Permanent Delegate, Pausable, and DefaultAccountState are exactly the tools MiCA issuers need to implement sanctions, emergency pauses, and allowlist distribution.
AllUnity, according to Handelsblatt, is the first BaFin-licensed EUR stablecoin in Germany. As of May 2026, it runs on an EVM stack, not on Solana. A BaFin-licensed Token-2022 stablecoin does not yet exist in the DACH region.
The German Federal Ministry of Finance’s letter of 6 March 2025 treats stablecoins for tax purposes identically to other crypto assets. The one-year holding period remains; the 1,000-euro per-year exemption has applied since 2024. InterestBearingMint is a tax grey zone — whether the UI-multiplier-driven balance growth counts as ongoing income under section 22 of the German Income Tax Act, or only at sale, is not yet clearly defined in the BMF letter. Holders of Token-2022 with the interest-bearing extension should clarify with a tax advisor.
What this means for different roles
Token issuers: the extension choice is final at mint creation for most fields. Anyone planning regulated distribution builds with Permanent Delegate, DefaultAccountState, and optionally Confidential Transfers from the start. Anyone launching meme coins without a compliance claim has no reason to set Permanent Delegate — and should not, because buyers correctly read it as a red flag.
DeFi developers: transfer-hook tokens require explicit pool integration. Pre- and post-transfer invariants must be checked actively. CPI depth and reentrancy are no longer theoretical.
Wallet holders: the permanent-delegate status of a token is checkable via Solscan, RugCheck, or a direct getAccountInfo call with jsonParsed. For unknown mints, the check is worth running before any purchase.
Forensics and detective layer: mints with active Confidential Transfer without an auditor key are unreconstructible. Permanent-delegate movements are on-chain visible; the authority address is queryable on the mint. Transfer-hook programs should be matched against known allowlist programs.
What this means for you
Token-2022 is the standard on which regulated stablecoins and RWA tokens are built on Solana today. Anyone holding PYUSD, EURC, or comparable tokens is already dealing with Token-2022 — often without knowing it. At the same time, a significant share of all new tokens runs on the same standard with aggressively configured extensions. Knowing which extensions a token has activated is, in 2026, a concrete part of assessing your own exposure.
Want to do this safely yourself? This article explains the concept. The step-by-step path — wallet setup, security, staking, DeFi, and taxes — is covered in the Solana Guide.
Sources
- Solana Program Library — Token-2022 spec, extensions reference
- Solana Docs — Token Extensions catalog, Permanent Delegate guide, solutions overview
- PayPal Developer Blog — PYUSD deep dive on Token Extensions, PYUSD quick start
- Solana Foundation — PayPal PYUSD on Solana, PYUSD technical deep dive, State of Solana February 2026
- Paxos — USDG mainnet addresses, USDG quickstart
- Circle — EURC launch on Solana
- Helius — What are Token Extensions
- Quicknode — Token-2022 overview, Transfer Hook guide
- Neodyme Security — Don’t shoot yourself in the foot with Token-2022
- Threat research — Permanent-Delegate burn-scam analysis, Transfer-hook reentrancy
- Market data — DL News: Solana stablecoin boom 2025, DL News: 13 new token extensions
- DACH regulation — German Ministry of Finance letter 6 March 2025, Handelsblatt: AllUnity BaFin license
Related SolanaHub content: