Smartcontracts
Smart Contracts
Fabrica's property NFTs are implemented as smart contracts on multiple blockchain networks. Below are the current and historical contract addresses. Always verify contract addresses before transacting.
Upgradeability
Fabrica smart contracts use the UUPS (Universal Upgradeable Proxy Standard) pattern, allowing the protocol to:
- Deploy bug fixes and security patches
- Add new features and improvements
- Maintain compatibility with existing tokens
Currently, upgrade capability is managed by Fabrica to ensure rapid response to issues and continuous improvement of the protocol. The long-term roadmap includes migrating upgrade governance to a community-based, decentralized approach.
All contract upgrades are announced through official channels and can be verified onchain.
Token ID Generation
Token IDs are generated deterministically from a hash of:
- Chain ID
- Contract address
- Operator address
- Session ID
- Operating agreement URI
This approach prevents frontrunning attacks and ensures unique, predictable token identifiers across the protocol.
Version 3.1 (Current)
Ethereum Mainnet
- ERC1155 Token: 0x5cbeb7A0df7Ed85D82a472FD56d81ed550f3Ea95
- Validator: 0x170511f95560A1F280c29026f73a9cD6a4bA8ab0
Sepolia Testnet
- ERC1155 Token: 0xb52ED2Dc8EBD49877De57De3f454Fd71b75bc1fD
- Validator: 0xAAA7FDc1A573965a2eD47Ab154332b6b55098008
Base Sepolia Testnet
- ERC1155 Token: 0xce53c17a82bd67ad835d3e2adbd3e062058b8f81
Deprecated Versions
Version 3.0
Ethereum Mainnet
- ERC1155 Token: 0xd8a38b46d8cf9813c7c9233b844dd0ec7d7e8750
- Validator: 0x6fA2Ee5C9841163E88c85a40B70a90FCD5FBB68b
Version 2.0 (Legacy)
Ethereum Mainnet
- ERC721 Token: 0x3903525e5c6cec55d4d38060c3edf05068a7a8d1
Version 1.0 (Prehistoric)
Ethereum Mainnet
- ERC721 Token: 0x338e48afa8F749314eC3a7b417222929f1a2754e
(First token minted and first transaction performed in June 2018. View mint, view transaction)

Artwork courtesy of Cameron Morris
Updated 21 days ago
