Tap an NFC tag and your phone calls your server

Scan any NFC tag and your phone sends an HTTP request you designed to a server you chose. The request carries the tag's UID, its chip details and whatever is written on it. Stickers, badges, fobs and labels you never wrote all work. No account, no cloud, nothing in between.

For iPhone (iOS 18 or newer) and Android (8.0 or newer). Free and open source.

The Scan tab on iPhone, showing the server's reply after a tap: HTTP 200, Shelf 12 checked in, 4 of 9 shelves done
A profile on iPhone with the method, URL, headers, authentication and JSON body of the request
Rules on iPhone that send each tag to a different profile
RulesThe tag picks the profile, by UID, chip, content or name.
The Tags tab on iPhone for writing tags and naming the ones you have
TagsWrite launch links, links or text, and give your tags names.
Scan history on iPhone with status codes, timings and replies
HistoryEvery scan with its status and reply, exportable as CSV.
The Scan screen on Android after a successful tap
AndroidThe same app on Android, with a Quick Settings tile.

It reads the tag itself

iPhone Shortcuts can react to a tag but never hands you its UID or content, and most NFC apps only fire on tags they wrote themselves. TapPony reads the tag's own identity and sends it wherever you point it.

Any tag
NTAG stickers, ICODE labels, DESFire cards, FeliCa, ISO 15693. The UID comes in canonical byte order, plus the chip model, the NXP originality signature and the scan counter when the chip has them.
Your request
Method, URL, headers, and a JSON, form or raw body built from templates like {uid} and {payload}. Bearer, basic or API key auth, with every value escaped for where it lands.
The reply, on screen
Pick a field from the server's JSON reply or a header and it shows large after each tap, like "Checkpoint 4 of 9". It can also be read out loud for hands-free rounds.
Rules and batches
Route each tag to the right profile by UID, chip, content or a name you gave it. Tap thirty boxes in a row in batch mode. Scans made offline wait on the phone and go out in order.

What your server receives

One request per scan, shaped by your profile. This one is the standard JSON body most presets start from. Your server can answer with a message, and TapPony shows it on the phone.

Every variable, the template syntax and signature checks in PHP, Python and Node.js are in the docs for receivers.

POST /api/webhook/front-door
Content-Type: application/json

{
  "uid": "04A27F1B5E8000",
  "chip": "NTAG215",
  "payload": "Kitchen door",
  "timestamp": "2026-09-28T18:30:05Z",
  "seq": 42
}
The reply {"message":"Checkpoint 4 of 9"} shows on the phone after the tap.

How people use it

  • Home Assistant

    A tag by the door runs a scene. Existing cards can act as Home Assistant tags without the companion app writing to them.

  • Asset tracking

    Stickers on equipment, one tap per item into a spreadsheet or inventory system. The UID matches what your desktop reader prints.

  • Rounds and checklists

    A tag at each checkpoint proves you were there. Works in basements and parking decks, and the server can answer with the next stop.

  • Your own scripts

    n8n, Node-RED, ntfy, a ten-line PHP script. TapPony is an NFC event source with a request you fully control.

Start a scan from anywhere

On iPhone: a Control Center and Action button control, Home and Lock Screen widgets, and Shortcuts actions. "Read NFC Tag" returns the UID and content into any shortcut, and "Scan and Send" returns the server's answer. On Android: a Quick Settings tile and launcher shortcuts per profile. Both open tappony://scan links from other apps.

Tags you write yourself can carry a TapPony launch link, which opens the app and sends even when it is closed.

No TapPony server in between

The request goes from your phone straight to your server. There is no TapPony account and no TapPony cloud. Profiles and history stay on the phone, secrets live in the iPhone Keychain or the Android Keystore, and the app has no analytics. Plain HTTP is only allowed to addresses on your own network, and only when you turn it on for that profile.

Read the full privacy policy

Download TapPony

TapPony for iPhone is out on the App Store. Android is still in beta, with builds posted as direct downloads and F-Droid to follow. iPhone needs iOS 18 or newer, Android needs 8.0 or newer.