Earlier quoted context omitted.
What happens if it does not get confirmed. Do you debit the account by an equivalent amount or eat it?
its very easy to predict if a transaction will confirm.
The problem is preventing someone from ordering $10,000 worth of gold from a site that uses Stripe with Bitcoin payments enabled. Sending a paying transaction to Stripe, who confirms it within a minute, and simultaneously mining a block with contains a transaction that double spends the bitcoins sent to Stripe.
Stripe is now out $10,000. You receive your gold, sell it to your local bullion dealer for $9,500.
Of course, for Stripe, there are various hackish ways around this problem, like defining a maximum amount of, say, $1000, so that the above attack requires the attacker to mine 10 blocks instead of 1 (ie. repeat the procedure 10 times), in order to earn $10,000.
But they don't really solve the fundamental problem of accepting unconfirmed Bitcoin transactions.