Zum Hauptinhalt
VerfügbarTickets & AuswertungenBetreiber

Tickets verkaufen, zustellen und erstatten

Verwalte Ticketangebote, sichere Checkouts, Bestellungen, Ticketübertragungen, Erstattungen und Auszahlungen als zusammenhängenden Ablauf.

Rollen
owner, manager, staff, customer
Benötigte Module
ticketing.checkout
Zuletzt fachlich geprüft

Worum es geht

Ticketing verbindet Veranstaltungsangebot, serverseitiges Inventar, Stripe Checkout, signierte Webhooks, Ticketerstellung, Mailzustellung und Einlass. Tickets werden niemals vor der bestätigten Zahlung erstellt.

Voraussetzungen

  • Das Modul Ticketing (`ticketing.checkout`) ist aktiv.
  • Veranstaltung, Termin und mindestens eine aktive Ticketart sind gespeichert.
  • Für Zahlungen ist Stripe im richtigen Test- oder Live-Modus eingerichtet.
  • Für Betreiber-Auszahlungen ist das Auszahlungskonto deines Betriebs geprüft.

Schritt für Schritt

  1. Ticketangebot prüfen

    Öffne Veranstaltung oder Tickets und kontrolliere Titel, Beschreibung, Preis, Währung, Kontingent, Terminbezug, Aktivstatus und optionale Sitzpreisregeln.

    Erwartetes Ergebnis: Die öffentliche Vorschau zeigt genau die aktiven und verfügbaren Angebote.
  2. Testkauf als Gast ausführen

    Öffne die direkte Veranstaltungsseite, wähle Ticketmenge und gegebenenfalls Sitzplatz, erfasse synthetische Kontaktdaten und prüfe die Zusammenfassung. Öffne nur einen Test-Checkout.

    Erwartetes Ergebnis: Stripe Checkout zeigt Betrag, Währung und sicheren Zahlungsempfänger im Testmodus korrekt.
  3. Zahlung und Webhook abwarten

    Schließe die Testzahlung ab und warte auf die signierte Checkout-Bestätigung. Aktualisiere die Erfolgsseite und Betreiberansicht erst danach.

    Erwartetes Ergebnis: Bestellung wechselt zu abgeschlossen, Tickets werden einmalig erstellt und die Zustellung wird eingeplant.
  4. Bestellung und Zustellung prüfen

    Öffne die Bestellung im Ticketarbeitsbereich. Prüfe Betrag, Status, Ticketnummern, Sitzplätze und Mailstatus. Erneut senden ist nur für abgeschlossene Bestellungen mit bestehenden Tickets erlaubt.

    Erwartetes Ergebnis: Operatoransicht, Ticket-PDF und sichere Testmail stimmen überein.
  5. Ticket übertragen oder erstatten

    Wähle die vorgesehene Übertragung oder Erstattung, prüfe Umfang, Grund, bereits eingelöste Tickets und Auszahlungswirkung und bestätige einmal.

    Erwartetes Ergebnis: Status, Inventar, Zahlung, Ticketzugriff und Audit-Historie bleiben konsistent.

So sieht es aus

Tickets entstehen erst nach bestätigter Zahlung; abgeschlossene Bestellungen können erneut zugestellt werden.desktop · 2026-08-01

Checkout und Ticketerstellung

Der Browser eröffnet einen Stripe Checkout über den gemeinsamen Ticketworkflow. Preis und Sitzplatzaufschlag werden serverseitig aus TicketOffering, SeatPricing und aktiven Holds berechnet.

Ein erfolgreicher Redirect allein erzeugt kein Ticket. Erst der verifizierte Stripe-Webhook bestätigt die Zahlung und löst die idempotente Ticketerstellung aus.

Virtuelle Ticket-Warteschlange

Bei aktivierter Warteschlange erhält der Browser einen Platz für genau dieses Angebot deines Betriebs. Zulassung, Ablauf und Kompaktierung werden serverseitig gesteuert. Ein Platz in der Warteschlange ersetzt weder Ticket noch Zahlung.

Ticketübertragung, Ticket-PDF und erneute Zustellung

Eine Übertragung erneuert den Zugriffscode und verhindert, dass der frühere Inhaber denselben QR-Zugang weiter nutzt. Das Ticket-PDF zeigt den aktuellen Inhaber- und Statuskontext.

Erneute Zustellung verwendet `TicketWorkflow.resendTicketEmail()` und ist nur bei abgeschlossener Bestellung mit existierenden Tickets möglich.

Erstattungen, Disputes und Auszahlungen

Erstattungen können einen Betrag, ausgewählte Tickets, eine Bestellung oder eine ganze Veranstaltung betreffen. Bereits eingelöste oder nicht erstattbare Tickets werden sichtbar ausgeschlossen.

Auszahlungen werden mit dem Auszahlungskonto deines Betriebs abgeglichen. Fehler bei Stripe erscheinen als „nicht eingerichtet“ und zeigen keine technischen Details oder Geheimnisse.

Wenn etwas nicht funktioniert

Zahlung war erfolgreich, aber Ticket fehlt.

Wahrscheinliche Ursache
Webhook ist noch nicht eingegangen, Signaturprüfung scheiterte oder die Verarbeitung wartet auf einen Retry.
Sichere Lösung
Prüfe Bestell- und Webhookstatus. Erzeuge keinen zweiten Kauf und kein manuelles Ticket; warte auf oder repariere den bestätigten Zahlungsworkflow.

Erneut senden ist deaktiviert.

Wahrscheinliche Ursache
Bestellung ist nicht abgeschlossen oder besitzt noch keine Tickets.
Sichere Lösung
Prüfe Zahlung und Webhookverarbeitung. Verwende die Aktion erst, wenn beide Bedingungen sichtbar erfüllt sind.

Sitzplatzpreis stimmt nicht mit der Auswahl überein.

Wahrscheinliche Ursache
Hold, Preisregel oder Angebot wurde zwischen Auswahl und Checkout geändert.
Sichere Lösung
Verwirf den alten Checkout, lade die Veranstaltungsseite neu und erstelle einen neuen Hold. Überschreibe den Stripe-Betrag nicht clientseitig.
Mobil nutzen
Auf Mobilgeräten bleibt der Kauf in Auswahl, Kontakt und Bezahlen gegliedert. Prüfe vor dem Wechsel zu Stripe Menge, Sitzplatz, Gesamtbetrag und E-Mail-Adresse in der Zusammenfassung.
Barrierefrei bedienen
Ticketmenge, Auswahlstatus, Preis und Fehlermeldungen werden ausgeschrieben. QR-Code und PDF benötigen zusätzlich eine lesbare Ticketnummer und einen manuellen Einlassweg.
Sicherheit und Datenschutz
Ticketnummer, QR-Code, Transferlink und Checkoutsession sind werthaltige Geheimnisse. Veröffentliche sie nicht in Screenshots und verwende für Dokumentation nur synthetische Testtickets.

Beschriebene Produktoberflächen

  • /dashboard/tickets
  • /events/[tenant]/[event]