QR check-in even without a network.

For a fitness brand's live event we built a web app to scan tickets at the door that keeps working when the venue's connection gives up.

Sector
Fitness and coaching
Practice
Software engineering
Year
2026
How it works
Before the event
Tickets soldWordPress
List downloadedon the phone
Check-in app
Validates the QR even offline
CameraLocal listDuplicate entrySeveral devices
At the door
Valid entrygreen
Already scannedwarning
Syncwhen online
In brief

Staff open the app in their phone's browser, download the list of tickets sold on the website and scan QR codes with the camera. Validation happens on the device, so it works without a network; tickets already used are flagged, and scans are uploaded to the site as soon as possible.

0
apps to install: it opens in the browser

Context

The brand runs live events with tickets sold on its WordPress site. At the door several people scan in parallel, often in venues with weak connectivity.

The problem

A scanner that depends on the network freezes exactly when the queue is longest. And without a shared list, the same ticket can get in twice through two entrances.

What we did

  1. 01

    List on the device

    Before doors open the app downloads tickets: order, name, products, type. The list stays stored on the phone.

  2. 02

    Offline validation

    A scan checks the QR against the local list: an instant answer, even with no connection.

  3. 03

    Duplicates and several devices

    Already scanned tickets are flagged. Device and camera can be chosen, so several people work in parallel.

  4. 04

    Sync and metrics

    Scans, with device data, go back to the site when there is a network. App usage events are recorded to see how staff actually work.

How it went

Staff use their own phones, with nothing to install, and the entrance no longer depends on the venue's Wi-Fi.

Tools

React 19TanStack RouterViteTailwindZustandPostHogWordPress REST

FAQ

Does it work on iPhone and Android?

Yes, it's a web app: it opens in the browser and uses the phone's camera.

Do we need a dedicated server?

No. Tickets come from the site that already sells them, and the app reads and writes through endpoints on that same site.

Contact

Facing something similar?

Tell us what you run today and what isn't working. We'll reply within one business day with a first technical read.

Email
hello@cloudfactory.it
Address
Viale di Trastevere 114, 00153 Rome, Italy