The lending assets supported by the Lending V2 contract are ETH and ERC20 Token. When the asset is ETH, in order to improve the user experience, Taker sets up an ETH Pool. Users have the option to deposit ETH into the ETHPool in advance, which can facilitate smoother lending operations. The ETH deposited into the ETHPool can also be freely withdrawn by the user when needed. This allows for flexibility in managing funds and enables convenient access to liquidity for lending purposes.
  1. 1.
    Borrow/refinanceByLender/refinanceByBorrower/refinanceDebtTransferByOther: If the lender creates an offer to lend ETH, the lender needs to deposit ETH into the ETHPool. The borrower can then borrow ETH from the ETHPool when they initiate the borrowing process. The borrowed ETH can be directly withdrawn by the borrower from the ETHPool to their wallet or designated address.
  2. 2.
    repay: When the borrower performs a repayment operation using ETH, the borrower can utilize the provided repay method and directly pass the ETH as a parameter to repay the loan, and they can choose to repay the loan by withdrawing the necessary amount of ETH from the ETHPool and using it for loan repayment.
  3. 3.
    When a new lender wants to transfer a loan's debt, the new lender can utilize the contract's interface and directly transfer ETH as part of the debt transfer process, and they can choose to transfer the debt by withdrawing the required amount of ETH from the ETHPool and using it in the debt transfer process.

View Methods


function deposit() public payabl;
The user deposits a certain amount of ETH. The user can also transfer ETH to the contract address of the ETHPool directly from their wallet.


function withdraw(uint256 amount) external;
The user can withdraw a specified amount of ETH.