13

I accidentally sent a transaction without a miner's fee and I need it to clear as soon as possible. But, as far as I can tell it's going to take days if it goes through at all. Is there any way that I can pay a fee on top of what I've already sent?

11

Rebroadcasting a similar transaction with a fee attached will invalidate the one that's waiting. Basically you initiate a double-spend and the new one (with a fee) will get confirmed. Once it's confirmed, the old transaction will be invalid and forgotten.

Your client probably does not allow double-spend attempts, but it's possible via blockchain.info. Warning: Don't create a raw transaction unless you really know what you are doing!

People are working on making fee changes easier for us mere mortals; one example is/was (seems to be defunct) ConfirmNext.

2

It is impossible to modify a transaction after it has been broadcast to the network. However, it may be possible to replace it with a newer version.

If you're using Bitcoin Core, you can make it forget unconfirmed transactions by starting it with -zapwallettxes.

After that, you generate a transaction that uses at least one of the inputs of the previous transactions, set a decent fee, and broadcast it to the network. As your transaction gets confirmed, the first one becomes invalid because it is trying to spend inputs that have been spent already.

If you don't know which inputs you've used, you may want to send all your money to yourself to prevent that you pay twice due to both transactions confirming.

1

Check bitcoin-cli bumpfee. I think it does exactly what you want.

  • 2
    Note that bumpfee is only applicable to transactions that were sent with opt-in rbf (see changelog). – Murch Jun 4 '17 at 18:51
-1

No, there's currently no way of doing this. Some pools will prioritize a large fee on a secondary spend, but unless you own the recipient address as well you can not use this to your advantage.

In future pay the standard fee, bit for now you'll need to wait it out.

  • Kind of figured. Thanks for the reply, Do you know if I will have to wait three days to get my coins back or if it will eventually go through? – Alex Feb 26 '14 at 2:27
  • @alex that depends if your transaction priority ( weighted input value * input age per byte) is high enough to become eligible as no-fee. For example a 250 byte transaction with a 1BTC input will be eligible after the input has 144 confirmations (~1 day) – uminatsu Feb 26 '14 at 2:32
  • It's still unconfirmed after 10 hours though. So I guess thats a no then. – Alex Feb 26 '14 at 2:45
  • 1
    -1 This answer is outdated. – Murch Oct 26 '16 at 19:47
-1

The short answer is no but in theory you can with lots of mining power. Some miners may be generous enough to include your low/none fee transaction but lets ramp up the fun.

You can force a modified transaction into a block that you have mined. To do this you will have to beat the Bitcoin network, this is next to impossible with even thousands of dollars. So let's assume you are the owner of a pool and you mine a block, you are at liberty to add any transactions you want as long as it's following the Bitcoin protocol rules. You can easily modify transactions you and only you have made, there can only be one transaction using the unique Bitcoin so the other transaction will become invalid. Basically, modify transaction then insert it into a block, transmit it to network.

Just wanted to be the only person to answer "yes" in a way. Goatse's answer is perfect and probably fits you more.

  • -1 This answer is misleading (today), as there is no need to outperform the transaction. The asker would appreciate if the initial transaction would confirm, he is merely afraid that it won't. As transactions with no fee don't get relayed on the network today, because they don't fulfill minRelayTxFee, the doublespend will propagate without an issue. – Murch Oct 26 '16 at 19:46

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.