WETH Gateway
If you need to use native ETH (MATIC / AVAX in case of side chain market) in the protocol, it must first be wrapped into WETH (or WMATIC / WAVAX). The WETH Gateway contract is a helper contract to easily wrap and unwrap ETH (or MATIC / AVAX) as necessary when interacting with the protocol, since only ERC20 is used within protocol interactions.
The source code can be found here.
Methods
depositETH**()**
function depositETH(address lendingPool, address onBehalfOf, uint16 referralCode)
Deposits the msg.value
amount of ETH into the protocol, minting the same amount of corresponding aWETH, and transferring them to the onBehalfOf
address.
For referralCode
, use the referral code: 0
.
Ensure that the depositETH()
transaction also includes the amount of ETH you are depositing in the msg.value
.
Parameter Name | Type | Description |
---|---|---|
| address | address of the targeted underlying lending pool |
| address | address whom will receive the aWETH.
Use |
| uint16 | referral code for our referral program. Use 0 for no referral. |
withdrawETH**()**
function withdrawETH(address lendingPool, uint256 amount, address to)
Withdraws amount
of the WETH, unwraps it to ETH, and transfers the ETH to the to
address.
Ensure you set the relevant ERC20 allowance of aWETH, before calling this function, so the WETHGateway
contract can burn the associated aWETH.
Parameter Name | Type | Description |
---|---|---|
| address | address of the targeted underlying lending pool |
| uint256 | amount deposited, expressed in wei units.
Use |
| address | address that will receive the unwrapped ETH |
repayETH**()**
function repayETH(address lendingPool, uint256 amount, uint256 rateMode, address onBehalfOf)
Repays onBehalfOf
's debt amount
of ETH which has a rateMode
.
Ensure that the repayETH()
transaction also includes the amount of ETH you are repaying in the msg.value
.
Parameter Name | Type | Description |
---|---|---|
| address | address of the targeted underlying lending pool |
| uint256 | amount to be borrowed, expressed in wei units. Use In case of repayments on behalf of another user, it's recommended to send an |
| uint256 | the type of borrow debt. Currently unused, must be > 0. |
| address | address of user who will incur the debt. Use |
borrowETH**()**
function borrowETH(address lendingPool, uint256 amount, uint256 interestRateMode, uint16 referralCode)
Borrows amount
of WETH with interestRateMode
, sending the amount
of unwrapped WETH to msg.sender
.
Parameter Name | Type | Description |
---|---|---|
| address | address of the targeted underlying lending pool |
| uint256 | amount to be borrowed, expressed in wei units |
| uint256 | the type of borrow debt. Currently unused, must be > 0. |
| uint16 | referral code for our referral program. Use 0 for no referral code. |
View Methods
getWETHAddress**()**
function getWETHAddress()
Returns the WETH address used by the WETHGateway.
Last updated