I am quite new to the idea of bitcoin but I have understood one of the main problems:
Sending money with Bitcoin takes approximately 10 minutes, by design. For use at the counter in a shop this is very much too slow, also the amount of transactions in 10 minutes (about 2000) is not suitable for planet-wide in-shop use.
My idea. Would this be feasible?
1. Create a signed, pre-approved transaction
So, as the customer at the counter, what if I could prepare a transaction of the required amount, from my wallet-app on the phone, somehow approve it/sign it/authenticate it, but not send it to the bitcoin network yet.
2. Hand out the transaction
Instead, I send the transaction to the shop owner, via bluetooth, QR-Code, NFC whatever. The shop owner takes this transaction, validates it against the current amount on the contained address/es. The idea is that this should guarantee to the shop owner that he or she will actually be able to retrieve the amount on a later time.
3. Collection of the transaction's value
At the end of the day, the shop owner takes all collected transactions, blends them into an new single one (to save bytes) and now sends this transaction to the bitcoin network. This single transaction should be cheap and more efficient compared to single transactions from all day's clients.
Is such transaction bundeling feasible? Or already in place somehow?