Booking

Terminbuchungs-Plugin für Payload CMS 3.x mit datenbankgestützter Slot-Eindeutigkeit, Magic-Link-Stornierung und transaktionalen E-Mails.

Community 0 13/Wo. MIT v0.1.2

Installation

pnpm add @ogutdgn/payload-booking

Über

Besucher wählen auf der Website einen freien Zeitslot, der Termin erscheint im Payload-Admin und beide Seiten erhalten eine E-Mail. Jede Seite kann den Termin stornieren, derselbe Slot ist danach nicht doppelt buchbar. Diese Garantie wird über einen Unique-Constraint auf einem Lock-Key in der Datenbank durchgesetzt, nicht über Anwendungslogik. Das Plugin ist für PostgreSQL und MongoDB gleichermaßen validiert. Das Plugin registriert die Collections `appointments`, `booking-resources`, `booking-blackout-dates` und das Global `booking-settings`. Öffentliche REST-Endpunkte liegen standardmäßig unter `/api/booking` und decken Verfügbarkeit, Ressourcen, Form-Token-Ausstellung, Buchung und tokenbasierte Stornierung ab. Staff-Endpunkte ergänzen dies um das Stornieren eines Termins sowie das Setzen des Status auf abgeschlossen oder nicht erschienen. Alle Zeitberechnungen laufen serverseitig in der konfigurierten Business-Zeitzone. Der Browser erhält ausschließlich gerenderte Labels und opake ISO-Strings. Stornierungen erfolgen über signierte Magic-Links, nicht durch Löschung. Audit-Trail, Slot-Freigabe und Kunden-E-Mail laufen über denselben Pfad einer Statusänderung. Bestätigungen und Stornierungsbenachrichtigungen werden über den Payload-eigenen E-Mail-Adapter verschickt, mit optionalen Template-Overrides pro Event und ICS-Kalenderanhängen. Jeder Sendeversuch wird im Termin-Datensatz protokolliert. Ohne konfigurierten Adapter gibt das Plugin eine deutliche Warnung aus. Der Spam-Schutz besteht aus vier Schichten: einem versteckten Honeypot-Feld, einem signierten Time-Trap-Token ab Seitenaufruf, Limits pro IP und pro E-Mail-Adresse sowie einem optionalen `verifyChallenge`-Hook für Anbieter wie Cloudflare Turnstile. Das Plugin exportiert die React-Komponenten `BookingForm` und `CancelView` sowie Admin-Komponenten wie `TodayWidget`, `StatusActions`, `StatusLabel`, `WeekdayPreview` und `NavLinks`. Preise, Zahlungen oder Anzahlungen sind nicht enthalten. Das Plugin ist vor Version 1.0 und noch nicht im produktiven Einsatz erprobt.

Paketinformationen

Paketname
@ogutdgn/payload-booking
Neueste Version
0.1.2
Entpackte Größe
666 kB
Lizenz
MIT
Wöchentliche Downloads
13
Zuletzt veröffentlicht
17. Sep. 2026

Ähnliche Plugins

Mehr in Admin