Vault Account
RentFun Vault Account is used to store the NFTs which the users want to rent out.
Last updated
RentFun Vault Account is used to store the NFTs which the users want to rent out.
Last updated
In RentFun's Access Delegation Protocol, NFT owners have the ability to effortlessly create a Vault Account. This Vault is essentially a contract address exclusively owned by the NFT owners themselves, where they can securely store all the NFTs they wish to make available for rent.
We will delve into the details of the vault contract and the RentFun contract from a code perspective to explain RentFun's solution.
The following is the code for the vault contract. From the code, it can be clearly seen that only the owner of the contract can transfer the NFT within the contract, and the owner of the contract is the original NFT owner, not RentFun. The RentFun contract only plays the role of a modifier in the vault contract, and it does not call any interfaces in the vault contract.
Additionally, as long as the NFTs are not in a rented state, its owner can transfer out the NFTs at any time.
The following is a code snippet of the Lend function in the RentFun contract. This snippet is intended to ensure that the lent NFT tokens are stored in the vault contract. When lending out their NFTs, NFT owners have two options:
transfer the NFT to their own vault contract before lending it out, or
lend it out directly.
If option 1 is chosen, the NFT owner does not need to perform the “Approve” operation. Since there is no approval, the RentFun contract is even less likely to operate the user's NFTs.
Tokenized ownership of the Vault Account introduces several exciting user scenarios that can enhance the rental ecosystem. Let's explore some of these scenarios:
1) Support for selling NFTs under a rental contract With the tokenization of Vault Account ownership, RentFun users would have the ability to sell NFTs that are currently under a rental contract. This feature unlocks liquidity for users, allowing them to monetize their rented NFTs and potentially explore new investment opportunities.
2) Creation of yield-bearing NFT assets which could be used as collaterals in the lending market. Tokenizing ownership of the Vault Account opens up possibilities for creating innovative yield-bearing NFT assets. These assets could generate passive income for owners, further incentivizing participation in the rental marketplace. This concept introduces a new dimension to NFT ownership, combining the benefits of rental income with the uniqueness and value of NFTs.
3) Bulk-selling of NFTs by whales in one sale transaction of Ownership NFT The tokenization of Vault Account ownership enables large-scale transactions for NFT whales. By representing ownership of multiple NFTs within a single Vault Account, whales can streamline their selling process. This functionality allows them to efficiently sell hundreds of NFTs in a single sales transaction, saving time and effort.
These user scenarios showcase the immense potential that arises from tokenized ownership of the Vault Account. RentFun envisions a future where NFT owners can leverage their rented assets in unique ways, expanding their financial opportunities and driving innovation within the NFT ecosystem.
The main focus of Marketplace V1 is to gauge market demand for access delegation-backed NFT rentals. Therefore, the team has chosen to prioritize the fundamental features of rent/lend during the initial stages. This decision ensures that the marketplace remains accessible and user-friendly for early adopters, without overwhelming them with excessive complexity. It has been determined that introducing this feature at a later stage, once the fundamental features of RentFun Marketplace are well-adopted by the community, would be more appropriate. This approach allows for a smoother onboarding process and ensures that users can fully grasp and appreciate the core functionality of the marketplace before delving into more advanced features.
When NFT owners rent out their NFTs for the first time, RentFun will create a vault contract for them. This contract is an . The following is the function RentFun uses to create a vault contract for the user. After creation, the user will be the sole owner of the vault contract.