Making NFTs Rent-Compliant

The SDK is actually a wrapper on top of Stash Renting Protocol which consists of various smart contracts which execute renting & lending on NFT assets. However, the rental contracts can only operate on NFTs which implements certain interfaces and APIs, which means that you first need to decide whether your NFTs are compatible or not.

Before deciding on your roadmap with the SDK integration, you have to make a decision depending on the current status of your project. Here are the options that you could apply based on certain conditions:

1. You've already deployed your NFT contract:

a. NFTs are upgradable

  • If you already deployed your NFT contracts and the contracts are upgradable, then we strongly recommend upgrading (extending) the contracts with EIP-4907.
  • You can find the steps on how to do that below:

b. NFTs are not upgradable

  • If the NFTs are not upgradable or you do not want to extend the ERC-721 contracts, NFTs can be wrapped to enable secure and on-chain lending and renting.
  • The original NFT will be wrapped, thereby generating an identical rentable NFT. The new NFT can be used for lending and renting operations without transferring and risking the custody and security of the original NFT.
  • When you lend any NFT assets with Stash, the SDK handles the wrapping operations for you and you don't have to do anything about the wrapping itself and compliancy transformations.


NFT Wrapping

More information about NFT wrapping can be found under NFT Wrapping.

2. You haven't deployed your NFT contract yet:

  • In that case, you still have the option to make your NFT contract comply with the renting protocol.
  • It is possible not to upgrade to EIP 4907 and let Stash SDK take care of wrapping. We recommend upgrading to EIP-4907 because:
    • it would save you a lot of gas
    • provides a dedicated interface to make renting and delegation of the NFT with secure usage possible

Next up

Learn what "Rent-compliant" actually means and check if your NFTs are compliant or not