К основному содержанию
T TON Adoption
← Словарь
NODE/03 · Term

Storage Fee

Регулярная комиссия в TON за хранение состояния контракта на цепочке. Списывается со счёта контракта пропорционально размеру данных и времени.

Синонимы: storage fee, плата за хранение, rent

Storage Fee — это TON-специфичная комиссия за постоянное хранение данных смарт-контракта в стейте сети. В отличие от Ethereum, где данные хранятся «вечно» бесплатно, в TON каждый контракт платит за свою «жилплощадь» в стейте.

Как считается

Storage-fee начисляется при каждой транзакции контракта и зависит от двух вещей:

  • Размер хранимых данных в битах и cells (включая код контракта).
  • Время с прошлой транзакции в секундах.

Формула — это произведение: чем больше данных и чем дольше контракт молчал, тем выше накопленная плата. Параметры цены задаются конфигурацией сети.

Зачем такая модель

Это решает проблему state bloat — типичная для Ethereum ситуация, когда тысячи неактивных контрактов навсегда занимают место в стейте, и валидаторам приходится держать его в памяти бесплатно. В TON владелец контракта мотивирован не оставлять «мертвые» контракты с большим состоянием — за них продолжает капать счёт.

Практические следствия

  • Кошельки нужно подкармливать. Wallet-контракт с маленьким балансом и большим временем простоя может в какой-то момент исчерпать средства на storage-fee. Сеть тогда контракт замораживает.
  • Замороженные контракты. Если баланс ушёл в отрицательную зону, контракт переходит в состояние frozen. Чтобы его вернуть, нужно перевести на адрес TON для покрытия долга и unfreeze-сообщение.
  • Storage deposit. Обычно к контракту при деплое привязывают небольшой запас TON (0.01–0.1 TON) — этого хватает на годы простой работы.

Для типичного пользовательского кошелька storage-fee — несколько центов в год. Для крупных DEX-контрактов с сотнями килобайт состояния речь уже идёт о заметных суммах ежегодно.

См. также