I want to give the pizza guy a $2 tip. Do I really want to get his email address, register online, have him register online, get his mobile phone number and all of that.
Well, in the UK, tipping the pizza guy is pretty rare - you're paying for the service already (and delivery drivers are covered by the same minimum wage laws so they get a salary that you can live on). Credit card terminals in restaurants typically provide a tip field so that you can add a tip on at the end.
How is your suggestion even in the same universe as "more convenient than cash"?
Most of the people I'd want to send cash to are people I know and are already in my phone's contact list. If you live in a culture that is fundamentally opposed to paying people a reasonable wage or stating up-front how much things cost, then the solution would be to have a QR code on the box with a note saying 'Did you get good service? Send a tip here' and the details required to receive the payment. Rather than having to find the $2, you'd just wave the card in front of your phone, select the amount, and hit send. The driver wouldn't need to carry cash.