Перевод в Ethereum может идти несколько часов, хотя кошелек уже показывает средства как снятые. Такая ситуация не означает потерю денег. Транзакция отправлена в сеть, но пока еще не попала в блок

Чаще всего задержка в завершении транзакции связана с комиссией или резким ростом нагрузки. Но одна ожидающая операция может задержать и следующие переводы с того же адреса. Причина — в очередности транзакций и их номерах.
Pending — перевод еще не подтвержден
Pending — статус «в ожидании». Это значит, что транзакция уже отправлена в сеть, но еще не включена в блок. Пока это не произошло, перевод не считается подтвержденным.
Статус «Pending» не нужно путать с «Failed». Во втором случае транзакция уже попала в блок, но ее выполнение завершилось ошибкой. Потраченная на вычисления комиссия сети при этом обычно не возвращается.
После EIP-1559 пользователь задает максимальную комиссию, которую готов заплатить. Если этот предел оказывается ниже текущей базовой комиссии сети, транзакция не может попасть в такой блок и будет ждать снижения нагрузки или замены на версию с более высокой комиссией.
Nonce и очередь транзакций
Nonce — порядковый номер исходящей транзакции конкретного адреса. Проще представить его как номер в очереди: сначала операция № 15, затем № 16 и только потом № 17.
Если транзакция с nonce 15 зависла, операция № 16 не сможет пройти раньше нее, даже если для второй пользователь указал высокую комиссию. Поэтому одна неудачно отправленная транзакция способна остановить несколько следующих.
Например, пользователь подряд отправил три перевода с nonce 15, 16 и 17. Первый застрял из-за слишком низкого предела комиссии. Два следующих будут ждать, пока операция № 15 не подтвердится или не будет заменена.
Ускорение не меняет уже отправленную транзакцию. Кошелек создает новую версию с тем же nonce, но более высокой комиссией. Если новая версия попадет в блок первой, старая уже не сможет быть выполнена.
Например, перевод с nonce 15 долго не подтверждается. Пользователь нажимает «Ускорить», кошелек повторно отправляет ту же операцию с большей комиссией, и новая версия получает более высокий шанс попасть в ближайший блок.
Отмена работает похожим образом. Вместо исходного перевода кошелек создает другую транзакцию с тем же nonce и более высокой комиссией — обычно отправку 0 ETH самому себе.
Если пользователь случайно отправил 2 ETH не тому человеку и перевод еще ожидает подтверждения, отменяющая транзакция может занять его место. Но гарантии нет: если исходный перевод попадет в блок первым, средства уйдут получателю. Уже подтвержденную транзакцию отменить невозможно.
Опасность повторного перевода
Новая обычная транзакция не заменяет предыдущую, если у нее другой nonce. В результате при снижении нагрузки сеть может подтвердить обе операции.
Например, пользователь отправил 1 ETH, долго не увидел подтверждения и создал еще один обычный перевод на 1 ETH. Если первая транзакция все еще известна сети, обе могут попасть в блоки — получатель получит уже 2 ETH.
Есть и другая ловушка. Ожидающая транзакция может исчезнуть из одного обозревателя или очереди конкретного узла, но это не доказывает, что ее больше нигде нет. У Ethereum нет единой общей очереди неподтвержденных операций: разные узлы хранят собственные наборы транзакций.
Поэтому исчезновение операции из одного интерфейса — не повод сразу повторять платеж с новым nonce. Сначала нужно проверить состояние исходной транзакции и актуальный nonce кошелька.
В личном кошельке пользователь обычно может ускорить или попытаться отменить ожидающую транзакцию. Многие приложения делают замену автоматически через кнопки «Ускорить» и «Отменить». Вручную менять nonce стоит только при понимании механики.
Если криптовалюта выводится с биржи, ситуация другая. Транзакцию формирует площадка, поэтому пользователь обычно не может сам изменить ее nonce или комиссию. Сначала стоит посмотреть, появился ли хеш. Если его еще нет, задержка, скорее всего, происходит внутри биржи и транзакция еще не была отправлена в сеть. Если хеш есть и обозреватель показывает Pending, операция уже передана в сеть, а дальнейшие действия зависят от самой площадки.
Проверка зависшего перевода
Сначала нужно найти транзакцию в обозревателе и проверить ее статус. Если она остается в статусе Pending, стоит посмотреть nonce и параметры комиссии.
В личном кошельке дальше есть три варианта: дождаться снижения нагрузки, ускорить операцию или попытаться ее отменить. Отправлять ту же сумму новой обычной транзакцией наугад не стоит — это создает риск двойного платежа.
Если транзакция пропала из обозревателя, сначала нужно проверить состояние исходной операции и актуальный nonce кошелька. Только после этого стоит решать, нужно ли создавать новый перевод.

3 дней назад
8








English (US) ·
Russian (RU) ·