Tx Doctor / EVM 리버트 사전 / ERC-20 승인 한도 부족
EVM 오류: ERC-20 승인 한도 부족
라우터나 컨트랙트가 그만큼 인출할 권한이 없어 transferFrom이 revert했습니다.
원인
- 스왑이나 예치 전에 approve()를 보내지 않았습니다.
- 승인 한도가 이전 거래에서 이미 사용되었습니다.
- 호출되는 라우터가 아닌 다른 주소에 승인했습니다(v2, v3, universal router가 각각 다름).
- USDT 계열 토큰은 새 한도를 설정하기 전에 0으로 초기화해야 합니다.
해결 방법
- 실제로 호출되는 컨트랙트에 승인하세요. 실패한 거래에서 spender 주소를 복사하면 됩니다.
- 정확한 금액으로 승인하거나, dApp이 지원하면 Permit2 / permit 서명을 쓰세요.
- USDT는 먼저 0으로 승인한 뒤 새 금액을 승인하세요.
지갑·익스플로러에서 보이는 모습
ERC20: insufficient allowance
지금 이 문제가 발생했나요? 트랜잭션 해시를 붙여 넣으면 체인을 자동으로 찾아 실제 실패 원인을 디코딩합니다.
내 트랜잭션 진단하기