Tikit
From selling the ticket to scanning it at the door — one product for the whole life of an event.
- Context
- Event organisers need to publish events, sell tickets, collect registrations, get paid and control access — and their attendees expect all of it to just work. Tikit runs as two installations: Chile (CLP, Mercado Pago) and Spain (EUR, Stripe Connect).
- Problem
- Cover the full event cycle in one platform without making it heavy for small organisers: flexible registration, payments that reach the organiser directly, and an entrance that keeps working when the network doesn't.
- Solution
- A Symfony API at the centre, a React back office for organisers, a server-rendered Next.js public site for discovery and sales, and native check-in apps for iOS and Android — all speaking the same API, also opened to developers through API keys and webhooks.
- What it does
- Free and paid events, multiple sessions, ticket categories, combos and coupons
- Registration forms with custom and conditional fields, cascading lists and document validation
- Direct payouts to the organiser's account, configurable fees and synced refunds
- Native check-in: QR scanning, offline mode, several doors at once, live attendance
- Badge editor and printing straight from the check-in app
- Built-in email marketing with an AI writing assistant, ad pixels and embeddable sales
- Public developer API with API keys and webhooks
- Stack
- Symfony
- PHP
- MySQL
- React
- TypeScript
- Next.js
- SwiftUI
- Kotlin
- Jetpack Compose
- Stripe Connect
- Mercado Pago
- REST APIs
- Webhooks
- Docker
Symfony API
Domain, payments, webhooks, public developer API
React back office
Organiser dashboard served at /admin
Next.js web
Server-rendered public site, event pages, SEO
iOS · SwiftUI
Native check-in app, offline-capable
Android · Compose
Native check-in app, same version line as iOS
Payments
Stripe Connect (ES) · Mercado Pago (CL)
