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

The token contract's upgrade capability is currently controlled by Fabrica (decentralized upgrade governance is planned but not yet implemented). This does not compromise the walk-away guarantee: a property's ownership rests on the trust agreement, the data pinned to IPFS, and the off-chain county recovery path, all of which continue to function even if the contract were frozen or Fabrica disappeared. By contrast, the Fabrica-deployed lending pool is a renounced, MIT-licensed fork with no admin keys, no upgrade path, and no governance lever.

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

Sepolia Testnet

Base Sepolia Testnet


Deprecated Versions

Version 3.0

Ethereum Mainnet

Version 2.0 (Legacy)

Ethereum Mainnet

Version 1.0 (Prehistoric)

Ethereum Mainnet

First Fabrica token minted in June 2018

Artwork courtesy of Cameron Morris