Error "SafeERC20: low-level call failed" when trying to liquidate certain users
- Aave liquidation Aave
Hello fellow developers,
I'm currently trying to execute Aave liquidations transaction for some users that have a HF < 1, but I'm running into issues with users that are impossible to liquidate. All liquidations involve renFIL
as the debt token.
The users that causing problems are:
- 0x1386e0c6ed076b96def5313aa1ab51e5e7f00355
- 0x00324d6fdbaa17b1a5256f396319d513aefbbacf
- 0x7ffe5d8396267b6bfd2c0151dd9df77ce98efced
Specifically, when I try to execute the liquidation, it fails on gas estimation with the following error:
Error: VM Exception while processing transaction: reverted with reason string 'SafeERC20: low-level call failed', data: Some(Object {"data": String("0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000205361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564"), "message": String("Error: VM Exception while processing transaction: reverted with reason string 'SafeERC20: low-level call failed'")})
Can anyone provide any insights or suggestions on how I can address this issue? I would greatly appreciate your help in understanding this problem.
Thank you in advance for any assistance you can provide!
Answers 1
You can try simulating in tenderly, or if you send the to and from address of the transaction we can try to help debug as well.
-
P.S.
The transaction didn't hit the mempool, but fails on gas estimation. Noticed it fails on the aToken contract (aRENFIL: 0x514cd6756CCBe28772d4Cb81bC3156BA9d1744aa) when requesting the aave flashloan for renFIL.
So it's not the liquidationCall to fail, but the AAVE V2 FlashLoanLogicat line 95: It invokes the aToken function transferUnderlyingTo that fails at line 164 of AToken.sol: IERC20(_underlyingAsset).safeTransfer(target, amount);