Bitcoind Al enviar un pago, ¿cómo puedo saber cuántas entradas y salidas hay?

Estamos usando bitcoind en nuestro servidor.

Cuando las personas se retiran de nuestro sistema, queremos tener la tarifa de minero correcta.

Entiendo que podemos obtener la buena tarifa de minero de txconfirmtarget o la API de: https://bitcoinfees.21.co/api

Pero cuando enviamos una transacción, ¿cómo sabemos qué tarifa de minero poner si queremos ingresarla en la base de datos?

EDITAR: Me doy cuenta de esto: bitcoin-cli estimar tarifa 2 pero entonces, ¿cómo sabemos cuántos bytes se envían?

¿Está utilizando la billetera interna de bitcoind o simplemente la está usando para crear y transmitir una transacción sin procesar?
bitcoind en un servidor centos
Eso no responde a mi pregunta. ¿Está utilizando bitcoind como una billetera (es decir, usando sendtoaddress, sendmany, etc. RPC) o simplemente como un nodo para transmitir sus transacciones?
como una billetera con RPC

Respuestas (1)

Cuando utiliza la billetera interna de bitcoind y sus RPC relacionados, calculará automáticamente la tarifa de transacción por usted y la incluirá en la transacción. A continuación, puede recuperar la tarifa de transacción utilizada mediante el gettransactioncomando. Si desea la tasa de tarifa que se utilizó, puede usar la tarifa de gettransactiony dividirla por el tamaño devuelto por gettransaction.

Editar: para obtener la tarifa antes de enviar, puede crear la transacción con solo las salidas que desea (es decir, sin entradas) con createrawtransaction. Luego puede usar fundrawtransactionpara completar la transacción con entradas. Eso también le dará la tarifa que está pagando la transacción. Luego lo firmas con signrawtransactiony lo envías con sendrawtransaction. No hay otra forma ya que los otros send*RPC crean la transacción, seleccionan monedas, firman y envían todo en un solo comando.

Pero quiero estimar la tarifa antes de que se envíe la transacción.
He editado con más instrucciones para obtener la tarifa antes de que se envíe la transacción.
Gracias por la actualización. Así que básicamente hago createrawtransaction y fundrawtransaction y devuelve el tamaño de la transacción, luego puedo establecer una tarifa personalizada basada en cuántos bytes es... luego, por supuesto, sendrawtransaction.
No, no puede establecer la tarifa después de que se haya creado la transacción. La tarifa debe establecerse cuando se financia la transacción. fundrawtransactiontiene una opción para establecer la tarifa. Simplemente lea el texto de ayuda para ello.