Shop for rentals of services or properties using the USDT as payment and your ESH Coin as a stock and rewards
Jan 25, 2026
MIT,
A specialized Solidity-based rental management system designed for time-based product leasing. This contract handles the financial logic for rentals, automated reward burning/distribution, and issues time-locked NFTs as digital keys or rental proofs through an integrated invoice system.
mintNFTWithTimer to issue NFTs that represent a rental period (calculated based on the amount/days purchased).ReentrancyGuard and a 14-day escrow-style refund window.IInvoiceRenting to manage NFTs that automatically expire or track time.serverSigner must authorize every purchaseProduct (rental) call to validate the user and the terms off-chain.handlePaymentAndReceipt), rewards (handleRewardDistribution), and minting (handleNFTMinting).14 days (funds are held in a "pending" state before being released to the store balance)._amount * 24 * 60 * 60 (converts quantity units into daily unix timestamps).contractOwner can adjust pricing, manage inventory, or withdraw from the rewards pool.serverSigner prevents "direct-to-contract" interactions that bypass your platform's business logic or database.refundClient checks isWithdrawn to ensure the owner hasn't already moved those funds to the main balance, and isRefunded to prevent double-spending._ERCUltra: The address of the reward/governance token._invoices: The address of the IInvoiceRenting NFT contract._contractOwner: The administrative wallet address.depositToRewardPool if they wish to offer rental rewards immediately.0xcb93DAe6611967Ee16D67A3eE0DCfad05d578575 but can be updated via setServerSigner.NewReceipt: Emitted when a rental is successfully processed.ClientRefunded: Logged when a rental is cancelled and funds are returned.AmountPurchasedMoreInfo: Captures additional rental metadata for off-chain indexing.WorkerGotPayed: Tracks internal payroll distributions.Added Escrow for refunds in 14 day
No inputs required