I'll take a stab at guessing. I think in order for merchants to be paid in BTC or other crypto, it needs to be instantly converted to cash. Why? Because the value of BTC can swing wildly and retailers can't afford that risk when their margins are low. Also, BTC transactions can take 20 minutes to an hour to confirm sometimes, so that matters too at some level.
I think something like Tether, which pegs its value to the USD, might be a better approach for crypto-based e-commerce. BTC can more easily be converted to Tether, so it would probably work better for everyone involved.
I'm using it in a B2C shop with low-value transactions ($20 to $200) and I really don't care about the sort of volatility that BC has shown.
But, yes, the time to confirm is annoying: 1 in 24h/transaction_time orders miss that day's shipping deadline and are delayed by a day. More importantly, any delay > 1m requires the UI to accommodate for transactions that aren't instant.
But, as a retailer, these are rather small issues. What matters more is simply the lack of demand. We've offered BC as a payment method and its use has always been a rounding error in our statistics.
USD fluctuates wildly from my position in the GBP currency zone. But you don't get out of it - for the same reason you don't feel the 18.5 miles per second you're travelling through space.
BTC isn't taken as a currency because you can't live in its zone. Everybody swaps it into the currency of the zone they are living in - unless they are speculating.
You use the currency of the zone you are living in because everything you need is priced in that currency, and everything is priced in that currency because there is a strong taxation authority that demands payment in that currency.
I think something like Tether, which pegs its value to the USD, might be a better approach for crypto-based e-commerce. BTC can more easily be converted to Tether, so it would probably work better for everyone involved.
It's just not as well-known yet.