TGViewer
Понакодили Понакодили @nacodili · 118 subscribers
Post #8 470
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
More from @nacodili
  1. Sep 17, 2026Это, наверное, самый безобидный баг, но мерзкий. Проявляется он так: dApp вызывает кошелек…
  2. Sep 17, 2026Последние 4 года я занимаюсь проектами на TON. Я участвовал в разработке Getgems, Lost Dog…
  3. Sep 16, 2026Post #11
  4. Aug 26, 2026Как я починил fragment Просто пополнил баланс нфт на 0.005 GRAM. После этого нфт хватило д…
  5. Aug 23, 2026Недавно прочитал новость про неслучайные сид-фразы: https://t.me/ctodaily/2117 И решил поп…
  6. Dec 26, 2025Сегодня я узнал, что в func нельзя написать много условий подряд, компилятор из @ton-commu…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →