I don't think that's true. To the best of my knowledge, they lock-in the rate if the transaction appears on the network within the 15 minutes window, regardless of when its confirmed.
Although in an environment where the main national currency experiences deflation like bitcoin, you do actually see people responding to the incentive by reducing current purchases, which is bad for economic growth.
The $25 game cost me 0.00424232 BTC (around $32.96 USD at that time). I transferred that much to them, but the network fees for some reason raised within that 2.5 hours. 3 cents. And they cancelled it. The fees were 0.00038932 BTC
It is messed up. Sending money from Coinbase to BitPay, for $29 resulted in $32 dollar in fees.
Nevertheless, this experiment showing a bunch of friends (~10) why Bitcoin is the worst payment provider. Network fees are not calculated correctly, transaction fees too. And at the end, this 3 cents difference from the transaction fees made a big deal.
And worse of all, customer support doesn't exist for the consumer at all when they pay for Bitcoin.
1. The merchant tells Bitpay the USD value of the transactions
2. Bitpay calculates a BTC value based on current exchange rates
3. Bitpay sends an invoice to the customer valid for 15 minutes
4. If the transaction to transfer BTC is broadcast on the network prior to the invoice expiring, Bitpay will honour their initial quote.
5. Once 6 blocks have confirmed the transaction, Bitpay transfers the original USD amount to the merchant
So in this case, Steam doesn't do the price conversion at all, only Bitpay does. And Bitpay only does it once, when the invoice is issued. It appears that the user either transferred an incorrect amount, OR he waited more than 15 minutes to start the transaction, OR (as some are suggesting) Bitpay is being nefarious and not honouring their quote.
I mean, obviously Bitcoin is a pretty silly way to buy a game on Steam, but this seems to be 100% user error.
...well, probably. There's some key info missing here, but this seems highly suggestive:
"BitPay emailed me saying I underpaid by 3 cents at the time, and said to refund me. I checked the price of bitcoin 0.003853 btc in usd is around $31 which was a lie on their part."
No, they said he underpaid by 0.000004 BTC. And the number he was googling is, coincidentally, 0.000004 BTC lower than the transaction value in his screenshot, so...