Вы отправляете SOL — на биржу, на новый кошелёк или на обмен, — а кошелёк или сеть отвечает ошибкой вроде Transaction results in an account (1) with insufficient funds for rent. Баланс есть, комиссия копеечная, но перевод не проходит. Это не сбой Phantom или Solflare, а правило сети Solana: каждый аккаунт должен либо держать минимальный запас SOL, либо иметь нулевой баланс. Разберём, какой из двух аккаунтов нарушает правило и как отправить монеты без ошибки.
Симптом: перевод SOL отклонён из-за rent
- кошелёк показывает ошибку симуляции со словами «insufficient funds for rent»;
- в сообщении упоминается аккаунт с номером — (0) обычно отправитель, (1) — получатель;
- вы пытались отправить почти весь баланс, оставив «немного на комиссию»;
- или отправляли очень маленькую сумму на совершенно новый адрес.
Почему так: rent-exempt минимум
В Solana данные любого аккаунта хранятся валидаторами, и за это хранение взимается «рента». На практике сеть требует, чтобы каждый аккаунт держал баланс не ниже rent-exempt минимума, который зависит от размера данных аккаунта. Механика описана в документации Solana об аккаунтах и в описании ренты. Для обычного кошелька без данных минимум составляет доли SOL — на момент написания около 0,00089 SOL, но точное значение лучше проверить в кошельке или в калькуляторе rent-exempt.
Отсюда два правила, которые сеть проверяет при каждом переводе:
- после транзакции баланс отправителя должен быть либо нулевым, либо не ниже минимума;
- баланс получателя после зачисления тоже должен быть нулевым или не ниже минимума — значит, на пустой новый адрес нельзя отправить сумму меньше минимума.
Подробнее о том, откуда берётся цифра и куда уходят 0,002 SOL при создании токен-аккаунтов, — в статье про rent-exempt минимум.
| Ситуация | Чей аккаунт нарушает правило | Как исправить |
|---|---|---|
| Отправляете почти всё, оставляя крошечный остаток | Отправитель | Отправить всё (Max) или оставить не меньше минимума |
| Мелкая сумма на новый пустой адрес | Получатель | Отправить сумму не меньше минимума |
| Отправка с аккаунта, где SOL заблокирован в токен-аккаунтах | Отправитель | Закрыть пустые токен-аккаунты, чтобы освободить SOL |
Что делать по шагам
- Посмотрите номер аккаунта в ошибке. Если ошибка про отправителя, вы пытаетесь оставить остаток ниже минимума.
- Хотите освободить кошелёк полностью — нажмите «Max»: Phantom и Solflare сами вычтут комиссию и обнулят баланс.
- Хотите продолжать пользоваться кошельком — оставьте на нём не меньше минимума плюс запас на будущие комиссии.
- Если ошибка про получателя и адрес новый, увеличьте сумму до минимума или выше.
- Если SOL «застряли» в пустых токен-аккаунтах, закройте их функцией очистки в кошельке — освобождённый депозит вернётся на основной баланс.
- Перед повтором убедитесь, что предыдущая попытка не прошла: найдите подпись в обозревателе, как описано в гайде по Solscan.
SOL на обмен: как рассчитать сумму
При обмене на странице SOL → USDT вы отправляете на адрес депозита ровно сумму из заявки. Адрес депозита — уже существующий аккаунт, поэтому ограничение для получателя здесь обычно не мешает. Ошибку чаще вызывает отправитель: если вы хотите обменять почти весь баланс, либо отправляйте всё до нуля, либо оставьте минимум и запас на комиссии. Учтите, что сумма в заявке и фактически отправленная должны совпадать, а оплата должна прийти в течение часа. Если нужен USDT в сети Solana, заранее проверьте, есть ли на кошельке получателя SOL для будущих переводов.
Иногда ошибку видят и при выводе SOL с биржи на новый кошелёк: биржа пытается отправить сумму после вычета своей комиссии, и она оказывается меньше минимума для нового аккаунта. В этом случае увеличьте сумму вывода. Если же вы получаете на новый адрес не SOL, а токен вроде USDT, отправитель дополнительно платит депозит за создание токен-аккаунта получателя — это отдельная небольшая сумма, которую кошелёк покажет перед подписью.
Повторять неудавшуюся попытку можно сразу: транзакция, отклонённая из-за ренты, не попадает в блок и не списывает с вас ничего, кроме, в некоторых случаях, комиссии, если сбой произошёл уже при исполнении. Проверьте это в обозревателе, прежде чем отправлять снова, чтобы не создать двойной платёж.
Как не повторить
- Держите на кошельке небольшой запас SOL сверх минимума, если пользуетесь им постоянно.
- Для полного вывода используйте «Max», а не вводите сумму вручную.
- Не отправляйте «пробные» суммы меньше минимума на новые адреса.
- Периодически закрывайте пустые токен-аккаунты от спам-токенов: это освобождает SOL.
Частые вопросы
Что значит insufficient funds for rent в Solana?
После перевода один из аккаунтов остался бы с балансом выше нуля, но ниже rent-exempt минимума. Сеть такое не допускает: баланс должен быть либо нулевым, либо не ниже минимума.
Как отправить весь SOL без ошибки rent?
Используйте кнопку Max в кошельке: она вычтет комиссию и обнулит баланс. Нулевой баланс правилу не противоречит.
Почему нельзя отправить совсем мало SOL на новый адрес?
Новый аккаунт после зачисления должен иметь баланс не ниже rent-exempt минимума. Отправьте сумму не меньше минимума.