Overview
Discover what makes pretix powerful
Pretix is a **self‑hosted, open‑source ticketing platform** designed for event organizers who need full control over data privacy and security. At its core, the application exposes a RESTful API that allows developers to create, modify, and delete events, venues, ticket types, orders, and more programmatically. The system also offers a rich GraphQL interface for complex queries, while webhooks provide real‑time notifications to external services. The architecture is intentionally modular: a Django backend serves the business logic, while a Vue.js/React‑based front end delivers a responsive UI. This separation enables developers to replace or extend the client layer without touching core logic.
Language & Framework
Database
Background Tasks
Search & Caching
Overview
Pretix is a self‑hosted, open‑source ticketing platform designed for event organizers who need full control over data privacy and security. At its core, the application exposes a RESTful API that allows developers to create, modify, and delete events, venues, ticket types, orders, and more programmatically. The system also offers a rich GraphQL interface for complex queries, while webhooks provide real‑time notifications to external services. The architecture is intentionally modular: a Django backend serves the business logic, while a Vue.js/React‑based front end delivers a responsive UI. This separation enables developers to replace or extend the client layer without touching core logic.
Technical Stack
- Language & Framework: Python 3.x with Django (REST framework) for the server side; JavaScript (Vue.js or React) for the single‑page admin interface.
- Database: PostgreSQL is the recommended backend, supporting advanced features such as full‑text search and foreign‑key constraints. SQLite can be used for lightweight deployments or testing.
- Background Tasks: Celery (with Redis or RabbitMQ) handles asynchronous jobs like sending emails, processing payments, and generating reports.
- Search & Caching: Elasticsearch is optional for full‑text search; Redis can be used as a cache layer to reduce database load.
- Containerization: Official Docker images are available for each component, facilitating CI/CD pipelines and orchestrated deployments (Docker‑Compose, Kubernetes).
Core Capabilities
- Event & Ticket Management: Define events with multiple ticket types, price tiers, and availability windows.
- Payment Integration: Built‑in support for major payment providers (Stripe, PayPal) and a pluggable architecture that lets developers add new gateways.
- QR Code & Badge Generation: Automatic creation of QR codes for tickets, with customizable templates and PDF export.
- API & Webhooks: Expose CRUD endpoints for events, orders, and customers; trigger webhooks on order creation, cancellation, or payment status changes.
- Multi‑Language & Localization: All UI strings and email templates are translatable; developers can add new locales via Django’s internationalization framework.
Deployment & Infrastructure
Pretix is designed for self‑hosting on any Linux server. A typical production stack includes:
- Web Server: Gunicorn behind Nginx (or Caddy) for HTTPS termination and static asset serving.
- Database: PostgreSQL running in a separate container or VM, with automated backups and replication support.
- Background Workers: Celery workers scaling horizontally to handle high ticket volumes.
- Optional Components: Redis for caching, Elasticsearch for search, and a CDN for static assets.
Scalability is achieved by horizontally scaling Celery workers and Nginx instances, while PostgreSQL can be tuned for read replicas. The Docker Compose configuration simplifies multi‑container deployments, and Helm charts are available for Kubernetes environments.
Integration & Extensibility
Pretix’s plugin system allows developers to hook into almost every event in the lifecycle: pre‑save, post‑save, payment callbacks, and more. Plugins can be written in Python and distributed via PyPI or directly as Git repositories. The REST API follows standard CRUD conventions, making it easy to integrate with external CRM systems, marketing automation tools, or custom dashboards. Webhooks can be configured per event type, enabling real‑time data flow to Slack, Zapier, or custom microservices.
Developer Experience
- Documentation: Comprehensive docs cover installation, API reference, plugin development, and deployment guidelines. The codebase is well‑commented and follows Django conventions.
- Community & Support: An active mailing list, IRC channel, and GitHub discussions foster quick issue resolution. The project is ISO 27001 certified, giving developers confidence in its security posture.
- Configuration: Settings are managed via Django’s
settings.pyand environment variables, making it straightforward to adjust database URLs, secret keys, or feature flags.
Use Cases
- Conference Organizers: Create multi‑day events with workshops, manage attendee registrations, and issue badge PDFs.
- Festivals & Concerts: Sell tiered tickets (early‑bird, VIP), integrate with mobile wallets, and handle high‑volume traffic during peak sales.
- Community Workshops: Offer free or paid workshops, integrate with mailing lists for post‑event follow‑ups.
- Custom Retail Shops: Use Pretix as an online shop for limited‑edition merchandise, leveraging its robust order management and payment plugins.
Advantages
Developers choose Pretix for its complete control over data, the ability to extend functionality through plugins and APIs, and a proven track record of handling high‑traffic events. Its open‑source license eliminates vendor lock‑in, while the ISO 27001 certification assures compliance with stringent security standards. Performance is bolstered by asynchronous task processing and optional caching layers, enabling smooth operation even under heavy load. In short, Pretix offers a flexible, secure, and developer‑friendly ticketing platform that scales from small meetups to large international festivals.
Open SourceReady to get started?
Join the community and start self-hosting pretix today
Related Apps in other
Immich
Self‑hosted photo and video manager
Syncthing
Peer‑to‑peer file sync, no central server
Strapi
Open-source headless CMS for modern developers
reveal.js
Create stunning web‑based presentations with HTML, CSS and JavaScript
Stirling-PDF
Local web PDF editor with split, merge, convert and more
MinIO
Fast, S3-compatible object storage for AI and analytics
Weekly Views
Repository Health
Information
Explore More Apps
Kibitzr
Self‑hosted web watcher & notifier
Artalk
Self-hosted comment system for blogs and sites
MODX Revolution
Fast, secure, flexible open‑source CMS for any web project
AnythingLLM
All-in-one AI app for local, privacy‑first document chat and agents
Git Annex
Manage large files with Git without storing content in the repo
Limbas
Low‑code database framework for rapid business apps