2. They exchange BTC for fiat immediately after that, without waiting for the customer to actually pay.
"exchange" and "immediately" are the problems in this step.
None of the exchanges are "completely liquid".
Bitpay is not exactly "exchanging"; more like they are placing a sales order at the price that they gave to the customer.
That order may never be fulfilled. Or it may "hang" there for a while (hence, not exactly "immediate").
There is another way
