Как вытащить из hex raw транзакции комиссию и получить входные суммы?
Зачем непременно из raw? Вы, я вижу, умеете получать транзакцию в формате JSON, с ним удобнее работать.
Итак, у вас есть вход, который ссылается на выход 1 транзакции a5384c769b4f2693269689c53ab40d4e40072ef4b3a0362ed313ee7c0d9cd12e:
"Inputs": [
{
"ID": "2ed19c0d7cee13d32e36a0b3f42e07404e0db43ac589962693264f9b764c38a5",
. . .
"VOUT": "01000000",
Обратите внимание, в вашем выводе JSON некоторые параметры выводятся с обратным порядком байт, что неудобно. Необходимо сделать запрос транзакции с ID a5384c769b4f2693269689c53ab40d4e40072ef4b3a0362ed313ee7c0d9cd12e и получить этот выход:
{
"value": 17.62073647,
"n": 1,
. . .
}
Параметр value даёт сумму, которую тратит ваша транзакция. Если бы в ней было несколько входов, пришлось бы просуммировать value всех выходов, на которые ссылаются эти входы. А в вашем случае (один вход), на входе транзакции имеем 17.62073647 BTC.
Теперь суммируем value выходов:
"Outputs": [
{
. . .
"Value": "3b770a0000000000",
. . .
},
{
. . .
"Value": "5a17fc6800000000",
. . .
}
],
685883 + 1761351514 = 1762037397 sat = 17.62037397 BTC
Комиссия за транзакцию равна разности между суммой входов и суммой выходов:
17.62073647 - 17.62037397 = 0.0003625 BTC