BOB
  • πŸ‘‹BOB Stablecoin
  • BOB Info
    • πŸ—ΊοΈBOB Ecosystem
      • Mellow Protocol Vaults
    • 🦊MetaMask
      • Swap BOB with Metamask Swap
    • πŸ”BOB Swap
    • πŸ¦„Uniswap v3
    • πŸ™‹β€β™€οΈBOB FAQ
  • BOB CDP
    • ℹ️About
    • πŸ’‘Use Cases
    • πŸ‘¨β€πŸŽ€System actors
    • πŸ“šSystem configurations
    • 🏦Vault health
    • 🏘️User flow examples
    • πŸ‘¨β€πŸ’»Technical docs
      • Position valuation (technical)
      • Liquidations
      • Deployment addresses
      • Smart Contracts
        • NFTVaultRegistry
        • NFTVault
        • UniV3Oracle
        • ChainlinkOracle
        • DebtMinter
        • SurplusMinter
    • πŸ™‹β€β™‚οΈCDP FAQ
  • BOB DAO
    • πŸ§‘β€πŸ€β€πŸ§‘Governance
      • BOB DAO
      • Protocol Governance
        • GP 0: Increase SAFE membership
        • GP 1: Bob Swap beta testing infrastructure
        • GP 2: Upgrade Contracts to v1.0.0
        • GP 3: Enable Bob Swap for Public Use
        • GP 4: Increase Multisig & Upgrade BOB contract on all networks
        • GP 5: Enable Bob Swap on Ethereum Mainnet
        • GP 6: Upgrade zkBob to support direct deposits
        • GP 7: Increase Multi-chain Inventory and Update Bob Swap
        • GP 8: Extend pool limits for KYC'd users
        • GP 9: Deactivate Kyberswap inventory pairs [Emergency Measure]
        • GP 10: Reallocate previous Kyberswap inventory
        • GP 11: Add 24 hour timelock to BOB contract on Optimism
        • GP 12: Raise Polygon limits
        • GP 13: Launch BOB CDP
        • GP 14: Migrate BOB pool to USDC on Polygon
        • GP 15: KYB tiers on Optimism
        • GP 16: Remove excess inventory on Arbitrum and BNB Smart Chain
        • GP 17: Remove excess inventory on Optimism and Ethereum
        • GP 18: Remove excess inventory on Polygon
        • GP 19: Accrued Revenue Allocation
        • GP 20: Migrate BOB pool to USDC on Optimism
        • GP 21: BOB inventory reduction
    • πŸ“‹Inventory
      • Inventory Actions
  • BOB Resources
    • 🧩Visual Assets
    • ⛓️Links
Powered by GitBook
On this page
  • Key concepts
  • Vault ownership
  • Vault transferability
  • Vault allowance
  • Methods
  1. BOB CDP
  2. Technical docs
  3. Smart Contracts

NFTVaultRegistry

PreviousSmart ContractsNextNFTVault

Last updated 2 years ago

smart contract provides a common NFT ERC721 inteface for accessing opened BOB CDP Vaults. Each opened vault is assigned with unique vault id with corresponding NFT being issued to the vault owner.

Single deployed NFTVaultRegistry can accomodate multiple NFTVault contract underneath it.

Key concepts

Vault ownership

Despite what happened or happens inside the created vault, the effective owner of the vault is always the corresponsing NFT owner.

Vault owner holds the rights to vault collateral, as well as a debt liability associated with a given vault.

Vault transferability

ERC721 defines few transfer functions used for changing NFT ownership. Transferring Vault NFT to a different address will effectively change the Vault owner accordingly.

After Vault NFT transfer, only a new owner will have rights to withdraw collateral or generate more debt.

Vault allowance

ERC721 defines few approval functions. Such approvals allow to control NFTs from multiple addresses at the same time, without altering the NFT ownership.

In BOB CDP, approved addresses have the same rights as the NFT owner, meaning that they are able to withdraw collateral and mint new debt in the same way as the NFT owner. They are also able to transfer vault ownership to a different address, using the vault transferability concept described above.

The only difference in rights between vault owner and approved addresses is the fact only the current NFT owner is able to contol the list approved addresses for his NFTs.

Methods

TBD

πŸ‘¨β€πŸ’»
NFTVaultRegistry