Bitcoiners may not know how to include appropriate amount of miner fees, frequently send the bitcoin payments with far less than recommended amount of fees, or forget to include it, which will lead to the stuck bitcoin payments. The money is frozen in the network. Recipients may eventually choose to drop the deals and senders are probably scare that the money is lost. As a normal bitcoin user, they don’t have any idea how to clear this payment. Since the release of Bitcoin Core in version 0.12, a new feature called Replace-by-Fee (RBF), is introduced to bitcoin protocol, which allows unaccepted transactions to be replaced with a new transaction including higher fees. This tutorial is from the bitcoin senders’ point of view to give them a better idea how to use RBF to bump up the confirmation process.
How does RBF Work?
We should make sure the wallet turns RBF on. At the time of doing bitcoin payment, the wallet software can flag it as to tell the bitcoin network that this payment may be cancelled in the future and replaced with another higher fees one. The given fees for new one should be higher than the old one. Therefore, the old one will be dropped and the new one will take the place in the network, as required by RBF protocol.Therefore, users have the option to cancel a low fees bitcoin payment and start another one to speed up the acceptance process.
Since it is a new Opt-in feature, there are a few bitcoin clients that have integrated into this new protocol change, such as Electrum, GreenAddress at the moment. The above two softwares only support that replaced payment has the same inputs and outputs as old one. I believe that there will be more and more wallet softwares which will integrate this feature in the future.
You should download the latest version from Electrum official site. I am using Electrum 2.7.18 to test it. Before using it, RBF feature should be enabled from the menu manually: Tools – Preferences , check the three boxes at the pop-up window for Use dynamic fees, Edit fees manually, Enable Replace-By-Fee. The first two options are recommended. The third one is required to enable RBF feature.
2. This payment is shown as Replaceable at the history tab before being accepted in the network. The 0.32BTC payment is stuck for a few hours and still hasn’t been accepted by miners. Therefore, I could initiate another payment with higher fees. right click the stuck payment and choose increase the fee, a small window is popped up as the third picture shows.
3. I could manually input new fees like 0.000732BTC at the text box as shown below or drag the slider bar underneath, then click OK to proceed. Final checkbox is to tell the bitcoin network whether this new payment is last one or not. I normally don’t check this box in case I need to do another RBF payment.
I am testing it through Chrome plugin. GreenAddress bitcoin wallet has enabled RBF feature in default. Every outgoing payment has a RBF flag automatically otherwise you disable it manually in the setting.
1. Before the payment is accepted by the network, the bump fee is showing up below.
2. You could click bump fee to initiate another payment with higher fees. There is a pop-up window as below showing the required estimated number of confirmations corresponding with the specific amount of fees. You choose the number of confirmation time like to say 1 confirmation and will pay 0.00730545BTC miner fees for the new payment which will presumably be accepted in the next 10 minutes by miners.
Someone may argue that it could lead to widespread double spend in bitcoin network. On the contrary, it won’t. Only the payments with RBF flag on can be replaced with new payment. But there are some strict policies like the same sending and recipient address for new payment. Scammers have no way to do the tricks to double spend the money to new address. Beside that, for the most normal non RBF payments, the network wouldn’t allow users to replace the old payment even with high fees and won’t recognize this double spend payment.
This feature could save up some amount of miner fees for the non urgent payments. We could include lower than recommended fees with the RBF on and wait one hour or more for the payment to get through. Otherwise the payment could be bumped through increasing the fees level in the new payment. In the most chances the payment will get through in an acceptable timeframe successfully except the time the network is in strong test or in congestion.