Сначала проверить, затем подписать
Кошелёк выбирает входы UTXO, создаёт выход получателю, обычно также выход сдачи пользователю, и рассчитывает комиссию как разность входов и выходов. До подписи проверьте адрес получения, сумму, валюту или единицу и то, что используется Bitcoin on-chain.
Копирование и QR-код уменьшают ошибки ручного ввода, но заражённое устройство может подменить данные. При отдельном устройстве подписи решающим является сравнение его экрана с исходным указанием. Несколько сокращённо показанных символов дают более слабую проверку, чем полные или иначе надёжно определённые данные.
Комиссия не рассчитывается от отправляемой суммы
Майнеры выбирают транзакции согласно своей политике и экономике места в блоке. Поэтому кошельки используют feerate — ставку за виртуальный байт — и умножают её на виртуальный размер транзакции. Транзакция с несколькими входами может стоить дороже перевода большей ценности с одним входом.
Виртуальный размер учитывает скидку для witness-данных по правилам SegWit. Пользователю обычно не нужно считать байты вручную, но следует отличать сетевую комиссию от торговой комиссии биржи, спреда и платы сервиса за вывод. Одно слово «комиссия» может означать четыре разных расхода.
- общая комиссия on-chain = feerate × виртуальный размер
- размер зависит от числа и типа входов и выходов
- стоимость в евро сама по себе не определяет сетевую комиссию
Оценка не резервирует место в блоке
Инструменты вроде estimatesmartfee оценивают ставку по наблюдавшимся транзакциям и блокам для выбранной цели подтверждения. Но mempool может быстро заполниться после подписи, а майнеры не обязаны использовать одинаковую политику. Результат — обоснованная оценка, а не договор со сроком.
Срочный платёж может использовать более высокую ставку, несрочный — ждать дешёвого места. Слишком низкая ставка способна означать долгое ожидание или удаление из mempool некоторых узлов. Само по себе это не значит, что биткоины исчезли; UTXO позднее можно потратить снова согласно состоянию сети и кошелька.
Что можно сделать после отправки
Некоторые кошельки поддерживают Replace-by-Fee: отправитель создаёт замену с большей комиссией. Другой вариант — Child Pays for Parent, когда расходование сдачи из ожидающей транзакции мотивирует майнера включить весь пакет. Доступность зависит от конструкции транзакции, политики узлов и функций кошелька.
Эти механизмы не являются надёжной кнопкой «Отмена». После подтверждения вернуть платёж новой транзакцией может только владелец ключа от полученного выхода. При большой или необычной оплате малая проба и проверка комиссии до подписи разумнее, чем попытка исправить ошибку после распространения.