2

I'm developing wallet system trading BTC, BCH and so on. In BTC, I'm using estimatesmartfee API to calculate by transaction size and relayfee to guarantee minimum fee and it works well. In BCH, though most of logic is same as BTC except estimatesmartfee, estimatefee is used in BCH. However, as increasing transaction size by input UTXOs, sendrawtransaction is often failed because of shortage of fee.

How should it implemented properly? What is it affected? I guess some reasons, If I need to use API to get proper fee rete from some sites, what is that site?

2

The minRelayTxFee (which despite the name is a feerate) on BCH is 1000 satoshis per kilobyte or 1 satoshi per byte.

BCH has a blocksize limit of 32 MB and has generally had only a very small portion of the blockspace used. The current 7-day average is 27 kB blocksize. It rarely even peaks to 400 kB.

Graph of blocksize in the past 7 days via fork.lol showing low blockspace usage of BCH via fork.lol

Given that BCH is currently using about 0.1% of its available blockspace, there is no need to pay a higher fee rate than minRelayTxFee.

Hence, I would recommend not to spend more time on research, but instead simply hardcode a fee rate of 1000 satoshis/kB. If you want to play it safe, you can go with 1500 or 2000 satoshis/kB. In the unlikely case that BCH traffic picks up enough to fill blocks, software support should probably improve at that time and you'll be able to reevaluate then.

0

Not an expert of BCH but from what I can see from their JSON reference page such estimatesmartfee actually exists.

LINK

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.