Skip to main content

IAaveLendingPool

IAaveLendingPool

Interface for Aaves Lending Pool Documentation: https://developers.aave.com/#lendingpool

deposit

function deposit(address asset, uint256 amount, address onBehalfOf, uint16 referralCode) external

Deposits an amount of underlying asset into the reserve, receiving in return overlying aTokens.

  • E.g. User deposits 100 USDC and gets in return 100 aUSDC

Parameters

NameTypeDescription
assetaddressThe address of the underlying asset to deposit
amountuint256The amount to be deposited
onBehalfOfaddressThe address that will receive the aTokens, same as msg.sender if the user wants to receive them on his own wallet, or a different address if the beneficiary of aTokens is a different wallet
referralCodeuint16Code used to register the integrator originating the operation, for potential rewards. 0 if the action is executed directly by the user, without any middle-man

withdraw

function withdraw(address asset, uint256 amount, address to) external returns (uint256)

Withdraws an amount of underlying asset from the reserve, burning the equivalent aTokens owned E.g. User has 100 aUSDC, calls withdraw() and receives 100 USDC, burning the 100 aUSDC

Parameters

NameTypeDescription
assetaddressThe address of the underlying asset to withdraw
amountuint256The underlying amount to be withdrawn - Send the value type(uint256).max in order to withdraw the whole aToken balance
toaddressAddress that will receive the underlying, same as msg.sender if the user wants to receive it on his own wallet, or a different address if the beneficiary is a different wallet

Return Values

NameTypeDescription
[0]uint256The final amount withdrawn