ERC-721: Non-Fungible Token
ERC-721 defines NFTs — unique on-chain assets identified by uint256 tokenId. It powers collectibles, gaming items, real-world asset titles, and identity primitives.
Required Interface
| Method | Purpose |
|---|---|
balanceOf(address) | NFT count owned |
ownerOf(uint256) | Owner of a token |
transferFrom(...) / safeTransferFrom(...) | Transfer ownership |
approve / setApprovalForAll / getApproved / isApprovedForAll | Approval surface |
Neo Equivalent: NEP-11
NEP-11 covers the same ground with three concrete improvements: bytes32-style token IDs (no integer collisions; can use content hashes), required tokensOf(owner) iterator (enumeration is part of the standard), and required properties(tokenId) (on-chain metadata as a serialised map, replacing the off-chain tokenURI JSON that's famously fragile).
NEP-11 also natively supports divisible NFTs — when decimals() > 0, the same standard handles fractionalised NFTs.
Live on Neo TestNet
Both implementations deployed and tested on Neo N3 TestNet.
| Implementation | TestNet Address | Contract Hash | Deploy Tx |
|---|---|---|---|
Solidity (neo-solc) | NbTK8px52xHxJ5zSJvVFqBujZ5eQEV4dYt | 0x48b5f8f579810b402fed660844145fed406f77aa | 0x2bac122c…6674 |
Neo C# (nccs) | NbuB1V5es6YBtPfVrW4R9bDtxDieuZoK38 | 0x15c664d51340a102490dbf5dec5647f541775baf | (re-used) |
Verified: symbol, decimals, mint, balanceOf. Source pairs and runner under docs/standards-mirror/deployments/erc-721/.
