Как найти неподтверждённых родителей Bitcoin-транзакции
Транзакция может потратить выход другой транзакции, которая сама ещё ждёт подтверждения. Чтобы разобраться с комиссией, посмотрите на дочернюю транзакцию вместе с её неподтверждёнными предками.
Прочитайте запись из мемпула
Запишите в переменную TXID идентификатор транзакции из кошелька или приложения. Выполните команду на ноде Bitcoin Core 30, которая видела эту транзакцию.
bitcoin-cli getmempoolentry "$TXID" | jq '{depends, ancestorcount, vsize, ancestorsize, base_btc: .fees.base, ancestors_btc: .fees.ancestor}'
Поле depends перечисляет непосредственных неподтверждённых родителей, известных ноде. В ancestorcount входит и сама запрошенная транзакция. Один прямой родитель при ancestorcount равном трём возможен, если этот родитель сам тратит неподтверждённый выход. Чтобы проследить связь, запросите запись по родительскому идентификатору.
Рассчитайте ставку комиссии для группы
Пусть fees.ancestor составляет 0,00002000 BTC, а ancestorsize — 500 виртуальных байт. Получаем 2000 сатоши на 500 vB, то есть 4 sat/vB для всей группы. Это поле учитывает локальные поправки к комиссии для приоритизации. Поэтому высокая ставка дочерней транзакции сама по себе может давать неверное представление об экономике группы.
Между двумя запросами родитель может получить подтверждение. Состав мемпула другой ноды тоже может отличаться. Если запись пропала, сначала проверьте, включена ли транзакция в блок: отсутствие записи само по себе не доказывает вытеснение.