TON не любит нищих TON сделан таким образом, чтобы вы не задавались… — Понакодили — TG.ME

TON не любит нищих

TON сделан таким образом, чтобы вы не задавались вопросом: «Ой, а хватит ли мне денег?». У вас всегда должно быть чуть больше TON, чем вы хотите отправить.

В TON есть классная штука — комиссия за хранение (storage fee). По сути, это как платное место в iCloud, только вы платите за то, что ваш кошелек не удалился из блокчейна. Особая прелесть этой комиссии в том, что вы не знаете точно, сколько именно нужно заплатить. Это решается в момент создания транзакции: рассчитывается, сколько секунд назад было последнее списание комиссии за хранение, и эта сумма списывается с вашего баланса дополнительно к тому, что вы переводите.

Суммы там копеечные: обычный W5-кошелек тратит около 0.000022124 TON за неделю. Это всего 0.01 TON в год.

Интересное начинается, когда вы пытаетесь рассуждать как-то так: «Я хочу перевести 11.54 TON, у меня на балансе 11.540419277 TON. За газ с меня возьмут 0.000329268 TON. Я хочу добавить комментарий к переводу, значит, за action fee уйдет еще 0.000089964 TON. Последний раз storage fee я платил 20 минут назад — это еще 0.000000045 TON... Ой, пока я считал, прошла еще одна секунда, значит, storage fee стал больше!»

И вот мы получаем такую транзакцию
(посмотрите на Action Phase — Total actions: 1, Skipped actions: 1):

https://tonviewer.com/transaction/d8ef607419a3e635344f9d7e0b20d35fbd8a370aa7cd08157ac5df1b3a432eb7

Кошелек попытался отправить тоны, но тонов на комиссии не хватило. В итоге ничего не отправилось: вы просто заплатили комиссии за газ и хранение, но само действие не совершилось.

TON существует уже 5 лет, но эта ошибка все еще встречается в MyTonWallet.
По-хорошему, кошелек должен был рассчитать, что денег на транзакцию не хватит, и не давать её отправлять. Но рассчитать это сложно, потому что TON не любит нищих и не дает удобных инструментов для таких расчетов. MyTonWallet тут не одиноки, в Tonkeeper такая ошиба тоже была долгое время
🔥8🤯2
May 8, 2026 387 4 1