Пакетный перевод — это одна транзакция с несколькими получателями, и отслеживается она по единственному хэшу, и в обозревателе такая операция раскрывается списком: видно каждого адресата и сумму, пришедшую именно ему. Главное отличие от серии отдельных переводов в том, что пакет исполняется целиком или не исполняется вовсе, промежуточных состояний у него не бывает.
Зачем объединять переводы
Основная причина — экономия. Комиссия зависит от размера транзакции, и добавление получателя увеличивает её незначительно по сравнению с отправкой отдельной операции на каждого, а при десятке адресатов разница достигает нескольких раз, а при сотне становится принципиальной.
Вторая причина касается учёта. Одна запись вместо десятка упрощает сверку и делает отчётность компактнее.

Как отследить исполнение
| Что смотреть | Где найти |
|---|---|
| Общий статус операции | Страница транзакции по хэшу в обозревателе сети |
| Список получателей | Раздел выходов операции или журнал событий контракта |
| Суммы по каждому адресу | Там же, напротив соответствующего получателя |
| Число подтверждений | Общее для всей операции, отдельных значений нет |
Порядок проверки
Откройте транзакцию по хэшу и убедитесь, что она подтверждена, при этом разверните список получателей и сверьте его с исходным реестром выплат: число адресов, суммы и порядок должны совпадать. Особое внимание уделите последней строке — при формировании пакета чаще всего теряется или дублируется именно она.
Сохраните хэш и скриншот списка. Этого достаточно для подтверждения выплат перед каждым получателем по отдельности.
Что показывать получателю
Отдельного хэша для конкретного адресата не существует, и это единственное неудобство схемы, причём получателю отправляют ссылку на общую транзакцию с указанием, в какой строке его выплата. Некоторые обозреватели позволяют фильтровать список по адресу, что упрощает проверку со стороны принимающего.
Где чаще всего ошибаются
- Опечатка в одном адресе: средства уходят постороннему и не возвращаются
- Превышение лимита получателей в одной операции для конкретной сети
- Отсутствие резервной копии реестра выплат до отправки
- Попытка отменить пакет после подтверждения: операция необратима целиком
Ко мне обращался человек, рассылавший выплаты сорока участникам одной операцией, тогда как реестр он готовил вручную, и в одном адресе оказался лишний символ, из-за чего кошелёк отклонил всю транзакцию при формировании. Это был удачный исход: при валидном, но чужом адресе средства ушли бы безвозвратно, а проверка каждой строки заняла бы столько же времени.
Формирование пакета в разных сетях
В сетях на модели UTXO пакет собирается штатными средствами кошелька: вы добавляете получателей в форму отправки, и все они попадают в выходы одной операции. Поддержка есть у большинства десктопных кошельков, хотя мобильные приложения такую возможность предлагают реже.
В сетях со смарт-контрактами задачу решает контракт-распределитель, принимающий список адресов и сумм. Готовые решения доступны для основных сетей, но перед использованием стоит проверить сам контракт в обозревателе: он получает ваши средства и распределяет их по вашему списку.
Проверка реестра до отправки
Сверьте контрольную сумму: число строк и итог по суммам должны совпадать с исходными данными, и прогоните адреса через проверку формата, которую предлагают кошельки с поддержкой пакетных выплат. При первом использовании отправьте тестовый пакет с минимальными суммами на те же адреса — это дешевле любой ошибки.
Учёт пакетных выплат
Для отчётности одна транзакция с двадцатью получателями — это двадцать операций, а не одна, и каждую строку фиксируют отдельно с указанием адреса, суммы и общего хэша, иначе при сверке возникнет расхождение между реестром выплат и данными блокчейна.
Рублёвую оценку берут по курсу на дату операции и применяют ко всем строкам пакета одинаково. Это удобнее раздельных переводов, где каждая операция может попасть на свою дату с собственным курсом.
Ограничения по сетям
В сетях на модели UTXO число получателей ограничено размером транзакции, и практический предел обычно измеряется сотнями, а в сетях со смарт-контрактами лимит задаётся расходом вычислительных ресурсов на операцию: слишком большой пакет не поместится в блок и будет отклонён. Уточняйте предел конкретной сети до формирования крупного реестра.
Смежные темы разобраны у нас. Вот основные. Общий раздел — транзакции и сети. Шире — статьи про криптокошельки. Оценку времени разбирает материал как оценить время финализации перевода, а объединение остатков — статья как объединить мелкие остатки в один перевод.
Вопросы и ответы
Можно ли отменить выплату одному получателю?
Нет, пакет исполняется целиком. Если нужно исключить кого-то, это делается до отправки при формировании реестра. После подтверждения операции единственный вариант — договариваться с получателем о возврате, и никаких технических рычагов у отправителя нет.
Насколько экономит пакетный перевод?
Зависит от сети и числа получателей, при этом комиссия растёт с каждым адресатом, но заметно медленнее, чем при отдельных операциях: значительная часть стоимости приходится на саму транзакцию независимо от числа выходов. На десятке получателей экономия обычно кратная.
Как получателю убедиться в поступлении?
По хэшу общей транзакции: он откроет её в обозревателе и найдёт свой адрес в списке выходов, причём дополнительно он видит поступление в истории собственного адреса, где операция отображается обычным входящим переводом с тем же хэшем.
Вердикт
Пакет отслеживается одним хэшем, и это же его ограничение: отдельного идентификатора для получателя не существует, и проверяйте реестр до отправки по числу строк и итоговой сумме — после подтверждения исправить нельзя ничего. Тестовый пакет с минимальными суммами при первом использовании окупается многократно. И помните про лимит получателей: слишком большой пакет не поместится в блок.
Операции проверяйте напрямую. Блокчейн-обозреватель Etherscan и обозреватель и монитор мемпула биткоина раскрывают список получателей и суммы по каждому адресу.
Обсуждение
Добавить комментарий