Near Field Communications (NFC) is a short range wireless technology operating at 13.56 MHz. SAP Customer Experience Labs discusses NFC and how web browsers can use NFC with the WebNFC protocol.
Google launched the first NFC-enabled phones (Google Nexus S) together with an update to Android that did allow developers to use the NFC APIs. It took many years for Apple to adopt NFC and finally also open up the APIs to their developers. NFC was almost forgotten… But it’s now 2021 and most phones have NFC hardware built in. The primary use case is payments, NFC card emulation is one of the three operating modes of NFC and most of us use Apple or Google pay on a daily basis.
This means, that NFC functionality is widely available to to devs out there, but to be frank, it’s not very often used besides via the Google/Apple maintained payment apps. But just in May 2021 Chrome for Android 91 came out and now supports Web NFC – any web developer can experiment and use NFC from simple HTML pages.
There are four operating modes defined by the NFC Forum: reader/writer, peer-to-peer, card emulation and wireless charging. Of these four modes, only the first one – reader/writer – and only the so-called NDEF specification is supported by Web NFC. NDEF is the NFC Data Exchange Format and describes a standardized way to encode data onto NFC tags and read it back. For example, it defines how text is encoded or how URLs can be encoded in a byte-saving manner.
So just be clear: you will not be able to emulate a credit card with NFC for in-store payments, nor will you be able to “turn on NFC wireless charging” via Web NFC. But everything that deals with reading and writing little snippets of data to NFC tags in the standardized NDEF format is in.
Sven Haiges published a simple web page for people to try this technology out at https://labs-web-nfc.glitch.me/ – using an Android Phone and Chrome, you can read and write tags. Apple may not be far behind. The latest spec for this technology may be found here.
Read more in the article here.
Also see this guide on the Adafruit Learning System: Using Web NFC