ICRC-1
The ICRC-1 standard is for fungible tokens on ICP. It is considered the 'base' standard and intentionally excludes certain features and functions, such as:
- Reliable transaction notifications for smart contracts. 
- A block structure and the interface for fetching blocks. 
- Pre-signed transactions. 
ICRC-1 supports extensions of this standard to implement these missing functions, and the icrc1_supported_standards endpoint can be queried to return the name of all supported extensions.
Token metadata
Token metadata is used to provide information about the token, such as the name, symbol, or fee. Available metadata entries for ICRC-1 tokens include:
- icrc1:symbol: The token's currency code, such as- variant { Text = "XTKN" }.
- icrc1:name: The token's name, such as- variant { Text = "Test Token" }.
- icrc1:decimals: The number of decimals used by the token, such as- variant { Nat = 8 }.
- icrc1:fee: The token's default transfer fee, such as- variant { Nat = 10_000 }.
Example ICRC-1 tokens on ICP include:
View an example dapp for ICRC-1 transfers.