Что значит Success, Pending, Failed в транзакции TRON
Полный разбор статусов транзакций сети TRON: как понять, прошёл ли перевод, и что делать в каждом случае
Начните прямо сейчас
Подключите кошелёк и получите полный доступ к инструментам TronScan: проверка транзакций, балансов и ресурсов.
Каждая транзакция в сети TRON последовательно проходит несколько стадий — от отправки до полного подтверждения. На TronScan вы можете видеть различные статусы, и понимание каждого из них поможет быстро сориентироваться, всё ли в порядке с вашим переводом. В этом материале разберём все возможные статусы транзакций TRON.
Success (Успешно)
Это идеальный статус, который означает, что транзакция выполнена и подтверждена сетью. Средства списаны с отправителя и зачислены получателю. На TronScan такой статус отображается зелёной меткой Success в верхней части страницы транзакции. В ответе ноды возвращается код SUCCESS — это значит, что смарт-контракт выполнен без ошибок.
Обычно транзакция получает статус Success через 1-3 минуты после отправки. Для полной уверенности дождитесь хотя бы 1 подтверждения (confirmation). Большинство сервисов считают транзакцию окончательной после 1 блока, но для крупных сумм рекомендуется 19 подтверждений (как на биржах).
Pending (В обработке)
Статус Pending означает, что транзакция отправлена в сеть и находится в очереди на включение в блок. Она уже есть в мемпуле, но валидаторы (суперпредставители) ещё не включили её в свой блок. Pending — это временное состояние, которое может длиться от нескольких секунд до нескольких часов.
Транзакция может зависнуть в Pending по трём причинам: низкая комиссия (другие транзакции с более высокой комиссией получают приоритет), перегрузка сети (количество транзакций в секунду превышает пропускную способность) или проблемы с нодой, через которую была отправлена транзакция. В среднем 90% Pending-транзакций обрабатываются в течение 30 минут.
Что делать при длительном Pending
Если транзакция висит в Pending более часа, попробуйте отменить её методом Replace-by-TX — отправьте новую транзакцию с тем же nonce и более высокой комиссией. Если отмена невозможна (например, на бирже), просто дождитесь истечения 24 часов — транзакция автоматически перейдёт в статус Expired.
Failed (Ошибка выполнения)
Статус Failed означает, что транзакция была включена в блок, но её выполнение завершилось ошибкой. Это самый неприятный, но информативный статус. На TronScan вы увидите красную метку Failed и код ошибки в секции Receipt. Возможные причины:
| Код ошибки | Причина | Решение |
|---|---|---|
| REVERT | Смарт-контракт отклонил операцию | Проверьте параметры вызова контракта |
| OUT_OF_ENERGY | Не хватило Energy для выполнения | Пополните Energy или увеличьте Fee Limit |
| BAD_JUMP_DESTINATION | Ошибка в коде контракта | Проблема на стороне контракта, обратитесь к разработчикам |
| INVALID_INSTRUCTION | Недопустимая инструкция в контракте | Обновите версию контракта |
| TRANSFER_FAILED | Не удалось передать токен | Проверьте баланс и адрес получателя |
Важно: при статусе Failed средства не списываются со счёта отправителя. Комиссия за неудачную транзакцию сгорает частично — обычно 100-500 TRX за использованную Energy. Остаток возвращается на кошелёк.
Rejected (Отклонена)
Статус Rejected отличается от Failed тем, что транзакция была отклонена нодой до включения в блок. Причины: неверная подпись (invalid signature), истёк срок действия транзакции до отправки, дубликат транзакции с таким же ID уже существует. Rejected — редкий статус, обычно связан с ошибками на стороне кошелька. Средства не списываются, комиссия не взимается.
Expired (Истекла)
Каждая транзакция в TRON имеет срок действия — по умолчанию 24 часа с момента подписания (определяется параметром TxnExpiration). Если за это время транзакция не была включена в блок, она получает статус Expired и удаляется из мемпула. Средства остаются на кошельке. Это защитный механизм, предотвращающий зависание транзакций навсегда.
Unconfirmed (Неподтверждена)
В сети TRON статус Unconfirmed встречается крайне редко. Обычно он означает, что транзакция есть в блоке, но блок ещё не получил достаточного количества подтверждений от других суперпредставителей. В TRON используется механизм подтверждения (consensus) — после создания блока суперпредставителем другие валидаторы должны его подтвердить. Unconfirmed — это промежуточный статус, который почти всегда переходит в Success в течение 1-2 минут.
Как читать страницу транзакции на TronScan
При просмотре транзакции обращайте внимание на следующие поля:
- Status — главный индикатор: Success / Failed / Pending.
- Receipt — детали выполнения: использовано Energy, комиссия (Fee), результат (SUCCESS / REVERT).
- Block — номер блока, в который включена транзакция. Если null — транзакция ещё не обработана.
- Confirmations — количество подтверждений. Для финальности достаточно 1.
- Contract Result — результат выполнения контракта (только для вызовов контрактов).
Что делать для каждого статуса
- Success: ничего не делать, средства дошли.
- Pending: подождать 30-60 минут. Если не меняется — отменить транзакцию.
- Failed (REVERT): проверить параметры, пополнить Energy и отправить заново.
- Failed (OUT_OF_ENERGY): арендовать или заморозить TRX для Energy, затем повторить.
- Rejected: проверить подпись в кошельке, переподписать транзакцию.
- Expired: просто отправить новую транзакцию.
- Unconfirmed: подождать 1-2 минуты.
Примеры из практики TronScan
Рассмотрим реальные кейсы пользователей. Кейс 1: пользователь отправил USDT, но не проверил Energy. Транзакция зависла в Pending на 6 часов. Решение: арендовал Energy через PokerE, отменил старую транзакцию методом replace-TX и отправил новую — прошла за 2 минуты. Кейс 2: транзакция завершилась Failed с кодом OUT_OF_ENERGY. Пользователь пополнил Energy, отправил снова — успех. Кейс 3: получатель утверждал, что не видит USDT, хотя TronScan показывал Success. Оказалось, в кошельке не был добавлен контракт USDT TRC-20. После добавления токены отобразились.
Итоги
Понимание статусов транзакций TRON помогает быстро реагировать на проблемы и не терять средства. Запомните главное: Success — всё хорошо, Pending — подождите или отмените, Failed — исправьте причину и отправьте заново. Всегда проверяйте статус на TronScan перед повторной отправкой.