Event check-in via QR is the cheapest possible bouncer. A printed/digital QR on each ticket, a phone or laptop at the door, a single-use scan that flips the ticket to "redeemed" — that's the entire system. No turnstile, no RFID wristband, no enterprise event-management contract.
The trick to making it work without flaky Excel sheets: each ticket QR is unique (one slug per attendee), the redirect resolves to a server-side check-in endpoint, and the endpoint atomically marks the ticket consumed before showing the green check. If two phones try to scan the same QR (forwarded screenshot, social-media share), only the first wins — the second sees an explicit "already redeemed at 19:32" message. No bouncer judgement call.
For paid events specifically: tie the ticket QR to your payment provider's event metadata so refunds and exchanges propagate. qrlia accepts webhook events from Stripe / Lemon Squeezy / paygw — when a ticket gets refunded, the QR's underlying state flips to "void" and the door check-in rejects it.
For multi-day conferences, the same QR works across days but each day's check-in registers separately. Useful for tracking "who came back on day 2" without issuing a new ticket. The dashboard surfaces this as a session-attendance heatmap.
For privacy-conscious organisers: the QR encodes a slug, not personal data. Names + emails live in qrlia's database (EU-resident), accessible only to authenticated organisers. The phone scan never exposes attendee details to the bouncer's device — they see a check or an X, no PII.
Two practical tips. First: print the attendee's name visibly next to the QR on the ticket. Some events still want to verify ID matches the ticket holder. Second: include a fallback method (4-digit PIN per ticket, manually entered) for the inevitable phone-camera-broken edge case.