How is regular shoping going to work if it takes a while to confirm? like you go to a supermarket with your phone and then pay, what happens if you have to wait to get it confirmed??
One way is off-blockchain transactions. So if then exchange had a deal to be a processor for the supermarket and you can send funds from your Exchange account so it all happens within the exchange. There could also be deal to use "green addresses" where your online wallet sending address is trusted by the supermarket. So if you sent funds from your exchange wallet and the supermarket trusts the exchange.
Or, the supermarket will accept your 0-confirmation bitcoin transaction as long as it has minimum fee attached.
Double-spending is extremely hard unless you have a significant proportion of network hashrate, and so it is very very unlikely a casual supermarket customer has the ability to double-spend successfully.
As far as I know, there hasn't been a double spend in over 2 years. I doubt there will be one ever again.