On the TON network, everything operates as a smart contract — including wallet accounts. With one set of mnemonic words, users can generate multiple wallet accounts based on different contract types.
Wallet Contract Types
To keep pace with the evolving ecosystem, TON wallet contracts have been upgraded across multiple versions. The features of each version are outlined below:
Version | Key Features |
V1 | Support for sending four transactions at once |
V2 | Added transaction time limits |
V3 | Introduced subwallet ID parameter |
V4 | Support for plugins (e.g., predefined payments, DApp interactions) |
V5 | Gasless transactions, fee optimization, enhanced security |
imToken currently supports account creation using two contract types: V4 and V5. Users are recommended to choose V5, which offers significant improvements in transaction flexibility, compatibility, and overall performance. The key differences between the two are outlined below:
V4:
Retains all previous features while adding plugin support, enabling developers to implement complex logic (e.g., predefined payments, DApp interactions).
V5:
The latest wallet contract version, designed to replace V4 with enhanced user and developer experience:
- Support for gas-free transactions in specific scenarios
- Optimized transaction fees for lower costs
- Improved security mechanisms
TON Address Types
TON addresses are categorized into Mainnet and Testnet addresses, with the following formats and usage notes:
1. Mainnet Addresses
Format |
Example |
Characteristics | Usage Notes |
Starts with U (Non-bounceable) |
UQDKbj...qPuwA | Default wallet address; transactions are irreversible | Verify the address before transferring assets; errors may result in permanent loss. |
Starts with E (Bounceable) |
EQDKbj...qPrHF | Smart contract address; supports error refunds | Verify contract legitimacy (e.g., Jettons tokens) |
2. Testnet Addresses
Format | Example | Notes |
Starts with k (Bounceable) |
kQDKbj...qPgpP | imToken does not support testnet transfers; for development/testing only |
Starts with 0 (Non-bounceable) |
0QDKbj...qPleK |
Note: A bounceable address refers to a contract error-handling mechanism. If a transaction fails (e.g., due to an invalid contract or processing error), the remaining TON (minus fees) is returned to the sender.
Tips
- V4 and V5 addresses are both derived from the same mnemonic phrase. When creating a TON account in imToken, you can choose either contract type — with V5 selected by default.
- These address types are not interoperable. To move tokens between them, you'll need to perform a standard transfer.
- imToken supports BIP39 but currently does not support mnemonics based on Tonkeeper.