I very occasionally purchase something small with BTC using Mycelium wallet on Android. With the fees lately, it doesn’t work so great for small purchases, but a few weeks ago I was able to get a transaction through for 12 sats/byte. So I figure it still works reasonably well, you might just need to wait a bit if you don’t want to pay a big fee.
The other day, I purchased something from an online supplier. They use [coinpayments.net](https://coinpayments.net) as a processor. [coinpayments.net](https://Coinpayments.net) has a time-out on the transaction, so if they don’t receive the BTC in time the order fails. I ended up setting the fee too low, and the transaction didn’t get the required 2 confirms before the time out.
So now these funds are stuck in limbo. The transaction exists in the mempool, and I don’t really have a way to retrieve it. Once the transaction does eventually go through on the blockchain, I guess [coinpayments.net](https://coinpayments.net) will contact me to get those funds back. It’s a pain having to wait.
Now I started thinking that, with the way this wallet sends all the BTC from a private key to both the receiver *and* a new private key in my wallet, are all the BTC that were on the original private key in my wallet basically unavailable until the first transaction gets processed?
I decided to test that by creating a new order with the online supplier. Again, it went through [coinpayments.net](https://coinpayments.net). I was able to send the payment from Mycelium, and this time I used a higher fee.
Now this second transaction appears to be “stuck”, as well. It says “WARNING: wait for at least one confirmation! (Unconfirmed parent)”. It looks like Mycelium used the output of the first transaction as the input to the second transaction. And since the first transaction is “stuck”, this second transaction won’t go through until the first one goes through. Mycelium didn’t give me any warning that it was going to spend from an unconfirmed address with the second transaction, it’s only telling me this after the transaction has been broadcast.
Is this just the way it works? Will I be unable to spend any BTC in this wallet until that first transaction clears? I guess I could try bumping the fee on the first transaction?
I don’t see that [coinpayments.net](https://coinpayments.net) has an option for Lightning network payments, otherwise that would be my preferred approach. They do support quite a large number of cryptocurrencies, maybe I should just park some Bitcoin on an exchange and convert it to whichever cryptocurrency has the lowest transaction fee at the time?