Avocloud.net · Event Ticketing

QrGate

Full-featured event ticketing · QR code check-in
Integrated shop · Online payment via Stripe & cash · Automated PDF delivery

In Production · Helenenbühne Sattledt
3 User Roles
2 Languages
MIT License

What is QrGate?

QrGate is a web-based event management and ticketing system built for real-world use. Combining a Python backend with a PHP frontend, it handles the entire lifecycle of an event — from selling tickets online and at the door, to validating entry via QR code scan, to tracking sales and statistics in an admin dashboard.

Originally developed for and actively deployed at Helenenbühne Sattledt, a local theater group in Austria, QrGate has proven itself in a real production environment. It's open source under the MIT license, fully self-hostable, and designed for any event organizer who needs a reliable ticketing solution without depending on third-party platforms.

What QrGate Offers

QR Code Check-In

Scan-based entry validation directly in the mobile browser. Instant feedback — valid, invalid, or already used.

Mobile Real-time

Admin Dashboard

Configure shows, manage dates and images, view sales metrics and graphical statistics — all in one place.

Statistics Event Config Image Upload

Role-based Access

Admin

Full access to all features — event configuration, user management, sales reports, ticket creation, and system settings.

Full Control Statistics User Mgmt

Ticketflow

Handles ticket sales and management. Can create, issue, and view tickets — ideal for box office staff at the venue.

Ticket Sales Box Office

Handheld

Mobile-first role for door staff. Just open the browser, scan the QR code, and get instant entry validation — no app needed.

QR Scanner Mobile UI Entry Control

Built with Security in Mind

Role-based Access Control

Three hierarchical access tiers ensure each user only accesses what they need — Admin, Ticketflow, and Handheld roles are strictly enforced at the backend.

RBAC Least Privilege

Decoupled Architecture

The Python backend exposes a REST API with API key headers. The PHP frontend acts as a client — backend and frontend are independently deployable and secured.

API Keys REST Decoupled

Tech Stack

Backend

Python 3.7+ Quart quart-cors ReportLab qrcode

Frontend

PHP 7.4+ Composer cURL

Infrastructure

Apache / Nginx SMTP Email Stripe API Self-hostable

Core API Endpoints

POST /api/ticket/create
POST /api/ticket/validate
GET /api/show/get
POST /api/show/edit
GET /api/stats
GET /codes/pdf

Get Started with QrGate

Frontend Setup

cd qr_gate/frontend
composer install

Configure frontend/config.php with your backend URL and credentials, then deploy to any PHP-capable web server (Apache, Nginx, XAMPP, LAMP).

PHP 7.4+ Composer

Configuration

Both config files need to be set up with:

  • API endpoint & secret key
  • SMTP server for email delivery
  • Stripe API credentials
  • Event details & ticket pricing
conf.py config.php

Open Source License