Pages:
Author

Topic: How to return stuck transaction (instead of pushing it to receiver's addres) ? (Read 344 times)

jr. member
Activity: 42
Merit: 66
OK! The issue is solved then.
I found out (with your help) how the situation with this transaction looks like.

Many thanks  guys for your replies to this post, advices, help!


legendary
Activity: 2268
Merit: 18711
Btw, is blockchain.com a safe website to visit and click through?
No malware from it?
No malware from it, no, but it is one of the worst blockchain explorers out there. The layout is awful, their timestamps don't make sense, they still report fees per byte which is usually inaccurate, and it lacks any advanced features. Not to mention the company behind it are technically incompetent and host one of the worst wallets in existence.

The two most commonly recommended blockchain explorers on this forum are now https://mempool.space/ and https://blockchair.com/.
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
Guys, here is my report:

All of them are in status "spent".

Except of those that are  "Oops! We couldn't find what you are looking for."

This means that there is no stuck transaction to reverse, is that correct? Please just confirm for me to be 100% sure. As I am only 99 % sure without your confirmation  :-)
-snip-
Yes, it means that those inputs are already spent by other transactions.

My best guess is it was spent by your other transactions, you can confirm it by checking all of the outbound transactions' input in Electrum:
Right-click on an outbound transaction, select "View Transaction".
In the advanced transaction details, look for the Inputs (n), the string of numbers/letters is the txid followed by the vin (after the ":")
(see if any of them matched those "spent outputs")

Quote from: Gorilla22
Btw, is blockchain.com a safe website to visit and click through?
No malware from it?
It's a legit site and "probably" wont add a malicious code to their website. (most users do not recommend to use their wallet though)
jr. member
Activity: 42
Merit: 66
Guys, here is my report:

All of them are in status "spent".

Except of those that are  "Oops! We couldn't find what you are looking for."

This means that there is no stuck transaction to reverse, is that correct? Please just confirm for me to be 100% sure. As I am only 99 % sure without your confirmation  :-)

Anyway, I don't regret all the work I have done because I have learned a lot.

Btw, is blockchain.com a safe website to visit and click through?
No malware from it?
I became paranoical concerning safety and security :-)
legendary
Activity: 2268
Merit: 18711
But for some of "txid" is says "Oops! We couldn't find what you are looking for."
What does it mean and how should I handle the situation with those non-found "txid" ?
It means that some of the inputs which were being used in your stuck transaction were based on other local transactions which were never broadcast, which is why block explorers can't find them. This might also explain why the stuck transaction was never broadcast, since without the preceding transactions being broadcast the stuck transaction is invalid, as it attempts to spend outputs which do not exist.

In terms of how to handle it - as nc50lc says, do nothing. These outputs never existed in the first place.

This probably also explains why your Electrum transaction history and Core transaction history are different. It sounds like you have more than one locally saved transactions on Core which do not exist on the blockchain.
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
Questions:
1) How do I use "vout" numbers? The are 1 to 3 figures numbers.
2) There are a lot of "txid" located below "vin". Do I need all of them?
As I noted in the instructions, there can be more sets, that's if the transaction is spending more than one input.
You can count the the number of inputs by finding how many txid and vouts sets ("txid" followed by "vout" line) are there before the line ""vout": ["

The "vout" tells which output is the one it's spending.
For example, this transaction: blockchain.com/btc/tx/c41fac476e555483ed6672e99ddcc51ee3ab0028f8ace4d7369c1d0e32ecf948
vout: 0 is bc1pcldgkx2an6fukvssqzkl6tzkll3sj6tcpn6wpxmc99nw8rtkwcws04nvas
vout: 1 is bc1qam5vz2csj0h50qzsnqy3zmunrv0ud6j6m9szd7
If there's a third output, it's vout: 2; for the fourth vout: 3... and so forth.

For some "txid" it works fine and shows info.
What does it mean and how should I handle the situation with those non-found "txid" ?
Nothing, as I noted in the instructions (again) it's "non-existing, dropped, replaced, etc".
For those that show info, check if the output that is yours is still unspent.
legendary
Activity: 3668
Merit: 6382
Looking for campaign manager? Contact icopress!
But for some of "txid" is says "Oops! We couldn't find what you are looking for."
What does it mean and how should I handle the situation with those non-found "txid" ?

If those are old transactions, they were probably dropped from mempool (not confirmed; double spent and dropped or dropped after a while for low fee).
This means they were never mined, hence they don't exist.
jr. member
Activity: 42
Merit: 66
Checking.....
Using blockchain.com explorer.
For some "txid" it works fine and shows info.
But for some of "txid" is says "Oops! We couldn't find what you are looking for."
What does it mean and how should I handle the situation with those non-found "txid" ?
legendary
Activity: 2268
Merit: 18711
So to solve this issue is an interesting challenge.
You have potentially already solved it. If you have imported every private key which has ever held coins from Core in to Electrum, then your Electrum wallet will now contain all the coins you have available to spend. You can forget about the stuck transaction in Core. Electrum does not know about it, and any coins which it would have spent and have not been spent by a different transaction will be available in your Electrum wallet.

1) How do I use "vout" numbers? The are 1 to 3 figures numbers.
Take the first "txid" and paste it in to a block explorer. Then take the first "vout" number and find the corresponding numbered output (the first output is numbered 0, the second output is numbered 1, and so on). Then you can see if that output has been spent in another transaction already.

2) There are a lot of "txid" located below "vin". Do I need all of them?
If you want to check every intput, then yes. Alternatively, if you don't mind the privacy implications of sharing your addresses publicly, you can paste the raw hex of your stuck transaction here and we can take a look for you.
legendary
Activity: 1022
Merit: 1341

From which client? Based from your other posts, I'll assume that it's Bitcoin Core.
If so, that "stuck transaction" may just be a locally saved transaction and you might have already spent its input.
If not, you can easily abandon it since it must not be in any node's mempool by now.

To "unstuck" it, just go to 'Transactions' tab and use "Right-click->Abandon transaction" and it will be dropped from your wallet.dat.
After abandoning it, the funds that it "locked" should be useable again (the transaction will have red texts).

Of course, I'd advice you to create a backup of your wallet before trying those steps.

I really like the OP question, base on it that bitcoin is a decentralized digital currency and when such has happened, what should be the solution. That not withstanding.
nc50lc, This is what really came to my mind when I read the OP. From where the transaction come and to where the transaction went. That what I was expecting for him to provide the two public keys (the two addresses) the transaction took place. And also based on the decentralized system of the software, I don't think the fund can be reversed because as the transaction didn't go through bad of that time, it would have been reversed automatically but the time frame of the transaction is been long. OP please follow the instructions of nc50lc and others to see if the issue will be solved and if the issue is solved please do well to update this thread and the method used to reverse the fund so others can also learn from you.
jr. member
Activity: 42
Merit: 66
nc50lc,

Thank you very much for your instruction!
Your instruction is amazing for a newbie like me because you tell exactly what to.
1. Yes Elecrrum shows transaction history. But it slightly differs from the one in Core.
2. I am doing according to your instruction right now.
Questions:
1) How do I use "vout" numbers? The are 1 to 3 figures numbers.
2) There are a lot of "txid" located below "vin". Do I need all of them?
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
1. Blockchain doesn't see this transaction.
2. Electrum doesn't see this transaction even after importing all of private keys.
3. It is only Core who can see this transaction. It is not synced though.
1 & 2 are expected due to the reasons that already given multiple times by multiple members.
You should've said that Bitcoin Core isn't synced in the first place which should've narrowed-down the options.

Imported all private keys into Electrum.
Over 1000 keys.
Unfortunately, nothing changed.
But can you see any transactions in Electrum's history tab? (not the local transaction from Bitcoin Core).

Anyways, if you want to check if that local transaction's input was already spent, just follow this:
  • Launch Bitcoin Core, go to 'Transactions' tab, find the local transaction, right-click on it and select "Copy raw transaction'.
  • Open the "Console" (Window->Console) and type decoderawtransaction , press enter.
  • In the result, find ""vin": [" just below "locktime", copy the "txid" and "vout" below (not the one on top) which points to the specific input that the local transaction is trying to spend. (there can be two or more sets)
  • Use any blockexplorer to check if that TXID is existing and if the output is already spent or not. If there are multiple outputs, refer to the 'vout' (ascending order: 0,1,2,3....)
  • If it's spent, then that local transaction is now invalid; if not spent, then there's something wrong with your import to Electrum or something else.

If it doesn't exist: it only means that the local transaction is trying to spend an input that's non-existing, dropped, replaced or etc.

In case it's not spent: You can refer to that output (txid and vout) to know which private key to export from Bitcoin Core.
Blockexplorers will show the address(es) among the transaction's outputs, then in Bitcoin Core simply use dumpprivkey
to export its private key.

jr. member
Activity: 42
Merit: 66
o_e_l_e_o,

Thank you for explanation!
The list of private keys that I exported from Core is huge.
I have already imported all of private keys related to change addresses.
And all of addresses that I ever used to receive btc ofcourse.
Is there any way to determine which ones of remaining addresses are useful in this situation and which ones are not?



About checking inputs.

I have done this, though probably by a primitive way :-)
I did it like this, just calculated:

1. A = the sum of btc that I received to Core.
2. B = the sum of amounts of all normal transactions (non-stuck) which I sent from Core. Including fees.
3. C = the amount of stuck transaction.
4. D = current balance in the wallet.

Should be: A - (B + C) = D.
The fact: A - (B + C) = D.

Conclusion: I didn't spent it myself in other transactions.






Up to 1000 private keys! :-)
I  start working...... :-)



Imported all private keys into Electrum.
Over 1000 keys.
Unfortunately, nothing changed.
Do you have guys other ideas about what can be done?



This situation is quite interesting.

1. Blockchain doesn't see this transaction.
2. Electrum doesn't see this transaction even after importing all of private keys.
3. It is only Core who can see this transaction. It is not synced though.

I have too little knowledge about how it all works, but according to my small knowledge this situation is technically impossible. But reality and facts say it is possible.

So to solve this issue is an interesting challenge.

Guys, any suggestions are so welcome.

I want to try everything.

Btw, it happens sometimes that a complicated issue has a simple solution :-) May be this is the case!
Wow, I want to solve it. If not solve, at least to find out what happened :-)

I shall be grateful for any ideas!

[moderator's note: consecutive posts merged]
legendary
Activity: 2268
Merit: 18711
I am shocked that stuck transaction can be spent in blockchain and simply disappear! (LOL).
I'm not sure if you are misunderstanding or there is a translation barrier, but transactions cannot be spent and also disappear. Either your transaction is successfully broadcast to the network and then later confirmed (in which case it is spent), or your transaction is only saved locally, never broadcast, and therefore never spent. If it is only saved locally and no one else in the world knows about it, then you can also delete it locally without having any effect on the wider blockchain. Rarely a transaction can be broadcast and later invalidated, but that is another discussion and not really relevant to what is going on here.

Asking just to upgrade my knowledge.  Is it so that any stuck transaction can be spent in blockchain?
If a transaction has been saved locally and not broadcast, then you can broadcast it at a later date provided you haven't spent any of the coins being used by that transaction in other transactions in the meantime. If a transaction has been broadcast but is "stuck" because the fee is very low, then there are a variety of options available to you in order to bump the fee and increase the priority of your transaction.

Preferably using Electrum, as I try to avoid sync.
May be to import more keys from Core? May it help?
If you don't want to sync, then I would dump every private key from your Bitcoin Core wallet and import all of them in to Electrum. At that point you don't need to worry about your stuck transaction, because as I said above, Electrum will have no knowledge of it.
jr. member
Activity: 42
Merit: 66
I discovered that I tried to abandon this transaction that year when I did this transaction! And it didn't work.
I didn't say about it earlier today just becase my Core is on another language than English, and I didn't realize first that the English term  for what I did was "abandon". The word which uses my Core can be translated to English rather as "stop transaction" or "break transaction". So I thought that I did something different.
Sorry for this!
But now I know that "abandon transaction" didn't work.



o_e_l_e_o,

Thank you!

I am shocked that stuck transaction can be spent in blockchain and simply disappear! (LOL).
Asking just to upgrade my knowledge.  Is it so that any stuck transaction can be spent in blockchain?




Guys,
What is the next simple method you think I should try?
Preferably using Electrum, as I try to avoid sync.
May be to import more keys from Core? May it help?



[moderator's note: consecutive posts merged]
legendary
Activity: 2268
Merit: 18711
Does it mean that the transaction never "went through" and never got even one single confirmation?
Correct.

Does it mean that I have good chances to get it back to my wallet?
Maybe. The transaction in question was never broadcast, and so the coins it spends were not spent in that transaction. However, it seems that this transaction conflicts with another transaction which did go through normally. This means that at least some of the coins used in your stuck transaction have since been spent in this other transaction with 30,000 confirmations. However, it may be that all of the coins from the stuck transaction have already been spent.

Since Electrum is completely unaware of this stuck transaction, then any coins it spends which haven't since been spent by another transaction should show up normally in your Electrum wallet. You can also look up each input from the stuck transaction on a blockchain explorer to see if that input has since been spent by another transaction.
jr. member
Activity: 42
Merit: 66
Thank you for your answers guys!

I did some research and discovered that:

1. When I take the transaction ID for that transaction from the old Core, and search for it in blockchain explorer, then blockchain explorer finds nothing.
2.
The info from transaction details (in Core) says something like "confrlict with a transaction with 30 000 + confirmations".
3. Core (not synced) shows this transaction as uncomfirmed (after several month after date when I did this transaction).
4. My new Electrum doesn't show this transaction at all.

This is the situation for now.

Does it mean that the transaction never "went through" and never got even one single confirmation?
Does it mean that I have good chances to get it back to my wallet?
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
I understood that the easiest option is "to abandon" transaction. May be it will work, may be it will not, but this one is simplest. So it is reasonable to try it first.
The transaction was sent from Core.
Now I moved to Electrum.
It's a "local transaction" that's only saved in your wallet and not backed-up by your private keys.
Since it's from Bitcoin Core, you can only abandon it from Bitcoin Core.

If you properly "moved" (rather imported) the private keys to Electrum, the coins that you might regain from abandoning that transaction in Bitcoin Core
should already be available in Electrum since it's only considered as spent by a local transaction in Bitcoin Core.
The result will be the same if the funds were moved through "sweep" to Electrum instead.

But if you "moved to Electrum" by sending your entire balance through a normal transaction, the local txn's "locked" coin(s) wasn't included to that transfer.
If abandoning it doesn't return any balance, its input was already spent (you can try to rescan to be sure).
legendary
Activity: 2268
Merit: 18711
I understood that the easiest option is "to abandon" transaction. May be it will work, may be it will not, but this one is simplest. So it is reasonable to try it first.
The transaction was sent from Core.
Now I moved to Electrum.
Is it possible to do it from Electrum?
Can one find unconfirmed transactions in the transaction history in Electrum?
If the transaction is stored locally, then it is only stored locally in your Bitcoin Core client. By exporting the relevant private key(s) and importing them to Electrum, this unconfirmed transaction will not also be transferred to Electrum. You won't need to abandon it from Electrum because it won't exist in Electrum in the first place and Electrum will be entirely unaware of it. Whatever outputs were "stuck" in this unconfirmed transaction in Core won't similarly be "stuck" in Electrum and should be available to spend.
jr. member
Activity: 42
Merit: 66
Thank you so much guys!

The primary purpose why I want to do it is knowledge and experience. If I take this challenge and get some result, I'll learn a lot during my way to result.
If it happened that you read my other posts, you could see that I do a lot of things just to experiment. With wallets, private keys etc.
I spent the whole weekend, and I moved tiny 0.0006 btc from old Core to new Electrum, and I did it a "strange" and complicated way. But I learned so much about wallets and private keys.
And I have similar approach concerning this stuck transaction.
If I accomplish this task, I'll learn a lot.
I'll try different ways to do it, and I want to start with a simplest method which can be available to try.
If it doesn't work, I am going to try a more complicated way, and so on.
Until I either get those btc back to my wallet or discover that it is impossible.
This is my plan :-)





I understood that the easiest option is "to abandon" transaction. May be it will work, may be it will not, but this one is simplest. So it is reasonable to try it first.
The transaction was sent from Core.
Now I moved to Electrum.
Is it possible to do it from Electrum?
Can one find unconfirmed transactions in the transaction history in Electrum?


[moderator's note: consecutive posts merged]
Pages:
Jump to: