Skip to content

Feature: NFT Rental (Cho thuê NFT)

Tính năng cho thuê NFT cho phép người dùng tối ưu hóa lợi nhuận từ tài sản của mình hoặc trải nghiệm NFT mà không cần mua đứt.

1. Vòng đời của một đơn hàng cho thuê

  1. Create Rental: Chủ sở hữu NFT tạo lệnh cho thuê với giá (price) và thời hạn (term) cụ thể. NFT sẽ được chuyển vào Smart Contract cho thuê (Escrow).
  2. Rent NFT: Người thuê thực hiện trả phí và bắt đầu sử dụng NFT. Quyền sử dụng được ghi nhận on-chain.
  3. Return/Cancel:
    • Cancel: Chủ sở hữu hủy lệnh cho thuê khi chưa có ai thuê để lấy lại NFT.
    • Return: Kết thúc thời hạn thuê, NFT được hoàn trả về cho chủ sở hữu gốc.

2. Hỗ trợ đa chuỗi (Multi-chain Rental)

  • Solana Rental: Sử dụng custom program với IDL riêng. Quản lý qua các PDAs (rentalState, escrowPda).
  • EVM Rental: Tương tác với Smart Contract cho thuê trên các chuỗi EVM.
  • Immutable zkEVM (IMX): Có các phương thức xử lý riêng (createRentNftIMX) để tối ưu hóa cho hệ sinh thái Immutable.

3. Kỹ thuật triển khai

  • BlockchainUtil: Lớp tiện ích chịu trách nhiệm thực thi các transaction cuối cùng lên chuỗi.
  • Service Wrapper: RentalService đóng vai trò là entry point để Backend gọi vào, xử lý các logic tiền trạm và chọn network RPC phù hợp.
  • Error Handling: Các lỗi như INSUFFICIENT_BALANCE hoặc RENT_FAILED được xử lý và trả về mã lỗi HTTP chuẩn mực cho Backend.