diff --git a/services/wallet/router.go b/services/wallet/router.go index 8d4a6f4b7..6947da96a 100644 --- a/services/wallet/router.go +++ b/services/wallet/router.go @@ -570,6 +570,11 @@ func (r *Router) suggestedRoutes( } requiredNativeBalance := new(big.Int).Mul(gweiToWei(maxFees), big.NewInt(int64(gasLimit))) + // Removed the required fees from maxAMount in case of native token tx + if token.IsNative() { + maxAmountIn = (*hexutil.Big)(new(big.Int).Sub(maxAmountIn.ToInt(), requiredNativeBalance)) + } + if nativeBalance.Cmp(requiredNativeBalance) <= 0 { continue }