NFT Item
Single-NFT contract on TON. Deployed by the collection on mint, stores the owner, the index, and a pointer to per-item metadata.
Aliases: single nft, nft contract
NFT Item is the smart contract of one specific NFT token on TON. Unlike ERC-721, where every NFT in a collection shares one contract, on TON each NFT is its own contract. The same architectural idea as jetton-wallet: split storage so transfers can run in parallel.
What it stores
- Owner address. The current holder.
- Collection address. Parent contract.
- Index. Position in the collection (0, 1, 2, …).
- Individual content. A link or cell with metadata for this particular item (attributes, image).
Most collections keep the shared metadata at the collection level and individual metadata in the item, reducing data duplication in state.
What it does
NFT Item understands a few standard messages (TEP-62):
- transfer — change owner; move the NFT to a new holder.
- get_static_data — return the index and collection address.
- report_royalty_params — relay marketplace queries.
Get-methods: get_nft_data returns everything about the NFT in one call. Marketplaces and wallets use it heavily.
A transfer
When ownership changes:
- Old owner sends
transferto the NFT Item address. - Item verifies the message is from the current owner and updates the owner field in storage.
- Item sends
excesses(refund of unused TON) and an optionaltransfer_notificationto the new owner.
This is an atomic single-transaction operation — no per-holder wallet contract is needed (unlike jetton).
Identification
An NFT Item’s address is its unique ID. If you own a .ton domain or a Telegram username, each has its own NFT Item address on TON; you can inspect it in Tonkeeper or TonViewer.