the POS terminals are connected to the internet. That's how they process credit cards now. The old way of dialing in on a phone modem is obsolete now.
When you swipe your card, the POS software uses an API from a credit card processor to post the payment and wait for a callback.
What happens if the internet connection goes down in the middle of your credit card swipe?
The same problem would exist with credit cards and bitcoin. Both require an active internet connection to work. So with the way we designed our API there's nothing different here.
Credit Card processing API - merchant posts payment data and waits for callback
Bit-Pay payment API - merchant posts payment data, displays response with QR to customer, and waits for callback
When we detect the payment was received (within 1-2 seconds) we can send the server response back to the merchant. This can be sent to their back-end server or to the POS itself, their preference.
We've tested this hundreds of times using our Mobile Checkout (which simulates POS software) and it works great. Any delays are usually from the person's bitcoin wallet waiting before sending funds. Some wallets are very fast to send, like BitcoinSpinner.https://bit-pay.com/aboutMobile.html
Also, if the store does detect that you are trying to scam them, you can probably expect to be:
1. taken out the back door and beaten
2. kindly asked to pay another way
3. told not to come back again