USDT

Как принимать USDT TRC20

Что значит принимать USDT в сети TRON (TRC20) для бизнеса: почему это самый частый стейблкоин-рельс, как проходит платёж и каких ошибок избегать.

USDT в сети TRON, он же USDT TRC20, это стейблкоин-рельс, которым большинство клиентов уже платят и получают оплату. Принимать его нужно не из-за самой монеты, а ради трёх практических вопросов: как платит клиент, как ваша система узнаёт о поступлении денег и что делать, когда что-то идёт чуть не так. Ответы ниже.

Что такое USDT TRC20 на самом деле

USDT это стейблкоин компании Tether, привязанный к доллару США. Он существует в нескольких блокчейнах, и сеть определяет, как ведёт себя перевод. TRC20 это стандарт токенов в TRON. Адрес USDT TRC20 начинается с буквы T, а перевод это транзакция TRON.

Почему он так популярен у клиентов:

  • переводы дешёвы по сравнению со многими другими сетями, что важно для небольших и средних заказов;
  • большинство бирж и кошельков поддерживают вывод в этой сети, поэтому для многих покупателей она выбор по умолчанию;
  • сумма в долларах, так что ни вы, ни клиент не несёте колебаний цены между заказом и оплатой.

Для продавца это означает: значительная часть клиентов, говорящих «плачу в USDT», имеют в виду USDT в TRON. Если вы его не принимаете, вам труднее заплатить.

Сеть входит в платёж

Одна и та же монета в другой сети это другой платёж. USDT в TRON, в Ethereum (ERC20) и в BNB Smart Chain (BEP20) используют разные адреса и разные рельсы, и средства, отправленные не туда, не приходят туда, куда ждёт отправитель. Это самая дорогая ошибка в платежах стейблкоинами, и допускают её клиенты, а не продавцы.

Что помогает:

  • пусть сеть определяет страница оплаты, а не текст на вашем чекауте: клиент выбирает там актив и сеть и получает соответствующий адрес;
  • чётко напишите на чекауте, какие сети вы принимаете (см. поддерживаемые монеты);
  • если хотите направить всех в TRON, передайте способ оплаты USDT TRC20 при создании платежа, и страница откроется с ним уже выбранным.

Qvard поддерживает среди прочих сети TRON (TRC20), Ethereum (ERC20) и BNB Smart Chain (BEP20). Несколько сетей это не плохо, но каждый лишний выбор даёт клиенту шанс по привычке выбрать не ту сеть; страница оплаты показывает сеть и адрес вместе, чтобы это было заметно.

Как проходит платёж в USDT

Путь от заказа до оплаты:

  1. Клиент выбирает оплату криптой, и ваш сервер создаёт платёж под заказ.
  2. Шлюз возвращает страницу оплаты. Клиент выбирает USDT и сеть TRC20 и видит адрес и точную сумму.
  3. Он отправляет сумму из кошелька или с биржи. Курс на странице зафиксирован на один час, поэтому сумма не меняется, пока клиент платит.
  4. Шлюз следит за сетью TRON. Когда вся сумма поступила и платёж окончательный, он вызывает ваш webhook.
  5. Ваша система помечает заказ оплаченным.

Вы не генерируете адреса TRON и не запускаете ноду. Создание платежа это один запрос: POST на https://api.qvard.com/api/v1/payment с заголовком x-api-key и телом с номером заказа id и price в долларах США. Пошаговая версия с кодом есть в материале как принимать криптоплатежи на сайте.

Комиссии: кто за что платит

Три разные комиссии часто путают, поэтому разделим их.

  • Сетевая комиссия перевода. Тот, кто отправляет USDT в TRON, оплачивает транзакцию ресурсами сети (TRX или энергия). Когда клиент платит вам, это его расход. В цену её включать не нужно, хотя у клиента, платящего с биржи, из отправляемой суммы может вычесться комиссия вывода.
  • Комиссия шлюза. По странице тарифов она индивидуальна для проекта: от 1%, по договорённости до 0,1%. Абонентской платы нет.
  • Сетевая комиссия при выводе. Вывод баланса на ваш кошелёк стоит только сетевую комиссию.

На чекауте важен первый пункт: если клиент отправил меньше, потому что биржа вычла комиссию из суммы, платёж недоплачен, а не завершён.

Недоплаты и другие частные случаи

Платёж заканчивается одним из четырёх статусов: wait (создан), partial (пришло меньше нужного), completed (вся сумма поступила) и rejected. Webhook срабатывает только на completed.

Для USDT TRC20 реальные проблемы такие:

  • Недоплата с биржи. Комиссию вывода вычли из суммы. Статус partial. Заранее решите, просите ли вы разницу или возвращаете деньги, и сообщите клиенту на странице заказа.
  • Платёж после окна курса. Курс фиксируется на час. Если клиент платит гораздо позже, разбирайте это как обращение в поддержку, а не строите под него автоматику.
  • Не та сеть. Клиент заплатил в другой сети, чем показывала страница. Это требует ручного разбора и кодом не исправляется; держите на пути оплаты понятный контакт поддержки.

Сделайте обработчик заказа идемпотентным, потому что webhook повторяется, пока ваша точка не ответит ровно HTTP 200, и сравнивайте заголовок x-api-key с вашим ключом. Подробнее в материале как защитить webhook криптоплатежей.

С чего начать

Короткий порядок действий, который приведёт к рабочему чекауту с USDT TRC20:

  1. Создайте аккаунт и проект, получите API-ключ.
  2. Откройте демо-счёт, чтобы увидеть то, что увидит клиент.
  3. Добавьте вызов создания платежа на чекаут, с номером заказа в id.
  4. Добавьте точку webhook, сохраните её адрес как callback URL и помечайте заказы оплаченными только по completed.
  5. Заплатите небольшую настоящую сумму в USDT в TRON и проверьте весь путь, включая вывод на ваш кошелёк.

Отдельный sandbox пока в планах, поэтому сейчас берите небольшие реальные суммы. Точные форматы запросов и ответов в документации для разработчиков.

Куда можно вывести

Средства с платежей лежат на вашем балансе в Qvard, и вы выводите их на свой криптокошелёк; стоимость вывода это сетевая комиссия. Вывода на банковский счёт в фиате нет, поэтому, если нужны наличные, планируйте крипто-выход, например на биржу, которой вы уже пользуетесь.

FAQ

Что значит TRC20?

TRC20 это стандарт токенов в блокчейне TRON. USDT TRC20 это долларовый стейблкоин Tether в этой сети, адреса которого начинаются с буквы T.

В каких сетях могут платить мои клиенты?

Qvard поддерживает среди прочих TRON (TRC20), Ethereum (ERC20) и BNB Smart Chain (BEP20). Клиент выбирает актив и сеть на странице оплаты, либо вы можете заранее выбрать способ оплаты при создании платежа.

Что если клиент отправил USDT не в той сети?

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

Кто платит сетевую комиссию TRON?

Комиссию за перевод платит отправитель. При выводе вашего баланса на кошелёк вывод стоит только сетевую комиссию.

Можно ли вывести на банковский счёт?

Нет. Вывод идёт на криптокошелёк. Вывода на банковский счёт в фиате нет.

Похожие статьи

Похожие статьи