Event Ticket Forms
ZyntForms can act as your complete event ticketing system — collect payment, issue branded QR-code tickets, and check in attendees at the gate.
Setting up an event ticket form
- Create a new form or open an existing one
- In Settings → Payments, toggle Accept payments on
- Add ticket tiers — e.g. "VIP — UGX 50,000", "Regular — UGX 25,000", "Early Bird — UGX 20,000"
- Set Document type: Ticket on each tier
- Optionally set a capacity to stop sales when tickets run out
- Add your payout account (MTN, Airtel, or bank) — see Payment Form Setup
What the attendee receives
After payment is confirmed, the attendee automatically receives:
- An SMS with their ticket code (if phone number was collected)
- A WhatsApp message with ticket details (if WhatsApp is configured)
- A PDF ticket (navy and gold design) with:
- Event name and tier
- Attendee name
- QR code for gate scanning
- Unique ticket code (e.g.
TKT-3FA2B1)
The PDF is delivered as a download link. It is stored securely in Cloudflare R2 and accessible only via a time-limited signed URL.
Checking in attendees at the gate
Gate staff scan the QR code on each ticket using any standard QR scanner app. The QR code links to:
https://zyntforms.net/checkin/verify/[qrToken]
This page shows:
- Attendee name and tier
- Check-in status (not yet checked in / already checked in)
- A button to mark as checked in
The check-in page is designed for mobile and works offline-first — gate staff do not need a ZyntForms account.
Capacity and overbooking protection
When a capacity is set on a tier, ZyntForms counts both pending and confirmed purchases against the cap. This prevents overbooking even if multiple people are paying simultaneously. A "Sold Out" message is shown to new buyers once capacity is reached.
Refunds
ZyntForms does not currently support automated refunds. Contact Pesapal directly for refund processing, then update the ticket status manually in your form's response dashboard. Payout clawback for refunded tickets must be handled manually between you and your attendee.
For help: [email protected]