Как сверить неиспользованные токены после ft_transfer_call в NEAR
Перевод токенов с обратным вызовом может завершиться на меньшую сумму, чем запросил отправитель. Если принять начальное списание за оплату заказа, частичный возврат завысит выручку.
Проследите ответ получателя
Эти примерные аргументы метода задают 1000 минимальных единиц. Контракт токена зачисляет их получателю и вызывает ft_on_transfer. Возвращённое значение указывает неиспользованную сумму. Сохраните отдельно исходное действие и receipt получателя.
{
"receiver_id": "checkout.testnet",
"amount": "1000",
"msg": "order-42"
}
Дождитесь результата разрешающего вызова
Если получатель сообщил о 250 неиспользованных единицах и на его балансе их достаточно, из 1000 использованы 750. Фактический возврат проводит разрешающий вызов. При меньшем остатке сумма возврата может сократиться, поэтому сверяйтесь с исполнением, прежде чем вычитать запрошенную сумму.
Привяжите результат к той же транзакции и контракту токена. Идентификатор заказа в msg служит прикладной меткой: другой аккаунт может передать такое же значение.