1. Overview
Rentools World Estate is an Airbnb-style rental protocol where every property is a single ERC-721 NFT. Hosts mint the NFT for their place, guests pay ETH rent onchain, and the NFT physically moves to the guest's wallet for the exact duration of their stay — then returns to the host automatically.
- Chain: Robinhood Chain (ID 4663).
- Currency: ETH for rent, $RENTOOLS token for governance/rewards.
- Protocol fee: 1% of every rent payment, held in the vault treasury.
- Custody: the NFT is soulbound while a rental is active — only the protocol itself can move it.
2. Quick start
- Step 1Install a walletMetaMask, Rabby, or Coinbase Wallet — anything EVM.
- Step 2Add Robinhood ChainChain ID 4663, RPC https://rpc.mainnet.chain.robinhood.com. The Connect button does it for you.
- Step 3Get some ETHBridge or fund ETH on Robinhood Chain. You'll spend a tiny amount on gas plus rent.
- Step 4Browse or listOpen Marketplace to rent a place, or open List to mint your own Property NFT.
3. For hosts
Hosts are wallet addresses that mint Property NFTs. You keep custody of the NFT until a guest rents it.
Mint a listing
- Open /list and connect your wallet.
- Fill in name, description, image URL, city, address, and coordinates.
- Set
pricePerDayin ETH and theminDays/maxDaysrange. - Submit — the transaction calls
mintPropertyand the NFT lands in your wallet.
Editing a listing
Listings are immutable to keep guest expectations honest. To change price, photos, or details you must burn the old NFT (only allowed when it isn't rented) and mint a fresh one.
Getting paid
When a guest pays rent, the ETH is escrowed in the vault. As soon as endRental is called after the stay ends, the full rent (minus the 1% protocol fee) is released to your wallet. Anyone can call endRental — a keeper, the guest, or you.
4. For guests
Guests rent a Property NFT for a set number of days. During the stay the NFT lives in your wallet as proof-of-use.
- Open /marketplace and pick a property.
- Choose the number of nights (must be within the host's range).
- Review the breakdown:
rent = pricePerDay × days,fee = rent × 1%. - Click Pay & receive NFT — one transaction sends ETH and pulls the NFT to you.
- At the end of the stay, click End rental (or wait for a keeper). The NFT returns to the host.
While you hold the NFT, you cannot transfer or sell it — the contract blocks all public transfers to protect the host.
5. Fees & payouts
No deposit is taken. The 1% fee accumulates in the vault and can be swept by the admin toward the $RENTOOLS reward pool.
Holder discount: wallets that stake ≥ 500,000 $RENTOOLS in the staking vault get a 10% discount voucher applied to listing and voucher fees. See Staking & holder voucher.
6. Staking & holder voucher
Rentools World Estate has a dedicated Staking Protocol (RentoolsStaking.sol) for $RENTOOLS holders. Stake the token to earn a permanent, on-chain 10% discount voucher on the protocol's listing and voucher fees.
How to stake
approve(stakingVault, amount)on the $RENTOOLS token contract.stake(amount)on the staking vault — tokens lock immediately.- As soon as your balance reaches 500,000 RENTOOLS, the voucher is auto-active. No claim tx needed.
How the discount is applied
Fee-charging methods read quoteDiscount(user, fee) from the staking vault. Eligible wallets pay fee × 90%; everyone else pays the full fee. Eligibility is checked at the moment of the transaction — dropping below 500,000 stops future discounts but never claws back past ones.
How to unstake
requestUnstake(amount)— starts the 3-day cooldown, moves tokens to pending.- Wait 3 days.
claimUnstake()— receive your $RENTOOLS back.
6. Disputes
A host can call raiseDispute(tokenId, reason) during an active rental. This freezes the payoutso endRental cannot release funds until resolved.
The protocol admin (the deployer wallet) resolves via resolveDispute(tokenId, toHostBps), splitting the held rent between host and guest in basis points (0–10000). The NFT is returned to the host as part of resolution.
Guests: file evidence off-chain (email, chat, photos) with the admin before requesting a split. Hosts: only dispute in good faith — repeated bad-faith disputes will be denied.
7. Wallet setup
Robinhood Chain network
The Connect wallet button in the top nav auto-adds or switches to this network. If your wallet doesn't support automatic adds, paste the values above into your custom network form.
8. Contract reference
The rental logic lives in a single Solidity file, EstatesRental.sol. All state is on-chain and public.
Write methods
mintProperty(tokenURI, pricePerDayWei, minDays, maxDays)— host mints a new listing.burnProperty(tokenId)— host burns an unrented listing.payRent(tokenId, daysCount)payable — guest pays ETH, receives NFT.endRental(tokenId)— anyone can call afterendAt.raiseDispute(tokenId, reason)— host only, during active rental.resolveDispute(tokenId, toHostBps)— admin only.sweepFees(to)— admin sends collected fees.
Read methods
getListing(tokenId),getRental(tokenId),tokenURI(tokenId),ownerOf(tokenId),totalSupply(),treasuryBalance().
9. Security notes
- The NFT is soulbound while rented:
transferFromandsafeTransferFromrevert for the public. - All ETH movements use
nonReentrantand low-levelcallwith return-value checks. - The admin is set to the deployer at construction. Admin can only: resolve disputes, sweep fees, transfer admin, or emergency-drain.
- Emergency drain sends the entire contract balance to admin — used only for critical incidents.
- Contract enforces chain 4663; any call on the wrong chain reverts.
10. FAQ
Do I need a physical key to check in?+
Yes — the NFT is proof of your booking; check-in logistics (keys, lockbox codes) are coordinated off-chain with the host.
Can I cancel after paying?+
Not through the contract. Cancellations must be negotiated with the host, then resolved via raiseDispute + admin split.
Who pays gas?+
Whoever calls the function. Guest pays gas on payRent, host on mintProperty/burnProperty, anyone on endRental.
Can I list one property twice?+
No — one NFT per listing. To offer two rooms in one building, mint two separate Property NFTs.
What if the guest damages the property?+
Host raises a dispute during the rental. Admin reviews evidence and splits the held rent accordingly.
Where do the fees go?+
The 1% protocol fee stays in the vault treasury until swept by admin — typically routed to the $RENTOOLS reward pool.