After a few discussions with community members who have been trying to find their feet with Mimblewimble and all the new challenges it presents as a brave new technology, I have decided to post this little excerpt as a guide on how to find the txID of a failed or expired Beam transaction within the Beam mobile wallet. (similar process can be adopted for desktop GUI wallets)
To note: The txID is not the kernelID, these are two different things but you may at some point be asked by a third party who has tried to send you Beams, to give them the txID, that they can search for a failed transaction within their own wallet.
So, should you have the need to find a transaction ID, for any reason, I recommend that you can use this method. Using the GUI of the mobile wallet as an example below, you will currently see only the txID of fully spent transactions:
But as mentioned, there may be occasion that you need to find the txID of an expired transaction, which did not complete correctly within your Beam wallet. We have a great support channel (link at the bottom of this post) with developers on hand to assist if this explanation is more complicated than you might comprehend; so don’t worry, Beam Team are here to help!
In your settings page of the Beam wallet, you will see a link “Report a problem”
When you open this link, it will give you options to share your log files and if you select your default email client, the send-to address will be pre-filled with the Beam dedicated support email.
I urge you to add an explanation of your issues to the email before you send this, but also, if you feel confident enough, copy yourself into the email, and follow these steps to find the txID of a failed transaction:
On opening the email which you have cc yourself into, you will see a list of attachments, with timestamps. These logs correspond to the times that you opened your wallet and connected to the Beam network.
So here i am going to go looking for the txID of that 10Beam shown above, and ensure it matches with that txID as is shown in the screenshot above. Where you might be looking for a transaction that does not show on that page, you will still see the timestamp of it on your main ‘Wallet’ page of your Beam wallet, as below;
So searching the logs for that particular timestamp of 11 April 2019 @ 19.27.
Here we see that completed transaction with corresponding txID:
But this is a confirmed receipt of Beams.
So what does a failed tx look like when you go through looking for a timestamp on a transaction that did not complete?
As you can see from the screenshot above, from another Beam log file, showing that on 2019-04-11 at 09.31:24.669 an attempted transaction expired and shows the txID as 41c95ec77ec8421eaf6754e4a374c1b4
This would be the transaction ID that will be required to be advised to the sender of that particular transaction, to allow them to search their wallet and ensure that your funds can be resent.
Furthermore, why would this transaction fail?
Looking at the last screenshot there, I can see that the reason as to why the coins failed to be fully confirmed in the wallet, is due to the wallet not being fully synchronised at the time when it seen the transaction on the network. The block height at which the coins were sent was 140148, but the wallet key acknowledged that it was to be receiving the coins on block height 139620 – and the receiving wallet was in a process of becoming in-sync at that moment in time. Thus, the synchronisation of the wallet was ‘late’ in seeing the transaction by 528 blocks but expected it on block 139620 – and for this reason, the transaction expired and those coins were returned to the sending wallet.
I should also point out that at this point in time, this is not a bug, but a known limitation on the mimblewimble protocol and our developer team are working tirelessly to bring offline confirmations to the Beam network. To avoid these issues, simply ensure that your Beam wallet is online and fully synchronised before you request coins from an exchange or pool.
In forthcoming Beam release, we will bring offline handshakes between keys and this blog post will be inconsequential.
for dedicated Beam wallet support: https://t.me/BeamSupport