Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.orca.so/llms.txt

Use this file to discover all available pages before exploring further.

Token Extensions enable advanced functionality for tokens with compliance requirements. Learn which extensions Orca supports.

Token Extensions Overview

Token Extensions are advanced functionality designed specifically to meet the need of businesses with compliance obligations. They are added feature sets designed with regulatory obligation in mind, and may break Whirlpool’s functionality if integrated incorrectly. Orca currently supports a set of Token Extension, with some requiring Token Badge permission. The extensions support status is listed on the table below. Token Badge is only granted via an explicit, case by case review by the Orca Team. Due to some extension’s ability to compromise Orca’s programs, Token Badges are not issued lightly. If your project has a reasonable requirement for using Token Extensions, you may reach out to Orca. Please fill out the contact form linked at the bottom of the page. For a deeper dive into TokenExtensions, please check out Solana Foundation’s White Paper.

Extension Functionalities and Support Status

ExtensionsFunctionalitySupport Status
TransferFeeAllow transfer fees to be charged on each transfer and sent to a defined account.Supported
MemoTransferRequiring all incoming transfers to include a memo instruction immediately before the transfer function.Supported
MetadataPointerAllow token creator to designate an address for the canonical metadata.Supported
TokenMetadataAllow storage of token info such as name, symbol, and key parameters.Supported
InterestBearingAllows tokens to be set with an interest rate, which continuously compounds.Supported
ConfidentialTransfer (non-confidential transfer only)Allow confidential transfers between participating users without revealing the amount of the transfer.Supported, Non-confidential transfer only
PermanentDelegateAllow for the transfer of any amount of tokens from any account to another or even burn them.TokenBadge required
TransferHookAllows calling specific programs with each token transferTokenBadge Required
MintCloseAuthorityAllows owners to close mint accounts and reclaim the on the mint account.TokenBadge Required
DefaultAccountStateAllows mints to predefine the state of a token account upon creation. An account can be either frozen or initialized.TokenBadge Required
FreezeAuthority (not extension, but restricted)Allows token creator to freeze or thaw individual token accounts associated with their tokenTokenBadge Required
NonTransferableEnables “soul-bound” tokens that cannot be transferred to other accountsNot Supported
GroupPointerAllow token creator to designate a group of accounts for its metadata.Not Supported
MemberDescribes configurations for a group member, such as group address and a member’s number.Not Supported
MemberPointerAllows the token creator to designate a member account (see above) that describes the mint.Not Supported
Native mint for Token-2022 (not extension, but restricted)-Not Supported
All other extensions not listed in the above-Not Supported

Q & A

For more technical deep dive into Token Extensions, feel free to check out our developer documentation on TokenExtension, and our smart contract implementation. Please feel free to ask questions via the Support function in the wallet menu, or on Discord or Telegram. If you have a need to gain TokenBadge permission, please reach out via the Support function in the wallet menu, or on Discord or Telegram. Thanks! 🐳