To cancel an unconfirmed bitcoin transaction, you need to use a Replace by Fee (RBF) protocol to replace your original transaction with a new one using a higher transaction fee. If you aren't able to use RBF, you may be able to cancel your transaction by double spending using a higher fee.
Follow this link for full answer
Yet, why does Bitcoin take so long to confirm?
Currently, bitcoin network traffic is unusually high due to increasing demand for transactions per block. Block sizes are limited, so this means that transactions which exceed the capacity for a block get stuck in a queue for confirmation by bitcoin miners.
Futhermore, how do I fix a stuck Bitcoin transaction? All you have to do is:
Beside that, why is my bitcoin purchase still pending?
Unconfirmed transactions If you're receiving a payment within your CoinJar, and the Bitcoin transaction itself hasn't received enough confirmations on the blockchain to indicate the transfer has been completed successfully, those funds will remain as 'pending' while they are being processed by the blockchain.
Can I send unconfirmed Bitcoins?
There is no such thing as an unconfirmed bitcoin, only transactions. Every bitcoin transaction you send spends some time as an unconfirmed transaction… That just means any transaction that is sent anywhere before a new block is added to the blockchain with that transaction in it.