We have a bitcoin node running on a server which we use to generate addresses to receive small payments from the users. We receive tons of small payments daily right now and then we are using the same bitcoin wallet to send payouts to our users using the sendmany rpc call.
This results in lots of inputs to cover the amount in outputs. Each new input increases the size of transaction by around 150 bytes and so we are loosing too much in fee.
Is there any way to reduce the number of inputs?
Suggestions would be really appreciated.
Thank you.
minRelayTxFee
of 1sat/vbyte. If you create a transaction below that fee rate then it will be treated as non-standard and the nodes won't relay your transaction forward. Even if you do an internal transfer, you will have to pay fee on the inputs that you add to the transaction. The best cost beneficial way you have if to prevent change outputs by optimizing the inputs (care has to be taken to preserve privacy though). – Ugam Kamat Jan 21 '20 at 9:59