An event ticket QR code carries the ticket itself — event, ticket number, attendee and seat — as structured text rather than a link, so the door can read it with no signal. Ticket codes are made in the MOJA app rather than here.
Create unlimited QR codes — right from your phone, anytime, anywhere. Free to download.
Experience this feature seamlessly in our mobile app. Download it today to enjoy the full mobile experience
Download Free AppThe code holds a short structured record — TICKET:EVENT:…;ID:…;ATTENDEE:…;SEAT:… — not a web address. Nothing is fetched when it is scanned, which is the point: a door scanner in a basement venue with no signal still reads the ticket.
It identifies a ticket. It does not validate one. The code says "ticket 0412 for event SPRING26". Whether 0412 is real, unused and paid for is a question only your own list can answer. Treat the code as the thing you look up, never as the thing that grants entry.
This is a MOJA format, not an open standard. The MOJA app reads it back as a ticket with the fields laid out; any other scanner shows the raw text. That is fine when your own door staff scan with the app, and it is the wrong choice if tickets have to be read by equipment you do not control.
Where the guest list is a spreadsheet and the door is one person with a phone. The code removes the "how do you spell that" conversation without anyone buying a ticketing platform.
Seat numbers printed on the ticket and carried in the code, so whoever is showing people to their seats can scan rather than squint at a printout.
Head-count for a town hall or a training day, where the attendee list already exists in HR and nothing needs paying for.
There is no signature and no anti-copy. A photograph of a ticket is a working ticket. Anyone who screenshots one and sends it to a friend has produced a second valid-looking code. The only defence is marking each ticket ID used the first time it is scanned — which your list does, not the code.
Nothing expires. The record has no date field and no lifetime. Last year's ticket scans exactly as well as this year's; the event ID is what keeps them apart, so use a new one each time.
Semicolons and colons break the record. They separate the fields, and the values are not escaped, so a name or seat containing either ends the field early. Stick to letters, digits, spaces and hyphens.
Only the MOJA app reads it back as a ticket. A generic camera app shows TICKET:EVENT:… as plain text. If you need tickets read by a third-party scanner or a turnstile, use whatever format that equipment expects — often a plain Website URL pointing at your own validation page.