> Tip bar staff [...] Scan and shop anywhere [...] digital public transportation cards
The thing that surprises me here isn't the success of QR codes, but the failure of NFC (and to a lesser extent Bluetooth) which was practically designed for paying with your phone.
How did NFC lose out to QR codes at the application it was designed for? Was it a reliability problem? Were the APIs too locked-down for anyone to be able to work with them?
You go to market with the printer you have, not the gizmos you'd like you have. You'd wind up printing something anyway to let people know about the NFC tag. And if you are printing something out, you may as well just add a QR code for folks who like that method.
There's a "if you give a yak a razor" joke in there somewhere.
NFC is very much used in other places like Europe. I just got back from a trip to the UK and Iceland where I used contactless payments almost exclusively (except for automated gas pumps which required chip-and-PIN). I don’t remember seeing many QR codes at all.
With contactless payments, you share your payment information with the point of sales. You do not get the opportunity to check what's going on (and it will never be due to the awkward position you have to hold your phone to get within NFC range).
For QR code payments, the point of sales generates all the information (how much money to which merchant) and encodes it at QR. You scan the code and confirm the information, which results in a payment.
iOS for many years did not expose generic NFC functionality. I don't know if it is properly available even now?
This meant that it was impossible to have the same user experience on iOS and Android - a serious problem for any product that would have NFC a key interaction targeting both these platforms (as most western things do).
This is IMHO the most correct answer. Apple. From experience lots of folks wanted to implement NFC but as soon as they got their idea to the C-suite all the execs whipped out their iPhones and it was game over.
Add to that the years of shenanigans as mobile operators tried to make sure they were the gatekeepers for any sort of serious NFC usage (by controlling access to the SIM-based secure element) and the fact that QR can be implemented in an afternoon by any developer who fancies it without reference to anyone else and, well, here we are.
But the NFC world is becoming a more hospitable place, and we will now see NFC gradually supplementing then replacing QR in many use cases (though not all, as some are much better suited to one or the other tech; they are not 100% interchangeable)
It's still not there yet. There are APIs now available for developers, but there is no way to react seamlessly to NFC tags in background. For example, it's impossible to put an NFC tag on a nightstand and run some automations when you put your phone there before sleep. You will have to tap a button to authorize the action.
I do understand security implications that lead to that decision, but it makes the whole process really cumbersome to use for wide range of applications.
To be honest I bought a Galaxy Nexus in 2011 with NFC and the promise of payment functionality, but I only got Android Pay (here in the UK) in 2017 when my bank, NatWest, decided to add support.
QR pros are that they're distance-independent (you just have to make them larger) and you can just print them. Cons is that they're pretty cumbersome to use (you have to launch a camera and/or a dedicated app).
NFC pros are UX - you just place your phone, even without unlocking, and magic happens. Cons is, you can't make them at home, you have to order the tags, hope you order the right ones (few years ago there was some IP rights nonsense that prevented some types of tags working with some phones, not sure if it's true today).
As for NFC and payments, I'd blame a) above mentioned IP nonsense, and b) handling payments is a complicated relationship with third parties; if the third parties aren't willing to embrace NFC tags (and AFAIK they generally aren't, or will try to fleece you for it), there's nothing you can do yourself as a venue owner.
The order of things and they relative advantage of previous tech is important here. In order of appearance we had cash, swipe cards, chip cards, contactless cards, QR codes and NFC (in a usable manner). But not every country had them spread equally.
In China a large portion of the population practically skipped credit cards, when the mobile revolution came there was no NFC but QR codes were easy to implement. As a buyer you just need a camera on your phone and as a merchant you just need a piece of paper. No need for a register, no need for internet connection. In Hong Kong and Taiwan the transportation NFC card practically replaced cash and payment cards and also made NFC cards practically no better, also making QR codes relatively non-interesting. With the advent of WeChat however, this went to the side I suppose (haven't been there since so can't say for sure)
In contrast in Europe we did not use swipe cards much and went quickly to chip. Transition to contactless cards was more or less seamless because when you refreshed your card you got a contactless one. Which made merchants want to upgrade terminals. Mobile payment jut piggy backed on that. There are some shops that accept qr code payments, but with presence of Apple and Android pay, this is a massively worse use case. QR codes are marginally more convenient than credit cards, but they require almost zero specific infrastructure.
From what I understand in the US chip cards came so late that everybody just immediately skipped to Apple/Android pay. However since chip card terminals are needed for nfc, this made adoption by merchants more of a "thing". It was quite common to see "this shop now accepts apple pay" as a headline.
Google intentionally hobbled NFC and stonewalled Panasonic from adding IrDA to Androud to force people into using Android beam. Apple never gave anybody access to raw NFC to prevent competition to Apple Pay.
I personally met people who made TenPay. They pretty much confirm that the sole point of QR code was to sidestep Apple and Google.
But Walmart, Lydia and others have also tried to sidestep Apple and Google (and Samsung). It never took up, because once you have contactless cards and NFC phones going to QR codes is a massive regression.
The chip readers still have the problem of being too damn slow in the US. Often taking more than 5 seconds to complete the transaction. It may not sound like much, but that adds up over time. Apple pay is instant, although it has the annoyance that the range on the contactless payment is about 4" (10cm) too short so you have to wave your phone all over the reader until you find the one spot where the antennas line up just right to get the read.
> How did NFC lose out to QR codes at the application it was designed for?
Range, most likley. You have to be pretty much on top of one another for NFC to work reliably. However, Japan made NFC work pretty well, IIRC.
By constrast, you can scan a QR code with your camera from across the room if the QR code is big enough.
The real question is why not use BLE? And I suspect the answer was that BLE wasn't on feature phones in China when all this stuff was rolling out.
It may also be that QR codes practically always require you to contact a server somewhere, so China may prefer that over BLE for social control purposes. (For example, I believe that the Hong Kong protesters were doing information exchange over BLE in order to avoid getting shut down by the central authorities.)
Also, QR codes are much easier to make. You just print them on any cheap printer. You can display them on a screen. They are platform and medium independent. I think this is underrated.
The thing that surprises me here isn't the success of QR codes, but the failure of NFC (and to a lesser extent Bluetooth) which was practically designed for paying with your phone.
How did NFC lose out to QR codes at the application it was designed for? Was it a reliability problem? Were the APIs too locked-down for anyone to be able to work with them?