Контракт USDT TRC20: адрес, как устроен transfer и почему он стоит энергии
Где живут ваши USDT в сети TRON, как проверить адрес контракта USDT TRC20, что происходит внутри при переводе и почему именно вызов transfer съедает энергию.
Коротко: контракт USDT TRC20 — это смарт-контракт Tether в сети TRON по адресу TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t. Ваши USDT лежат не «на кошельке», а в таблице балансов внутри этого контракта. Перевод USDT — это вызов функции transfer: сеть исполняет код контракта, меняет две записи в его хранилище и списывает за это энергию. Отсюда и комиссия: около 64 500–65 000 энергии на адрес, где уже есть USDT, и примерно вдвое больше на пустой.

Адрес контракта USDT TRC20 и как его проверить
Настоящий USDT в сети TRON один — его выпускает Tether, и у него один адрес контракта: TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t. Всё, что называется USDT, но живёт по другому адресу, — другой токен, даже если у него та же иконка и то же название.
Проверить контракт можно за минуту в обозревателе Tronscan:
- Вставьте адрес TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t в поиск Tronscan и откройте страницу токена.
- Название контракта — TetherToken, символ — USDT, количество знаков после запятой (decimals) — 6.
- У токена есть отметка верификации, а среди держателей и переводов — огромные объёмы, а не пара десятков адресов.
- Во вкладке Contract виден исходный код: функции transfer, approve, balanceOf, а также функции чёрного списка Tether.
Главное правило: сверяйте адрес, а не название. Название токена может задать кто угодно, адрес контракта подделать нельзя.
Как отличить настоящий USDT от подделки и схем с «прошитыми» токенами — в статье flash USDT TRC20: почему это развод.
Где на самом деле лежат ваши USDT
TRX — родная монета сети: её баланс хранится прямо в аккаунте адреса. С USDT иначе. Внутри контракта USDT TRC20 есть таблица: адрес → сумма. Когда кошелёк показывает 500 USDT, он просто спрашивает у контракта функцией balanceOf, какая цифра записана напротив вашего адреса.
Из этого следуют три практических вывода:
- Кошелёк — это ключ к записи в таблице, а не сейф с монетами. Потеряли сид-фразу — запись осталась, но распоряжаться ею некому.
- Добавить USDT в кошелёк вручную — значит попросить кошелёк показывать баланс из конкретного контракта. Если добавить чужой контракт, вы увидите чужой токен.
- Владелец контракта (Tether) может влиять на записи в таблице: в коде есть чёрный список и функции заморозки. Об этом ниже.
Как устроен transfer: что происходит при переводе USDT
Когда вы нажимаете «Отправить», кошелёк не пересылает монету. Он собирает транзакцию типа TriggerSmartContract — вызов контракта — и подписывает её вашим ключом. Внутри три вещи: адрес контракта USDT, имя функции transfer(address,uint256) и два параметра — адрес получателя и сумма.
Сумма передаётся в минимальных единицах. У USDT TRC20 шесть знаков после запятой, поэтому 10 USDT в транзакции — это число 10 000 000. Кошелёк делает пересчёт сам, но если вы работаете через API, ошибка в decimals — частая причина перевода «не той суммы».
Дальше сеть исполняет код контракта в виртуальной машине TRON (TVM):
- Проверяет, не поставлен ли контракт на паузу и не находится ли отправитель в чёрном списке Tether.
- Проверяет, что на балансе отправителя хватает USDT.
- Уменьшает запись отправителя в таблице балансов.
- Увеличивает запись получателя — или создаёт её, если у адреса ещё не было USDT.
- Записывает событие Transfer — по нему кошельки, биржи и Tronscan узнают, что перевод состоялся.
Блок в TRON выходит раз в 3 секунды, поэтому сам вызов исполняется быстро. Если на любом шаге проверка не прошла, транзакция откатывается: балансы не меняются, но потраченные ресурсы не возвращаются.
Что значат статусы SUCCESS, REVERT и OUT_OF_ENERGY и как их читать — в статье проверить транзакцию TRC20.
Почему вызов контракта USDT TRC20 стоит энергии
В TRON два ресурса. Bandwidth платит за размер транзакции в байтах: простой перевод весит около 345–360 bandwidth, и каждый адрес получает 600 бесплатных bandwidth в сутки. Энергия платит за работу виртуальной машины — каждую операцию кода и особенно каждую запись в хранилище контракта.
Перевод TRX — это не вызов контракта, поэтому ему обычно хватает bandwidth. Перевод USDT запускает код, читает и переписывает таблицу балансов — отсюда расход энергии. Ориентиры по сети: около 64 500–65 000 энергии, если у получателя уже есть USDT, и около 131 000, если адрес пустой. Если энергии на адресе нет, сеть сжигает TRX: примерно 6,5 TRX за обычный перевод и около 13 TRX за перевод на пустой адрес.
Почему на пустой адрес нужно вдвое больше энергии
Изменить существующую запись в хранилище контракта дешевле, чем создать новую. Если у получателя USDT уже были, контракт переписывает его число. Если не было — заводит новую ячейку, и эта операция стоит заметно дороже. Поэтому первый перевод USDT на свежий адрес всегда тяжелее последующих.
Почему сумма перевода не влияет на комиссию
Контракту всё равно, переписать 5 или 500 000: это одно и то же число в одной ячейке. Энергия зависит от того, какие операции выполнил код, а не от суммы. Поэтому крупные переводы обходятся в ту же энергию, что и мелкие, — и разбивать сумму на части ради экономии бессмысленно: каждая часть заплатит полную цену вызова.
Есть и сетевой множитель. В TRON работает модель динамической энергии: у популярных контрактов расход на вызов повышается коэффициентом energy_factor, а когда нагрузка спадает, коэффициент снижается. У контракта USDT он ненулевой — это одна из причин, почему цифры в кошельке со временем немного гуляют.
Подробно о множителе и других причинах колебаний — в статье почему комиссия TRC20 каждый раз разная. Исходные правила — в документации TRON о ресурсной модели.
Другие функции контракта USDT, которые стоит знать
- approve и transferFrom — разрешение другому адресу или сервису списывать ваши USDT. Удобно для DEX и платёжных шлюзов, опасно, если разрешение бесконечное и выдано мошеннику.
- allowance — показывает, сколько вы уже разрешили списать конкретному адресу.
- isBlackListed, addBlackList, destroyBlackFunds — чёрный список Tether. Адрес из списка не может отправлять USDT, а его баланс эмитент может обнулить.
- pause — эмитент может приостановить переводы по всему контракту.
- basisPointsRate и maximumFee — встроенная в код комиссия эмитента. По данным контракта на 5 ноября 2026 года обе равны нулю: Tether за перевод ничего не берёт, вы платите только ресурсами сети.
Как найти и отозвать выданные разрешения — в статье отозвать approve TRON.
Как увидеть вызов контракта в своей транзакции
- Откройте свою транзакцию на Tronscan по хэшу (TXID).
- В поле типа транзакции будет вызов смарт-контракта, а в поле контракта — адрес TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t.
- Ниже — метод transfer, адрес получателя и сумма.
- В блоке ресурсов — сколько энергии и bandwidth списано, и сожжены ли TRX, если своей энергии не хватило.
- Во вкладке событий — запись Transfer: от кого, кому и сколько.
Если адрес контракта в транзакции другой — вам прислали не USDT, как бы токен ни назывался в кошельке.
Как платить за вызов контракта меньше
Энергия для перевода USDT берётся из трёх источников: заморозка своих TRX, сжигание TRX в момент перевода или аренда энергии у того, у кого она есть. Для разовых и регулярных переводов без крупного стейка аренда обычно выходит дешевле сжигания, но точная разница зависит от рынка энергии и курса TRX в конкретный день.
Если вы переводите USDT часто, можно купить энергию TRON под конкретную транзакцию: ресурс делегируется на ваш адрес на выбранный срок, доступ к ключам не нужен. Скорость доставки зависит от сети и поставщиков.
USDT в TRON — это строка в таблице контракта. Перевод переписывает две строки, и платите вы за работу, а не за сумму.
Хотите, чтобы следующий вызов контракта USDT не сжигал TRX? Рассчитайте энергию под свой адрес в боте @overtronbot.
Читайте также

Почему перевод USDT на пустой кошелёк съедает вдвое больше энергии: 64 285 против 130 285

Перевод USDT между своими кошельками: как перекладывать дёшево

Тестовая сеть TRON: как потренироваться переводить USDT в Shasta и Nile без риска

Грязные USDT: что делать, если «грязные» деньги пришли на ваш кошелёк TRC-20

Обменять USDT на TRX: все способы и их издержки — бот, DEX, биржа, обменник

Приём USDT TRC20 в боте или сервисе: адреса, комиссии, ошибки
Какой адрес у контракта USDT TRC20?
Официальный контракт USDT от Tether в сети TRON: TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t. Название контракта — TetherToken, символ USDT, 6 знаков после запятой. Любой другой адрес — другой токен.
Как проверить, что контракт USDT настоящий?
Откройте адрес контракта на Tronscan: адрес должен совпадать до последнего знака, у токена отметка верификации, название TetherToken и огромное число держателей. Сверяйте адрес, а не название и иконку.
Почему перевод USDT тратит энергию, а перевод TRX — нет?
TRX — родная монета сети, её перевод не вызывает контракт и обходится bandwidth. Перевод USDT запускает код контракта и переписывает его хранилище, а за работу виртуальной машины сеть берёт энергию.
Зависит ли комиссия за USDT от суммы перевода?
Нет. Контракт переписывает одно число в ячейке — для него 5 и 500 000 USDT одинаковы. Энергия зависит от того, есть ли у получателя USDT, и от сетевого множителя динамической энергии.
Почему на пустой адрес уходит вдвое больше энергии?
Если у получателя не было USDT, контракт создаёт для него новую запись в хранилище, а это дороже, чем изменить существующую. Ориентир: около 131 000 энергии против 64 500–65 000 на адрес с USDT.
Может ли Tether заморозить USDT TRC20?
Да. В коде контракта есть чёрный список: адрес из него не может отправлять USDT, а эмитент может обнулить его баланс. Поэтому перед крупными переводами полезно проверять контрагента.
Что означает decimals 6 у USDT TRC20?
Контракт хранит суммы в минимальных единицах: 1 USDT = 1 000 000 единиц. Кошельки пересчитывают сами, но при работе через API сумму нужно умножать на миллион.
Берёт ли Tether свою комиссию за перевод?
В коде контракта есть параметры комиссии эмитента, но на 5 ноября 2026 года они равны нулю. Вы платите только ресурсами сети TRON — энергией и bandwidth или сожжёнными TRX.