It happened like this:
On 2016-02-02 at 22:55:03 UTC the
person that controls the private key for Bitcoin Address 1Mo1hzhZYDLuRJw5qrCnirmPerj3xBARH2 received a payment of 0.11244979 BTC in transaction b94df458bcf5fc1057709a741398d3699740283e5e1208a73c30337ffa4d41c5
They then created two unconfirmed transactions that
BOTH attempted to spend this same 0.11244979 BTC.
One of them was transaction 6847504c014e6937410ac3d02f7693e10dae2ef4743d02a3d4883f65464936d8 which was broadcast and then
received by blocktrail.com on 2016-02-02 at 22:56:40 UTC. This transaction attempted to create an output transferring 0.12040425 BTC to address 1FX4fnxikvhhK3cSxiuX9MkRPqpLJAr6Hz, but it never confirmed.
The other was transaction 97a8a0d4426de5f1bc9299a6dd70eed32b1d4f2a91916166dcf4cd2bb4370d02 which was broadcast and then
received by blockchain.info nearly 21 hours later on 2016-02-03 at 19:32:07 UTC. This transaction transferred the bitcoins to address 1L4yNyudTekbCzyJ1FKU3FG9wm3aboWBhd and was confirmed in block 396540 on 2016-02-03 at 20:51:36. Once this transaction became confirmed, the earlier transaction became invalid and was removed from all wallets that heard about the earlier transaction first and then received block 396540.
The first transaction remained unconfirmed until the second transaction confirmed. Then the first transaction became invalid, and the output that it created for 1FX4fnxikvhhK3cSxiuX9MkRPqpLJAr6Hz therefore ceased to exist.
While the first transaction was still unconfirmed, the person that controls the private key for address 1FX4fnxikvhhK3cSxiuX9MkRPqpLJAr6Hz spent the
unconfirmed 0.12040425 BTC output in transaction a17ec9679829650b308738b8dc8f3230de48d26fc59baaedda3da5dda6d7b940 which was seen by blocktrail.com on 2016-02-03 at 04:39:13 UTC. When the unconfirmed output later became invalid, this transaction and all of its outputs became invalid (A transaction is not allowed to spend an invalid output).
While it was still unconfirmed and not yet invalid, the person that controls the private key for address 1FX4fnxikvhhK3cSxiuX9MkRPqpLJAr6Hz then spent an
unconfirmed output from that transaction in a new transaction ( 5c807b50378eaa6f91c08d9961a6a7ccbb434f8a2985899310adb337b803395b ) which was seen by blocktrail.com on 2016-02-03 at 04:44:11 UTC. When the unconfirmed output later became invalid, this transaction and all of its outputs became invalid.
While it was still unconfirmed and not yet invalid, the person that controls the private key for address 1FX4fnxikvhhK3cSxiuX9MkRPqpLJAr6Hz then spent an
unconfirmed output from that transaction in a new transaction ( 0efe72bd6b0f31260c47ea222c3a6216a29e233ff7814019669f2d120a8e5fb9 ) which was seen by blocktrail.com on 2016-02-03 at 04:46:22 UTC. When the unconfirmed output later became invalid, this transaction and all of its outputs became invalid.
While it was still unconfirmed and not yet invalid, the person that controls the private key for address 1FX4fnxikvhhK3cSxiuX9MkRPqpLJAr6Hz then spent an
unconfirmed output from that transaction
in the transaction that they sent to you ( 0efe72bd6b0f31260c47ea222c3a6216a29e233ff7814019669f2d120a8e5fb9 ) which was seen by blocktrail.com on 2016-02-03 at 04:46:22 UTC. When the unconfirmed output later became invalid, this transaction and its outputs to you became invalid.
- snip -
How can i check if there is double spent.
This is why confirmations exist. If a transaction confirms, then it is extremely unlikely that it will become invalid. As the transaction gains more confirmations, the odds that it will become invalid decrease exponentially. After 1 confirmation, you can feel
comfortable that the transaction will remain valid. A re-org could happen, but it isn't very likely. After a few confirmations, you can feel
confident that the transaction will remain valid. A re-org isn't likely to happen unless there is either a malicious miner with control of nearly 50% of the global hash power or a bug that results in a significant fork of the chain. After a few days of confirmation you can feel
certain that the transaction will remain valid. A re-org isn't likely to happen unless there is either a malicious miner with control of significantly more than 50% of the global hash power or a bug that results in a disasterous fork of the chain.
If you spend or accept unconfirmed outputs, then there is a risk that a competing transaction will confirm and your transaction will become invalid. If you are willing to take this risk, you can work with unconfirmed transactions, if you are not willing to take the risk, then you should always wait for confirmation.