Design
Buchungen
Die Buchungsverwaltung ist deine zentrale Arbeitsfläche im Alltag. Hier siehst du auf einen Blick, was gerade passiert: Welche Gäste kommen heute an? Welche Anfragen warten auf deine Bestätigung? Wer reist heute ab?
Übersicht
Die Buchungsseite ist in drei Ansichten unterteilt – du wechselst oben links zwischen:
- Liste – tabellarische Übersicht aller Buchungen
- Plan – grafische Ansicht der Auslastung pro Parzelle
- Kalender – Monatskalender mit Anreise- und Abreise-Indikatoren
Egal welche Ansicht du wählst: Der obere Bereich mit dem Kontextschalter und dem Neue-Buchung-Button (Plus-Icon) bleibt immer sichtbar. Im Belegungsplan gibt es zusätzlich einen eigenen visuellen Filter, der unabhängig vom Kontextschalter der Liste funktioniert (Details im Abschnitt Plan).
💡 Tipp: Die aktive Ansicht und der aktive Kontext werden in der URL gespeichert – du kannst Links direkt teilen oder als Lesezeichen ablegen. Nach dem Navigieren und Zurückkehren stellt die Seite automatisch den letzten Zustand wieder her.

Kontextschalter – schneller Überblick und Filter
Der Kontextschalter oben rechts ist eine Buttongruppe mit vier Optionen. Jede zeigt die aktuelle Anzahl der betroffenen Buchungen – die Zahl ist immer sichtbar, auch wenn der Button inaktiv ist.
| Button | Farbe | Bedeutung |
|---|---|---|
| Anfragen | Amber | Offene Buchungsanfragen, die auf deine Bestätigung warten |
| Anreisen | Grün | Gäste, die heute ankommen |
| Abreisen | Lila | Gäste, die heute abreisen |
| Kassieren | Sky (Blau) | Buchungen mit offenem Betrag, deren Anreisetag erreicht oder überschritten ist (Standard) |
| Rückerstatten | Amber | Buchungen mit offenem Erstattungsbetrag – typisch nach Storno mit Überzahlung |
| Überfällig | Rot | Buchungen, bei denen Handlungsbedarf besteht (siehe unten) |
Aussehen der Buttons:
- Inaktiver Button: Zeigt nur das Icon – fahre mit der Maus darüber, um den Namen als Tooltip zu sehen.
- Aktiver Button: Zeigt Icon und Text-Label nebeneinander (z. B. „Anreisen"). Auf Mobilgeräten wird nur das Icon angezeigt; der aktive Zustand ist durch die Hintergrundfarbe erkennbar.
Die Zahlen der An- und Ab-Pills folgen dem gewählten Datum im Datumsschalter (siehe nächster Abschnitt). Weicht das Datum von heute ab, erscheint ein * hinter der Zahl – der Tooltip zeigt dann „Anreisen am {Datum}" statt „Anreisen heute".
Die übrigen Zahlen (Anfragen, Kassieren, Rückerstatten, Überfällig) beziehen sich immer auf den heutigen Tag.
Die Zahlen werden automatisch alle 60 Sekunden aktualisiert.
Als Filter nutzen
Klicke auf einen Button, um die Buchungsliste auf genau diese Gruppe einzuschränken. Die Ansicht wechselt dann auf die passenden Spalten für diesen Kontext (mehr dazu im nächsten Abschnitt).
Um den Filter wieder aufzuheben, klicke auf den Reset-Button (Rückwärtspfeil-Icon) rechts neben der Buttongruppe. Der Button ist ausgegraut, solange kein Kontext aktiv ist.
💡 Tipp: Starte deinen Morgen mit einem Klick auf Anreisen – so siehst du sofort alle Ankommenden des Tages inklusive Vehikel-Info und Bemerkungen.
Datumsschalter – auf anderen Tag blättern
Wenn du den Kontext Anreisen oder Abreisen aktivierst, erscheint im Header ein Datumsschalter. Damit kannst du auf andere Tage blättern – ideal, um den nächsten Tag vorzubereiten oder vergangene Tage nachzuarbeiten.
Der Schalter besteht aus drei Elementen (von links nach rechts):
- Datums-Label – zeigt „Heute", „Gestern", „Morgen" oder das konkrete Datum; ein Klick öffnet den Datepicker zur schnellen Auswahl
- ‹ / › Pfeile – blättern einen Tag zurück oder vor
- ↻ Reset-Button – springt zurück auf heute (ist abgedimmt, wenn du bereits auf heute bist)
💡 Tipp: Das gewählte Datum bleibt erhalten, wenn du zwischen Anreisen, Abreisen und Belegungsplan wechselst. So siehst du immer denselben Zeitraum in allen Ansichten.
Kontext "Überfällig"
Der rote Überfällig-Button zeigt alle Buchungen, die sofortigen Handlungsbedarf signalisieren:
- Bestätigte Buchungen mit verpasstem Check-in – das Anreisedatum liegt in der Vergangenheit, der Gast wurde aber noch nicht eingecheckt
- Eingecheckte Buchungen mit verpasstem Check-out – das Abreisedatum liegt in der Vergangenheit, aber kein Check-out wurde durchgeführt
- Ausgecheckte Buchungen mit offener Zahlung – der Gast ist bereits abgereist, aber der Zahlungsstatus ist noch offen oder nur teilweise bezahlt
⚠️ Wichtig: Prüfe den Überfällig-Kontext täglich – hier sammeln sich Buchungen, die ohne Eingriff liegen bleiben würden.
Kontext "Kassieren"
Der sky-blaue Kassieren-Button zeigt Buchungen mit offenem Betrag – ohne Anfragen und ohne abgelehnte. Welche du davon in der Liste siehst, entscheidet der Schalter „Angereist" darunter.
Auch stornierte Buchungen erscheinen hier, wenn eine Stornogebühr offen ist. Vorher waren sie herausgefiltert – die Forderung war über diesen Weg nicht auffindbar.
💡 Zähler und Liste können auseinandergehen. Die Zahl an der Pill zählt alle offenen Forderungen. Der Schalter „Angereist" begrenzt die Liste, nicht den Zähler. Steht dort „7" und du siehst nur 4 Zeilen, wurden die übrigen drei nie eingecheckt – Schalter auf AUS, dann siehst du sie. Damit du nicht selbst nachzählen musst, steht die Differenz direkt neben dem Schalter: „4 von 7". Sie erscheint nur, wenn der Filter wirklich etwas wegnimmt.
Switch „Angereist"
Im Kassieren-Kontext erscheint an der Stelle des Datumsschalters ein Schalter „Angereist":
| Schalter | Bedeutung |
|---|---|
| AN (Standard) | Nur Gäste, die eingecheckt wurden – auch die, die inzwischen wieder abgereist sind |
| AUS | Alle Buchungen mit offenem Betrag – auch die, bei denen nie ein Check-in erfasst wurde |
Entscheidend ist der Check-in, nicht das Anreisedatum. „Angereist" ist ein erreichter Zustand: Wer eingecheckt hat, bleibt angereist, auch nach dem Check-out. Wer nie eingecheckt wurde, gilt nicht als angereist – selbst wenn der gebuchte Anreisetag längst vorbei ist.
Welchen Zustand du gerade siehst und was das Umschalten ändert, sagt dir auch der Schalter selbst: Fahre mit der Maus darüber, dann erklärt ein Hinweis beide Stellungen.
⚠️ Wichtig: Genau hier bleibt Geld liegen. Ein Aufenthalt, der vorbei ist, bei dem aber nie jemand auf Check-in geklickt hat, taucht mit dem Schalter auf AN nicht in der Liste auf – obwohl der Betrag offen ist. Schalte ihn deshalb regelmäßig auf AUS und sieh nach, was dazukommt.
Der Zustand wird in der URL gespeichert (?arrived=0 = Schalter aus) – du kannst die gefilterte Ansicht als Link teilen.
💡 Tipp: Aktiviere diesen Kontext am Ende des Tages oder beim Check-out, um alle fälligen Zahlungen auf einen Blick zu sehen. Mit dem Schalter auf AUS siehst du außerdem alle Buchungen mit offenem Betrag – die mit noch bevorstehender Anreise ebenso wie die, bei denen der Check-in nie erfasst wurde.
Kontext "Rückerstatten"
Die amberfarbene Rückerstatten-Pill zeigt alle Buchungen mit einem offenen Erstattungsbetrag – typisch nach einem Storno, bei dem der Gast mehr gezahlt hat, als die verbleibende Rechnung ausweist. In diesem Kontext erscheinen auch stornierte Buchungen, da der Erstattungsanspruch unabhängig vom Buchungsstatus besteht.
Der Zähler in der Pill entspricht refund_count aus den Buchungs-Stats und bezieht sich immer auf den heutigen Tag.
💡 Tipp: Prüfe diesen Kontext nach Stornierungen – er zeigt dir auf einen Blick, bei welchen Buchungen noch eine Erstattung an den Gast aussteht.
Kassieren-Button – kontextabhängige Darstellung
Der Kassieren-Button erscheint in der Buchungsliste je nach Kontext unterschiedlich:
| Kontext | Darstellung |
|---|---|
| Alle, Überfällig, Kassieren, Rückerstatten | Kompakter Icon-Button parallel zu Check-in / Check-out (erscheint zusätzlich, sobald ein offener Betrag vorhanden ist) |
| Nach Check-out (kein weiterer Aktionsbutton) | Voller Kassieren-Button als einzige Aktion |
| Anreisen / Abreisen | Kein Kassieren-Button – diese Kontexte sind auf Check-in/Check-out fokussiert |
Das bedeutet: Du musst nicht extra in den Kassieren-Kontext wechseln, um nach dem Check-out noch kassieren zu können. Umgekehrt erscheint kein Kassieren-Button im Anreisen- und Abreisen-Kontext, damit dort die Übersicht auf das Wesentliche fokussiert bleibt.
Bei Gruppenbuchungen gilt dieselbe Regel: Der Gruppen-Kassieren-Button erscheint parallel zu Check-in und Check-out, sobald ein offener Gesamtbetrag vorhanden ist – auch wenn Teilbuchungen noch den Status Bestätigt oder Eingecheckt haben. So kannst du Anzahlungen erfassen, bevor die Gruppe ausgecheckt ist. Im Anreisen- und Abreisen-Kontext erscheint auch bei Gruppen kein Kassieren-Button. Details: Gruppen-Kassieren-Dialog.
Buchungsliste
Kontextabhängige Spalten
Je nach aktivem Filter zeigt die Liste genau die Informationen, die du gerade brauchst. Die ersten drei Spalten sind in allen Kontexten gleich: Gast, Zeitraum, Platz – danach folgen die kontextspezifischen Spalten.
💡 Tipp: Die Zeitraum-Spalte zeigt immer zwei Zeilen: Das Datum in der ersten Zeile und die Nächteanzahl (z.B. "7 Nächte") in der zweiten Zeile darunter.
Standard (kein Filter aktiv)
Alle Buchungen im Überblick: Gast, Zeitraum (An- und Abreisedatum + Nächte), Platz, Vehikel (Zusammenfassung, z.B. „1× Wohnmobil"), Status, Zahlung, Betrag.
Anfragen – Anfragen bestätigen
Zeigt: Gast, Zeitraum (Datum + Nächte), Platz, Personen, Eingegangen (mit ⚠️-Warnung bei Anfragen älter als 2 Tage), Bestätigen/Ablehnen-Buttons.
Anreisen – Ankünfte abwickeln
Zeigt: Gast, Zeitraum (Abreisedatum + Nächte), Platz, Personen, Vehikel, Bemerkungen, Aktionsspalte.
Die Aktionsspalte zeigt je nach Buchungsstatus einen von vier Status-Pfaden:
| Buchungsstatus | Aktionsspalte zeigt |
|---|---|
| Anfrage (Offen) | ⚠️ „Nicht bestätigt" – Tooltip: „Buchung muss erst bestätigt werden, bevor ein Check-in möglich ist." |
| Bestätigt | Check-in-Button |
| Eingecheckt | ✓ „eingecheckt" (gedimmt) |
| Ausgecheckt | ✓ „ausgecheckt" (gedimmt, nur wenn An- und Abreise am selben Tag) |
💡 Tipp: Offene Anfragen im Anreise-Kontext erkennst du am gelben Warn-Dreieck. Wechsle kurz in den Anfragen-Kontext, um sie zu bestätigen – dann erscheint der Check-in-Button.
Hinweis: Es werden nur Buchungen angezeigt, deren Anreisedatum exakt dem gewählten Datum entspricht. Benutze den Datumsschalter, um andere Tage zu sehen.
Abreisen – Abreisen abwickeln
Zeigt: Gast, Zeitraum (Anreisedatum + Nächte), Platz, Zahlung, Restbetrag (rot wenn noch offen), Bemerkungen, Aktionsspalte.
Die Aktionsspalte zeigt je nach Buchungsstatus:
| Buchungsstatus | Aktionsspalte zeigt |
|---|---|
| Anfrage (Offen) | ⚠️ „Nicht bestätigt" |
| Bestätigt | ⚠️ „Nicht eingecheckt" – Tooltip: „Buchung muss erst eingecheckt werden, bevor ein Check-out möglich ist." |
| Eingecheckt | Check-out-Button |
| Ausgecheckt | ✓ „ausgecheckt" (gedimmt) |
Hinweis: Es werden nur Buchungen angezeigt, deren Abreisedatum exakt dem gewählten Datum entspricht.
Kassieren – angereiste Gäste kassieren
Zeigt: Gast, Zeitraum (An- und Abreisedatum + Nächte), Platz, Gesamt, Bezahlt, Offen (sky-blau, fett – der noch ausstehende Betrag), Zahlungsstatus, Kassieren-Button.
Der Kassieren-Button (Wallet-Icon mit dem offenen Betrag als Label) öffnet direkt den Zahlungsdialog für diese Buchung. So kassierst du alle offenen Beträge der Reihe nach ohne jedes Mal das Detail-Sheet öffnen zu müssen.
Rückerstatten – Erstattungen abwickeln
Zeigt: Gast, Zeitraum (An- und Abreisedatum + Nächte), Platz, Gesamt, Bezahlt, Rückerstatten (amber, fett – der Erstattungsbetrag), Zahlungsstatus, Rückerstatten-Button.
Auch stornierte Buchungen erscheinen in diesem Kontext, wenn noch ein Erstattungsbetrag offen ist. Der Rückerstatten-Button öffnet denselben Zahlungsdialog wie Kassieren – du kannst dort den Erstattungsbetrag erfassen.

Infinite Scroll – automatisches Nachladen
Die Buchungsliste lädt Einträge seitenweise nach, während du nach unten scrollst. Du musst nicht mehr blättern – neue Buchungen erscheinen automatisch, sobald du das Listenende erreichst.
- Während des Nachladens erscheinen kurz drei Platzhalter-Zeilen
- Am Ende der Liste steht „Alle N Buchungen geladen", sobald alle Einträge sichtbar sind
- Wenn du einen Filter oder den Kontext wechselst, springt die Liste automatisch nach oben und lädt neu
💡 Tipp: Occupancy-Plan und Kalender sind nicht betroffen – sie laden weiterhin den vollständigen Datensatz auf einmal.
Scroll-Footer – Position und Navigation
Am unteren Rand der Buchungsliste befindet sich ein fester Footer-Streifen:
- Progress-Bar – zeigt visuell, wie weit du in der Liste gescrollt bist (bezogen auf die Gesamtanzahl aller Buchungen)
- Position-Counter „X von Y" – X = absolute Position der aktuell sichtbaren Zeile in der Gesamtliste, Y = Gesamtanzahl
- ↑ Nach-oben-Button – springt mit einem Klick zum ersten Eintrag der Liste (lädt bei Bedarf Seite 1 nach)
- ↓ Nach-unten-Button – springt mit einem Klick zum letzten Eintrag der Liste (lädt bei Bedarf die letzte Seite nach)
Hinweis: Der Footer wird nicht angezeigt, wenn die Liste kürzer als der Bildschirm ist.
💡 Tipp: Der Position-Counter zeigt die korrekte Zahl auch dann, wenn du über einen Deep-Link direkt in die Mitte der Liste eingestiegen bist (z.B. über den Backlink „Zurück zur Buchungsliste" von der Buchungsdetail-Seite).
Bidirektionales Nachladen
Die Liste lädt automatisch nach – sowohl nach unten als auch nach oben:
- Nach unten scrollen – noch nicht geladene Seiten werden am Ende angehängt (wie bisher)
- Nach oben scrollen – falls du in der Mitte eingestiegen bist (z.B. via Deep-Link), werden ältere Seiten automatisch oben nachgeladen, ohne den Scroll-Anker zu verschieben
Sortierung der Buchungsliste
Die Zeitraum-Spalte in der Listenansicht hat einen klickbaren Sort-Toggle im Spaltenheader. Damit steuerst du, in welcher Reihenfolge die Buchungen erscheinen.
Standard-Reihenfolge: Neueste Buchung oben (nach Erstellungsdatum). Das erkennst du am Uhr-Icon (Zeiger) im Spaltenheader.
Klicke auf den Toggle, um die Reihenfolge zu wechseln – der Toggle rotiert durch drei Modi:
| Modus | Icon | Bedeutung |
|---|---|---|
| Standard | Uhr-Icon | Neueste Buchung oben (nach Erstellungsdatum) |
| 1. Klick | Pfeil nach unten | Späteste Anreise oben |
| 2. Klick | Pfeil nach oben | Älteste Anreise oben |
| 3. Klick | Uhr-Icon | Zurück zum Standard |
Ein Tooltip erklärt beim Überfahren den jeweils aktiven Modus.
💡 Tipp auf dem Smartphone: Oberhalb der Card-Liste findest du eine Sort-Pill in der Toolbar, die denselben Toggle enthält.
Die gewählte Sortierung bleibt erhalten, wenn du durch die Liste scrollst oder das Detail-Sheet öffnest. Sie wird als URL-Parameter gespeichert (?sort=check_in_desc bzw. ?sort=check_in_asc) – so kannst du einen Link mit der gewünschten Sortierung teilen. Im Standard-Modus erscheint kein URL-Parameter.
Suchen und Filtern
In der Listenansicht stehen dir eine Omnibox (intelligentes Suchfeld) sowie mehrere Filter-Dropdowns zur Verfügung.

Schnell zur Suche springen – Tastaturkürzel
Du kannst die Omnibox von jeder Seite im Betreiber-Dashboard aus mit einem Tastaturkürzel direkt anspringen:
| Kürzel | Betriebssystem |
|---|---|
/ (Schrägstrich) | Windows, Linux, Mac |
Ctrl + K | Windows / Linux |
⌘ + K | Mac |
Verhalten je nach aktiver Ansicht:
- Buchungen – Listenansicht aktiv: Der Cursor springt sofort in die Omnibox.
- Buchungen – Plan oder Kalender aktiv: Die Ansicht wechselt automatisch zur Liste, dann springt der Cursor in die Omnibox.
- Andere Seite im Dashboard: Navigation zu Buchungen (Listenansicht), dann Cursor in die Omnibox.
Hinweis: Wenn du dich bereits in einem Eingabefeld (Formular, Textfeld) befindest, wirkt der Kürzel nicht – du kannst wie gewohnt weiterschreiben.
![]()

💡 Tipp: Dasselbe Muster kennst du von GitHub, Linear und Gmail. Mit einem Tastendruck bist du sofort in der Suche – ohne die Maus zu bewegen.
Omnibox – intelligente Suche
Das Suchfeld erkennt viele Eingabetypen automatisch und schlägt passende Treffer vor, während du tippst:
| Was du eingibst | Was gefunden wird |
|---|---|
| Name, E-Mail | Gäste |
BK-2026-… | Buchungsnummer |
GRP-2026-… | Gruppe (zeigt alle Teilbuchungen) |
A1, B12 | Parzellen (Name inkl. Kategorie-Präfix) |
| Rechnungsnummer | Zugehörige Buchung |
heute, morgen, gestern | Buchungen an diesem Tag |
Montag, Di, Mo | Nächstes Vorkommen des Wochentags |
KW33, KW33 2027 | Buchungen in dieser Kalenderwoche |
12.06., 12.06.2026 | Buchungen an diesem Datum |
12.06.–17.06. | Buchungen in diesem Zeitraum |
Das Dropdown-Menü zeigt Treffer in Gruppen (Parzellen, Gäste, Buchungen, Datum) mit bis zu 5 Vorschlägen je Gruppe.
Suchmodus:
| Eingabe | Ergebnis |
|---|---|
| Vorschlag aus der Liste auswählen (Klick, ↓+Enter oder Hover+Enter) | Exakter Match – „Anna Bauer" findet nicht „Hanna Bauer" |
| Enter drücken ohne Vorschlag auszuwählen | Frei-Text-Suche – LIKE-Suche über mehrere Felder; zwei Wörter = AND-Semantik |
💡 Tipp: Wähle einen Vorschlag für präzise Treffer. Drücke Enter direkt (ohne Vorschlag-Auswahl), um mit einem Suchbegriff zu filtern – auch wenn das Vorschlagsmenü offen ist.
Tastatur-Navigation:
- ↑ / ↓ – Vorschläge durchblättern
- Enter – Vorschlag übernehmen (exakt) oder Frei-Text-Chip setzen (ohne Auswahl)
- Esc – Eingabe leeren (zweiter Druck: alle aktiven Filter entfernen)
- Backspace (bei leerem Feld) – letzten Chip entfernen
Platzhalter: Wenn das Feld leer und nicht aktiv ist, rotiert ein Hinweis alle 3 Sekunden durch typische Eingabe-Beispiele.
Shortcut-Hinweis im Suchfeld: Solange das Suchfeld leer, unfokussiert und ohne aktive Chips ist, zeigt es rechts ein dezentes Keycap-Badge mit den verfügbaren Tastaturkürzeln. Auf Mobilgeräten wird das Badge ausgeblendet, da dort keine Tastatur vorhanden ist.
Chips – aktive Suchfilter
Ausgewählte Treffer erscheinen als Chips direkt im Eingabefeld. Jeder Chip zeigt einen aktiven Filter an (z.B. eine Parzelle, einen Gastnamen oder ein Datum).
- Klicke auf das × an einem Chip, um diesen Filter zu entfernen.
- Der Filter-zurücksetzen-Button (RotateCcw-Icon) rechts neben den Dropdowns entfernt alle Chips und setzt Status- und Zahlungsfilter zurück. Er ist stumm und deaktiviert, wenn keine Filter aktiv sind.
💡 Tipp: Wähle in der Omnibox eine Buchungsnummer – der Eintrag wird als Chip hinzugefügt und das Buchungs-Detail-Sheet öffnet sich sofort.
Suche leeren und Ergebnisse neu laden
Sobald du etwas eingetippt hast oder mindestens ein Chip gesetzt ist, erscheinen rechts im Suchfeld zwei kleine Symbole:

| Symbol | Was es tut |
|---|---|
| × | Leert die Suche komplett – getippter Text und alle Chips. Die Dropdown-Filter (Status, Zahlung, Zeitraum) bleiben erhalten. |
| ↻ | Lädt die Trefferliste zur aktuellen Suche neu. Die Suche selbst bleibt unverändert. Während des Ladens dreht sich das Symbol. |
Das × ist der schnelle Weg zurück zur vollen Liste, ohne jeden Chip einzeln wegklicken zu müssen. Das ↻ hilft dir, wenn im Hintergrund etwas passiert ist – zum Beispiel wenn eine Kollegin gerade eine Buchung bestätigt hat und du den neuen Stand sehen willst.
💡 Tipp: Willst du zusätzlich Status-, Zahlungs- und Zeitraum-Filter zurücksetzen, nutze den Filter-zurücksetzen-Button rechts neben den Dropdowns.
Dieselben beiden Symbole findest du auch im Suchfeld der Rechnungsliste – sie verhalten sich dort genauso.
Zeitraum-Filter
Das Zeitraum-Dropdown bietet folgende Optionen:
| Option | Bedeutung |
|---|---|
| Alle | Kein Zeitraum-Filter |
| Gestern | Buchungen mit Anreise gestern |
| Heute | Buchungen mit Anreise heute |
| Morgen | Buchungen mit Anreise morgen |
| Dieses Wochenende (TT.MM.) | Fr–So des laufenden oder kommenden Wochenendes |
| Nächstes Wochenende (TT.MM.) | Fr–So eine Woche später |
| Nächste 7 Tage | Heute + 6 weitere Tage |
| Diese Woche | Laufende Kalenderwoche |
| Nächste 14 Tage | Heute + 13 weitere Tage |
| Dieser Monat | Laufender Kalendermonat |
| Benutzerdefiniert… | Freier Zeitraum – öffnet einen 2-Monats-Kalender |
💡 Tipp: Die Wochenend-Optionen zeigen das konkrete Datum im Label (z.B. „Dieses Wochenende (02.05.)") – so siehst du sofort, welchen Zeitraum du auswählst.
Bei Benutzerdefiniert… erscheint ein Kalender direkt im Dropdown. Wähle zuerst das Startdatum, dann das Enddatum – danach schließt sich das Dropdown automatisch. Der Trigger-Button zeigt den gewählten Zeitraum an (z.B. „12.06. – 17.06.2026").
Gegenseitiger Reset: Wenn du in der Omnibox ein Datum als Chip hinzufügst, wird der Zeitraum-Filter automatisch auf „Alle" zurückgesetzt – und umgekehrt.
Filter-Persistenz (im Modus „Alle Kontexte")
Filter, die du im Alle-Kontexte-Modus setzt (kein Kontextschalter aktiv), werden automatisch in deinem Browser gespeichert:
- Beim nächsten Besuch der Buchungsseite sind die Filter direkt wieder aktiv
- Wenn du kurz in einen Kontext (z.B. Anreisen) wechselst und zurückkehrst, sind die gespeicherten Filter wiederhergestellt
- Der „Filter zurücksetzen"-Button (RotateCcw-Icon) entfernt auch den gespeicherten Zustand vollständig
Hinweis: Die Persistenz gilt nur im Alle-Kontexte-Modus. Im Kontext-Modus (Anfragen, Anreisen usw.) gelten keine gespeicherten Filter.
Status- und Zahlungs-Filter
- Status-Filter – z.B. nur Bestätigte oder Eingecheckte anzeigen
- Zahlungsstatus – Bezahlt / Teilbezahlt / Unbezahlt
Bookmarkbare Filter-Links
Alle aktiven Filter werden in der URL gespeichert. Du kannst die aktuelle Ansicht als Link teilen oder als Lesezeichen ablegen – der Empfänger sieht exakt dieselbe Filtereinstellung.
Hinweis: Suchfeld und Filter sind ausgeblendet, wenn ein Kontext aktiv ist (Anfragen, Anreisen, Abreisen, Kassieren, Überfällig). Wechsle auf Alle, um wieder suchen und filtern zu können.
💡 Tipp: Filter gelten nur in der Listenansicht. Kalender und Belegungsplan zeigen immer den gesamten Buchungsbestand – unabhängig vom aktuellen Filterstand der Liste.
Buchungsstatus
| Status | Bedeutung |
|---|---|
| Offen | Neue Buchungsanfrage, wartet auf deine Bestätigung |
| Bestätigt | Du hast die Buchung bestätigt |
| Eingecheckt | Gast ist angereist |
| Ausgecheckt | Gast ist abgereist |
| Storniert | Buchung wurde storniert |
| Abgelehnt | Du hast die Buchungsanfrage abgelehnt |
💡 Tipp: Der angezeigte Gesamtbetrag folgt dem Buchungsstatus. Bei Offen und Abgelehnt siehst du einen vorläufigen Snapshot-Betrag mit
*-Marker (Tooltip: „Vorläufiger Wert aus der Buchungsanfrage"). Bei bestätigten Buchungen ohne Rechnung (z.B. nach dem Löschen einer Entwurfsrechnung) erscheint ebenfalls der Snapshot-Betrag mit*-Marker und dem Tooltip: „Vorläufiger Preis aus dem Buchungs-Snapshot. Es wurde noch keine Rechnung erstellt – der endgültige Betrag kann sich beim Anlegen der Rechnung noch ändern." Ab Bestätigt mit Rechnung gilt die Summe der Rechnungen als endgültiger Betrag – der*verschwindet. Stornierte Buchungen zeigen 0 oder den Erstattungsbetrag. Bei stornierten Buchungen mit offener Erstattung erscheint der Betrag in amber.
Zahlungs-Status (Bezahl-Pill)
Zusätzlich zum Buchungsstatus zeigt eine Zahlungs-Status-Pill den Zahlstand der Buchung – an allen Stellen identisch: in der Buchungsliste, im Buchungs-Sheet-Kopf und im Kopf der Buchungs-Detailseite.
| Pill | Bedeutung |
|---|---|
| Bezahlt | Vollständig bezahlt |
| Teilweise bezahlt | Teilbetrag eingegangen |
| Offen | Noch kein (vollständiger) Zahlungseingang |
| Erstattung fällig (amber) | Es ist mehr eingegangen als geschuldet – ein Betrag ist an den Gast zu erstatten |
| Storniert (grau) | Storniert, ohne offene Erstattung (nichts zu erstatten oder bereits ausgezahlt) |
Die Pill spiegelt den Storno-/Erstattungs-Zustand korrekt wider:
- Eine stornierte Buchung mit noch offener Erstattung zeigt amber „Erstattung fällig" statt „Bezahlt".
- Auch eine noch aktive Buchung kann „Erstattung fällig" zeigen – nämlich bei einer Überzahlung (mehr eingezahlt als geschuldet, z.B. nachdem eine Finalrechnung storniert wurde und ein Betrag offen bleibt). Tooltip auf der Detailseite: „Überzahlung – ein zu viel gezahlter Betrag ist an den Gast zu erstatten."
- Ist nach einem Storno nichts mehr zu erstatten (oder bereits ausgezahlt), zeigt die Pill grau „Storniert".
- Das gilt auch, wenn zur Buchung nie eine Rechnung existiert hat – etwa bei einem Storno kurz nach der Bestätigung. Die Pill zeigt dann ebenfalls grau „Storniert" und nicht mehr „Offen" (siehe Buchung stornieren).
Hintergrund: Die Pill wird aus derselben einheitlichen Bilanz-Berechnung gespeist wie die Summen im Rechnungen-Tab – Status und Beträge sind überall konsistent (siehe Rechnungen → „Summary-Strip").
Buchung manuell anlegen
Du kannst Buchungen direkt für Gäste anlegen – ideal für Telefon- und Walk-in-Reservierungen an der Rezeption.
Einstieg: Klicke auf das + Plus-Icon oben rechts in der Buchungsliste. Der Dialog „Neue Buchung" öffnet sich mittig über der Seite. Unter dem Titel steht der Hinweis, dass du hier eine Buchung im Namen eines Gastes anlegst und die Preise vom System berechnet werden.
Hinweis: Der Button ist nur sichtbar, wenn du die Berechtigung
bookings.createhast. Alternativ kannst du im Belegungsplan eine Tageszelle anklicken, um den Dialog mit Parzelle und Zeitraum vorausgefüllt zu öffnen (siehe Abschnitt Plan).
Aufbau des Dialogs
Der Dialog ist 1240 px breit und in fünf Bereiche geteilt:
| Bereich | Inhalt |
|---|---|
| Kopfzone | Anreise · Abreise · Parzelle – nebeneinander, darunter jeweils die Schnellwahl. Ist die Parzelle belegt, kommt hier die Überbuchungs-Zeile dazu – auch dann, wenn sie erst beim Absenden belegt ist (siehe Overbooking). |
| Spalte 1: Gast | Vorname/Nachname, E-Mail, Telefon, Straße & Nr., PLZ/Ort |
| Spalte 2: Optionen | Zusatzleistungen, darunter fest die Umschalter Tarif und Status |
| Spalte 3: Gästekategorien | Personen, Tiere und Vehikel |
| Fußzeile | Preiszeile · „Abbrechen" · „Anlegen + weiteren erstellen" · „Buchung anlegen" |
Kopfzone und Fußzeile stehen immer – nur die drei Spalten scrollen, und zwar jede für sich. Der Dialog wird dadurch nie höher als dein Fenster: Preis und Knöpfe rutschen nicht unter die Kante. Auf niedrigen Fenstern gibt der Dialog nach und die Spalten werden kürzer.
Der Cursor steht beim Öffnen im Feld „Vorname". Schließt du den Dialog, landet er wieder auf dem Knopf, mit dem du ihn geöffnet hast – du musst dich nicht neu durchtabben. Auch wenn das Anlegen scheitert (z. B. weil der Server ablehnt), springt der Cursor zurück auf den auslösenden Knopf.
Gastdaten erfassen
Trage Vorname, Nachname und mindestens einen Kontaktweg ein: E-Mail-Adresse oder Telefonnummer. Vorname und Nachname sind mit einem * als Pflichtfelder markiert. Die Felder stehen untereinander: Vorname/Nachname → E-Mail → Telefon → Straße & Nr. → PLZ/Ort.
Die Felder suchen selbst mit – siehe Bekannte Gäste finden. Über der Spalte steht dafür der Hinweis „Suche: Name, E-Mail, Telefon".
E-Mail oder Telefon – eines von beiden genügt. Bei Telefonbuchungen hast du oft keine Adresse. Trage dann einfach nur die Telefonnummer ein. Fehlen beide, erscheint der Hinweis „Bitte gib eine E-Mail-Adresse oder eine Telefonnummer an, damit der Gast erreichbar ist."
Erfinde keine E-Mail-Adressen. Das war früher nötig, weil die Adresse Pflicht war – mit unangenehmer Folge: Die erste Mail an eine erfundene Adresse kommt hart zurück, und danach lehnt der Versanddienstleister jeden weiteren Versand an sie ab. Das passiert unbemerkt, und der Gast bekommt weder Bestätigung noch Rechnung.
Ohne E-Mail-Adresse gibt es keine Mails. Bestätigung, Rechnung und Erinnerungen entfallen dann – du informierst den Gast selbst.
In der Buchungsstrecke gilt eine andere Regel: Dort sind E-Mail und Telefonnummer Pflicht (siehe Online-Buchungsprozess). Die Ausnahme hier gilt nur für Buchungen, die du selbst anlegst.
Bekannte Gäste finden
Ein eigenes Feld „Gast suchen" gibt es nicht mehr. Gesucht wird beim Tippen in den Gastfeldern selbst – du trägst den Wert dort ein, wo er hingehört, und bekommst darunter Vorschläge bekannter Gäste aus früheren Buchungen.
| Feld | Vorschläge erscheinen ab |
|---|---|
| 2 Zeichen | |
| Telefon | 2 Zeichen |
| Vorname + Nachname | erst wenn beide je 2 Zeichen tragen |
Der Vorname allein löst bewusst nichts aus – er trifft sonst die halbe Gästeliste. Gesucht wird immer nur in dem Feld, in dem der Cursor steht. Eine Telefonnummer findet den Gast auch in anderer Schreibweise: 0170 1234567 findet +49 170 1234567 und umgekehrt.
Was eine Trefferzeile zeigt:
- Name (fett) und die Zahl der bisherigen Buchungen
- E-Mail und Telefonnummer
- Anschrift (Straße, PLZ, Ort) und die letzte Buchung – „zuletzt 07.2026" bzw. „ab 08.2027", wenn die jüngste Buchung eine bevorstehende Anreise ist
Fehlen einem Gast alle Kontaktdaten oder die ganze Anschrift, steht das ausdrücklich da („kein Kontakt hinterlegt", „keine Anschrift hinterlegt"). Fehlt nur eines von zwei Feldern, bleibt der Platz leer.
Was „3 Buchungen" zählt: Nur Buchungen, die stattgefunden haben oder noch anstehen – stornierte und abgelehnte zählen nicht mit. Ein Gast, der bisher nur storniert hat, steht deshalb mit „0 Buchungen" da. Bei sehr vielen Buchungen ist die Zahl eine Untergrenze.
Übernehmen: Ein Klick auf die Zeile – oder Enter auf dem mit ↓/↑ hervorgehobenen Treffer – füllt alle Gastfelder auf einmal.
Ohne Pfeiltaste ist nichts vorausgewählt. Ein Enter am Ende einer getippten E-Mail-Adresse übernimmt bewusst nichts – sonst stünden plötzlich die Daten eines fremden Gastes im Formular.
Über der Liste steht die Zahl der Treffer („2 bekannte Gäste"). Passen nicht alle in den Kasten, steht dort zusätzlich „· nicht alle sichtbar", und am unteren Rand liegt ein weicher Verlauf. Mit ↑/↓ kommst du auch an die unsichtbaren. Der Server liefert bis zu fünf Vorschläge; sichtbar sind unter dem Namensfeld vier, unter der E-Mail drei, unter dem Telefon zwei.
Die Liste schwebt unter dem aktiven Feld über den Feldern darunter – sie verschiebt nichts. Sie deckt dabei die direkt darunterliegenden Felder ab (vom E-Mail-Feld aus Telefon und Straße); PLZ und Ort bleiben immer frei. Ein Klick daneben schließt sie, ohne einen Vorschlag zu übernehmen – dein Getipptes bleibt stehen. Eine so geschlossene Liste bleibt zu, bis du weitertippst. Vorschläge erscheinen immer nur unter dem Feld, in dem der Cursor gerade steht.
Der Zähler über der Spalte sagt, mit wem du es zu tun hast: Vor dem ersten Zeichen steht dort „Suche: Name, E-Mail, Telefon", danach „neuer Gast" bzw. „bekannter Gast", sobald du einen Vorschlag übernommen hast. Änderst du Name, E-Mail oder Telefon anschließend von Hand, springt er zurück auf „neuer Gast".
Scheitert die Suche, sagt der Dialog das – direkt an dem Feld, in dem du tippst: „Gastvorschläge konnten nicht geladen werden. Der Gast kann trotzdem von Hand eingetragen werden." Früher kam in diesem Fall eine leere Liste, und ein Stammgast sah aus wie ein unbekannter Gast.
Parzelle und Zeitraum
Wähle die gewünschte Parzelle und lege Anreise- und Abreisedatum fest. Die drei Felder stehen in der Kopfzone nebeneinander; unter der Parzelle steht nach der Auswahl die Zeile „4 Nächte · Premium-Seeplatz".
- Durchsuchbare Parzellen-Auswahl: Das Parzellen-Feld ist eine Such-Auswahl – tippe einen Teil des Namens, um die Liste zu filtern, statt durch ein langes Dropdown zu blättern. Die aufgeklappte Liste lässt sich mit dem Mausrad (und mit zwei Fingern am Laptop) scrollen.
- Datum-Schnellwahl: Unter den Datumsfeldern liegen Schnellwahl-Chips. Für die Anreise: Heute / Morgen / Übermorgen und der kommende Freitag mit Datum und Wochentag („14.08. Freitag"). Fällt heute selbst auf einen Freitag, ist der Freitag der Folgewoche gemeint. Für die Abreise: +1 … +7 (Anzahl Nächte ab der Anreise). Jeder Chip hat einen Tooltip mit dem konkreten Datum.
- Ein Tag vor oder zurück: Rechts neben den Chips stehen je ein − und ein +. Sie verschieben nur das jeweilige Datum um einen Tag – die Zahl der Nächte ändert sich also mit. Damit kommst du über die Chips hinaus, ohne ins Datumsfeld zu wechseln.
- Der Chip, der zum eingetragenen Datum passt, ist grün. Bei der Anreise also „Heute", wenn heute angereist wird; bei der Abreise „+3", wenn die Abreise drei Nächte später liegt. Passt keiner, ist keiner grün. Die übrigen Chips treten zurück, solange die Maus nicht über der Zeile steht.
Du kannst auch direkt im Belegungsplan auf eine Tageszelle klicken – dann sind Parzelle und Zeitraum bereits vorausgefüllt (Details: Zeitraum per Klick auswählen).
Belegung: Personen, Tiere und Vehikel
Stelle in der Spalte Gästekategorien ein, wie viele Personen (je Gästekategorie), Tiere und Vehikel die Buchung umfasst. Neben jeder Kategorie wird das in den Stammdaten konfigurierte Icon (Kategorie- bzw. Vehikeltyp-Icon) angezeigt; die Gruppen-Überschriften Personen, Tiere und Vehikel laufen beim Scrollen mit. Über der Spalte steht der Zähler „2 von 9 belegt".
Zwei Eingabe-Layouts (umschaltbar): In der Werkzeugzeile über den Kategorien liegt das Raster-Symbol – es schaltet das Ein-Klick-Layout um. Deine Wahl wird pro Browser gemerkt und gilt für beide Buchungsdialoge – du musst sie nicht jedes Mal neu einstellen.
| Layout | Eingabe |
|---|---|
| Aus (Standard) | Schrittwahl −/Zahl/+ |
| An | eine zusammenhängende Knopfreihe 0–9 plus ein Eingabefeld daneben für eigene Zahlen (bis 99). Große Gruppen tippst du also direkt ins Feld statt vielfach zu klicken. |
Farben im Ein-Klick-Layout: Grün heißt „gewählt" und gilt ab 1. Die 0 ist grau hinterlegt – sie ist die gesetzte, aber leere Wahl. Tippst du eine Zahl über 9 ein, wird das Feld grün. Es ist immer genau ein Element markiert. Zeilen ohne Belegung erkennst du an den zurückgenommenen Zahlen; der Kategoriename bleibt gut lesbar.
Suchen und filtern: Über den Kategorien stehen ein Suchfeld („Kategorie suchen") und ein Trichter („Nur belegte anzeigen"). Findet die Suche nichts, steht dort „Keine Kategorie zu ‚xyz'." mit dem Knopf „Filter zurücksetzen" – nie eine kommentarlos leere Liste. Hat dein Platz keine Vehikeltypen angelegt, steht unter der Überschrift Vehikel der Satz „Keine Vehikeltypen konfiguriert."
Inklusiv-Anzeige: Nach Auswahl der Parzelle erscheint neben jeder Personen-, Tier- und Vehikel-Kategorie ein kleines Badge „X inkl." – es zeigt, wie viele der gewählten Einheiten bereits im Parzellen-Grundpreis enthalten (kostenfrei) sind.
Kapazitäts- und Slot-Anzeige (nur darstellend): Nach Auswahl der Parzelle zeigt der Dialog die Kapazitäts-Limits an. Die Berechnung selbst wird dadurch nicht verändert – Overbooking bleibt möglich, wird nur sichtbar markiert.
- Neben den Überschriften Personen, Tiere und Vehikel steht „verbraucht / max" der aktuellen Auswahl. Personen und Tiere zählen als Anzahl, Vehikel als Slots (Σ Anzahl × Slot-Gewichtung des Vehikeltyps). Bei Überschreitung wird der Wert orange.
- Übersteigt eine einzelne Kategorie ihr konfiguriertes Maximum, erscheint am Eintrag ein orangenes Warn-Dreieck mit „+N" (wie viele über dem Limit) samt Tooltip mit dem vollständigen Hinweis.
Hintergrund Slots: Eine Parzelle hat eine Gesamtzahl an Vehikel-Slots (z.B. 3); jeder Vehikeltyp hat eine Slot-Gewichtung (z.B. Wohnwagen 2, Zelt 1). Zusätzlich können Per-Typ-Maxima gelten (z.B. „max. 2 Zelte"). Beide werden im Dialog sichtbar.
Zusatzleistungen (Optionen)
Die Optionen erscheinen als auswählbare Cards – parzellen-abhängig: Nach Auswahl der Parzelle zeigt der Dialog nur die für diese Parzelle verfügbaren Optionen (aufgelöst über die Kaskade Option → Kategorie → Parzelle).
- Pflicht-Optionen sind vorausgewählt und gesperrt (nicht abwählbar) – sie werden ohnehin von der Preis-Engine angewandt. Du erkennst sie am „Pflicht"-Abzeichen und an einem geschlossenen Schloss an der Stelle, an der frei gewählte Optionen einen Haken tragen.
- Optionale Optionen (inkl. „Entscheidungs"-Optionen) sind toggelbare Cards: noch nicht gewählt zeigt ein Plus, gewählt einen Haken. Jede Card zeigt Preis und Abrechnungsart (z.B. „Pro Nacht").
- Über der Spalte steht der Zähler „2 von 3 gewählt". Bei langen Listen erscheint darüber eine Werkzeugzeile mit Suchfeld und Trichter („Nur gewählte anzeigen"); findet die Suche nichts, steht dort „Keine Option zu ‚xyz'." mit dem Knopf „Filter zurücksetzen". Bei kurzen Listen erscheint die Werkzeugzeile absichtlich nicht – sie kostet Platz, den die Optionen brauchen.
- Solange keine Parzelle gewählt ist, erscheint der Hinweis „Parzelle wählen, um verfügbare Optionen zu sehen." Hat eine Parzelle keine Optionen, erscheint ein „Keine Optionen"-Hinweis.
Menge einstellen
Bei Optionen, für die du „Menge frei wählbar" eingeschaltet hast, klappt nach dem Anhaken unter der Card eine Reglerzeile auf – dieselbe Wahl, die auch der Gast in der Buchungsstrecke hat:
☑ Strom 3,50 €
Pro Vehikel/Nacht
Vehikel [−] 3 [+]Die Obergrenze steht hier nicht als Text. Anders als in der Gast-Ansicht zeigt der Dialog keine „max."-Angabe – der +-Knopf wird einfach grau, sobald die Grenze erreicht ist. Dasselbe gilt für − an der Untergrenze.
- Voreingestellt ist der Wert, der auch ohne die Mengenwahl herauskäme: bei Personen und Vehikeln das volle Vorhandene, bei „Pro Aufenthalt" und „Pauschal" 1. Wer nichts anfasst, rechnet wie bisher ab.
- Die Obergrenze folgt der Belegung des Dialogs. Nimmst du im Dialog ein Vehikel heraus, zieht der Regler nach.
- Bei Pro Person/Nacht und Pro Vehikel/Nacht können zwei Regler erscheinen – Stückzahl und Nächte –, je nachdem, was du in der Option freigegeben hast.
- Beim Bearbeiten einer bestehenden Buchung steht der Regler auf der Menge, die tatsächlich gebucht wurde; die Preise der Buchung bleiben davon unberührt, bis du speicherst.
- Fallen Ober- und Untergrenze zusammen, bleibt die Zeile ganz weg – bei nur einem Vehikel gibt es an einer Option „Pro Vehikel/Nacht" nichts zu wählen.
- Optionen ohne den Schalter sehen aus und verhalten sich wie bisher: kein Regler, gleicher Preis.
Tarif wählen (nur wenn der nicht erstattungsfähige Tarif aktiv ist)
Unter den Zusatzleistungen steht ein Umschalter, der immer die aktive Stellung zeigt – Name, Erklärung und Farbe. Ein Klick (oder Leertaste/Enter) wechselt zur anderen Stellung. Es ist dieselbe Wahl, die auch der Gast in der Buchungsstrecke hat:
| Stellung | Farbe | Bedeutung |
|---|---|---|
| Flexibel (Standard) | grün | „Der Gast kann selbst stornieren." |
| Unflexibel | bernstein | „Nicht erstattungsfähig: Rabatt gegen Storno-Verzicht; nur du kannst stornieren." |
Warum „Unflexibel" und nicht „Nicht erstattungsfähig"? Im Umschalter muss die Beschriftung kurz sein. Der Fachbegriff ist nicht verschwunden: Er steht in der Erklärung, die du über das Info-Zeichen neben der Überschrift „TARIF" bekommst – und überall sonst (Rechnungen, Einstellungen, Buchungsstrecke) heißt der Tarif weiterhin „nicht erstattungsfähig".
Der Rabatt kommt aus deiner Stornierungsrichtlinie und wirkt auf den Gesamtpreis. Die Preiszeile in der Fußzeile zeigt den Effekt sofort.
Hinweis: Der Umschalter erscheint nur, wenn der Tarif unter Tarife & Regeln → Stornierungsrichtlinie aktiviert ist. Ist er abgeschaltet, legst du ausschließlich flexible Buchungen an – der Status nimmt dann die volle Breite ein.
Status wählen
Neben dem Tarif steht der Status als gleich hoher Umschalter – er zeigt die aktive Stellung mit Titel, Folge und Farbe:
| Stellung | Farbe | Bedeutung |
|---|---|---|
| Anfrage – „Keine Rechnung." | bernstein | Die Buchung wird als offene Anfrage angelegt – du kannst sie anschließend manuell bestätigen. |
| Bestätigt – „Rechnung wird angelegt." | grün | Die Buchung wird sofort bestätigt; ein Folio und ein Rechnungsentwurf werden automatisch angelegt. |
Die Erklärsätze stehen im Tooltip. Bei Tarif und Status findest du sie über das kleine Info-Zeichen neben der Überschrift. So bleibt der Kasten beim Umschalten gleich hoch.
Overbooking
Ist die gewählte Parzelle im angefragten Zeitraum bereits belegt, erscheint direkt unter dem Zeitraum eine Overbooking-Zeile: Warnung „Diese Parzelle ist im gewählten Zeitraum bereits belegt." · Häkchen · Grundfeld. Die Buchung kann trotzdem angelegt werden:
- Setze das Häkchen „Trotzdem buchen (Overbooking)".
- Gib optional einen Grund ein (z.B. „Stammgast, zweites Zelt").
- Der Grund wird im Buchungsjournal protokolliert.
Belegt, während der Dialog offen war
Die Zeile kann auch erst beim Absenden erscheinen. Das passiert, wenn ein Gast die Parzelle online bucht, während du den Dialog noch offen hast. Beim Klick auf „Buchung anlegen" prüft der Server die Belegung noch einmal. Ist die Parzelle inzwischen belegt, legt der Desk nichts an. Stattdessen steht unter dem Zeitraum die Overbooking-Zeile mit einem eigenen Satz, der die belegende Buchung nennt:
„Seit dem Angebot wurde die Parzelle belegt – durch BK-2026-00087 (08.–11.10.). Du kannst trotzdem buchen oder abbrechen."

Eine Fehlermeldung gibt es dabei nicht – der Desk fragt dich nur. Du hast zwei Wege:
- Trotzdem buchen: Setze das Häkchen „Trotzdem buchen (Overbooking)", gib optional einen Grund ein und klicke erneut auf „Buchung anlegen". Bis das Häkchen gesetzt ist, bleibt der Knopf gesperrt. Im Buchungsjournal steht danach „Bewusstes Overbooking — Parzelle war im Zeitraum belegt." – mit deinem Grund dahinter, wenn du einen eingegeben hast.
- Abbrechen: Schließe den Dialog. Es wird nichts angelegt.
Der Preis wird dabei neu berechnet. Wählst du stattdessen eine andere Parzelle oder einen anderen Zeitraum, verschwindet der Satz, und es zählt wieder die normale Belegungsprüfung.
Live-Preisvorschau mit Aufstellung
Der Preis wird serverseitig berechnet und laufend aktualisiert – du gibst keine Preise manuell ein (Single Source of Truth, identisch zur Gäste-Buchungsstrecke). Er steht in der Fußzeile neben den Knöpfen und rutscht nie unter die Fensterkante.
Beim Anlegen heißt die Zeile „Gesamtpreis" und trägt einen neutralen Chip mit der Zahl der Nächte („4 Nächte"). Ein Klick auf die Zeile öffnet die Preisaufstellung als Fenster über dem Dialog – der Dialog bleibt dabei genau so hoch wie vorher. Die Aufstellung zeigt:
- Parzellen-Grundpreis (Nächte × Preis/Nacht)
- Personen-, Tier- und Vehikel-Kategorien – jeweils mit „X inklusive" und dem kostenpflichtigen Anteil
- Zusatzleistungen (Menge × Einzelpreis)
- Rabattzeile „Rabatt nicht erstattungsfähig (X %)" – nur bei diesem Tarif
- Enthaltene Steuerzeilen („inkl.
<Steuersatz>") - Gesamtbetrag
Entsteht eine Menge aus zwei Faktoren, steht das da. Eine Abgabe pro Person und Nacht erscheint als „4 (2 Pers. × 2 Nächte) × 2,50 €" – du musst nicht selbst nachrechnen, woher die 4 kommt. Die Zeile darunter („2 × Erwachsener") bleibt: Die Klammer sagt, wie viele, die Zeile darunter, welche. Posten mit nur einem Faktor („2 Nächte × 30,00 €") und Pauschalen sind unverändert. Bei Buchungen aus der Zeit vor dieser Änderung kann die Aufschlüsselung fehlen – dann steht dort weiterhin nur die Menge.
Liegt noch kein Preis vor (Parzelle oder Zeitraum unvollständig), steht in der Zeile ein —, und sie lässt sich nicht anklicken. Scheitert die Berechnung, steht der Grund in Rot direkt unter der Zeile – zum Beispiel „Für diesen Zeitraum ist kein Grundpreis hinterlegt." Früher stand dort kommentarlos nur ein Strich, und man konnte nicht unterscheiden, ob der Preis noch lädt oder der Server abgelehnt hat.
Buchung anlegen
Klicke auf „Buchung anlegen" oder drücke Strg+Enter / ⌘+Enter, um die Buchung zu speichern.
Mehrere Buchungen hintereinander erfassen: Daneben liegt der Knopf „Anlegen + weiteren erstellen" (Strg+Umschalt+Enter / ⌘+Umschalt+Enter). Die Buchung wird gespeichert, der Dialog bleibt mit einem leeren Formular offen – und der Zeitraum bleibt stehen. Genau das brauchst du bei Gruppen-Anreisen, bei denen mehrere Parteien für dieselben Nächte einchecken.
Was übernommen wird: nur der Zeitraum. Gastdaten, Parzelle, Belegung und Optionen starten leer, Tarif und Status wieder auf dem Standardwert – sonst schleppst du eine Einstellung unbemerkt in die nächste Buchung.
Hinweis: Die Buchungsnummer wird automatisch vergeben. Das Format (z.B.
BK-2026-00042) ist in den Buchungseinstellungen → Buchungsnummern konfigurierbar.
Hinweis zu Preisen: Alle Preise werden beim Anlegen eingefroren. Spätere Preisänderungen wirken sich nicht auf bestehende Buchungen aus.
Tastatur in beiden Buchungsdialogen
Die folgenden Regeln gelten in „Neue Buchung" und „Buchung bearbeiten":
| Taste | Wirkung |
|---|---|
| Escape im Eingabefeld | nimmt den Cursor aus dem Feld – der eingegebene Wert bleibt stehen. Erst ein zweites Escape schließt den Dialog. |
| Escape bei offener Vorschlagsliste | schließt zuerst nur die Liste; Suchbegriff und Cursor bleiben im Feld. Danach gelten die Stufen oben. |
| ↓ / ↑ in der Vorschlagsliste | wandern durch die Treffer (am Ende von vorn) |
| Enter in der Vorschlagsliste | übernimmt den hervorgehobenen Treffer – ohne Pfeiltaste ist nichts vorausgewählt |
| Strg/⌘ + Enter | speichert bzw. legt an |
| Strg/⌘ + Umschalt + Enter | „Anlegen + weiteren erstellen" (nur beim Anlegen) |
Warum Escape nicht sofort schließt: Ein reflexartiges Escape aus einem Feld heraus hat früher den ganzen Dialog verworfen. Zum Leeren eines Feldes gibt es das Löschen-X, nicht Escape. Außerhalb der beiden Buchungsdialoge bleibt es beim gewohnten „Escape schließt".
Eigenart der Datumsfelder: Wie oft du Escape brauchst, hängt davon ab, wie du ins Feld gekommen bist. Per Mausklick öffnet der Browser seinen eigenen Kalender – das erste Escape schließt nur diesen. Per Tabulator gibt es keinen Kalender, und die Regel greift sofort.
Escape wirkt immer auf das Feld, in dem der Cursor steht: Steht eine Vorschlagsliste offen, der Cursor aber in einem anderen Feld, verlässt Escape dieses Feld – die Liste bleibt.
Steht die Rückfrage „Ungespeicherte Änderungen" offen, ist Strg/⌘ + Enter stumm. Die Rückfrage wird ausschließlich mit ihren eigenen Knöpfen beantwortet (oder mit Escape = Abbrechen); früher speicherte das Kürzel an ihr vorbei. Mehr dazu unter Tastenkürzel.
Auf dem Smartphone
Auf schmalen Bildschirmen (unter 768 px) stehen die drei Spalten untereinander, und der Dialog scrollt als Ganzes – nicht mehr jede Spalte für sich. Such- und Filterzeilen der Spalten („Kategorie suchen", Trichter, Raster-Symbol) gibt es dort nicht; gefiltert wird nur am größeren Bildschirm. Alle Angaben bleiben erreichbar. Auch die Overbooking-Zeile stapelt sich: Warnung, Häkchen und Grundfeld stehen untereinander.


Quick-Access: Buchungsdetails im Sheet
Klickst du auf eine Zeile in der Buchungsliste, öffnet sich ein Sheet von der rechten Seite. Es zeigt die wichtigsten Informationen auf einen Blick.
💡 Tipp: Die geöffnete Buchung steht auch in der Adresszeile deines Browsers (
?openBooking=…). Kopiere den Link, um genau diese Buchung an eine Kollegin weiterzugeben oder als Lesezeichen zu speichern. Wer den Link öffnet, landet direkt in der Liste – mit demselben Sheet und der markierten Zeile. Schließt du das Sheet, verschwindet der Zusatz wieder aus der Adresszeile.
Kopfzeile
Buchungsnummer, Gastname, E-Mail (mit Senden-Icon direkt daneben – siehe unten), Telefon und Status-Badges. Hat der Gast in einer anderen Sprache gebucht, erscheint direkt am Namen ein kleines Sprach-Badge (z.B. „🇬🇧 EN") – ein Tooltip zeigt den vollständigen Sprachnamen.
Buchungen zum nicht erstattungsfähigen Tarif tragen zusätzlich ein rotes Badge „Nicht erstattungsfähig" – im Sheet wie auf der Buchungsdetailseite. Es erinnert dich daran, dass der Gast diese Buchung nicht selbst stornieren kann und beim Storno der volle Betrag als Gebühr vorgeschlagen wird.
Key Facts (2×3-Raster)
| Feld | Anmerkung |
|---|---|
| Parzelle | Farbiger Bullet in der Kategoriefarbe + Parzellenname |
| Aufenthalt | Anreise- und Abreisedatum + Anzahl Nächte |
| Personen | Gästekategorien mit Anzahl |
| Vehikel | Alle Vehikeltypen mit Anzahl (z.B. „1× Wohnmobil, 1× PKW") |
| Betrag | Gesamtpreis der Buchung in der Platz-Währung (z.B. € oder CHF). Bei offenen Anfragen (Status „Offen" / „Abgelehnt"): vorläufiger Snapshot-Betrag mit *-Marker. Bei bestätigten Buchungen ohne Rechnung: ebenfalls Snapshot-Betrag mit *-Marker. Sobald eine Rechnung existiert, zeigt die Spalte den aktuellen Rechnungsbetrag ohne *. |
| Erstellt | Datum und Uhrzeit der Buchungserstellung (z.B. 19.04., 14:32) |
Wenn die Buchung Tiere oder gebuchte Optionen enthält, erscheinen unterhalb der Key Facts zwei zusätzliche Blöcke:
- Tiere – Aufschlüsselung nach Kategorie (z.B. „1× Hund")
- Optionen & Zuschläge – alle gebuchten Extras mit Menge und Gesamtpreis (z.B. „4× Strom – 20,00 €"). Darunter erscheint klein die Mengen-Formel wie in der Buchungsstrecke (z.B. „3 Pers. × 4 Nächte × 1,00 €", bei Festpreisen „Pauschal") sowie – bei auf Gästekategorien eingeschränkten Optionen – die Personenkreis-Aufschlüsselung (z.B. „2 × Kleinkind, 1 × Jugendlicher").
Bemerkung vom Gast
Wenn der Gast beim Buchen eine Freitext-Bemerkung hinterlassen hat, erscheint sie hier – kursiv, mit linkem Border als Zitat-Stil. Dieser Bereich ist read-only und immer einmalig (genau der Text aus guest_notes). Ohne Gast-Bemerkung wird dieser Abschnitt ausgeblendet.
Interne Notizen
Deine eigenen Notizen zur Buchung – nur für dich und dein Team sichtbar, nicht für den Gast.
- Neueste Notiz erscheint oben, mit Autor und Zeitstempel
- Klicke auf + Notiz hinzufügen, um eine neue Notiz einzutragen
- Jede Notiz hat ein Archivieren-Icon (erscheint beim Hover). Ein Bestätigungsdialog schützt vor versehentlichem Archivieren.
Notiz archivieren: Die Notiz wird ausgeblendet, bleibt aber in der Datenbank erhalten. Archivierte Notizen können jederzeit über den Archiv-Schalter wieder eingeblendet und mit dem ArchiveRestore-Icon wiederhergestellt werden.
Hinweis: Nur Einträge vom Typ „Notiz" können archiviert werden. System-Events, Nachrichten und Zahlungs-Ereignisse lassen sich nicht entfernen – das schützt das Audit-Log.
Diskret-Modus
Standardmäßig sind interne Notizen ausgeblendet – du siehst stattdessen nur die Anzahl, z.B. 3 interne Notizen. Das schützt vertrauliche Vermerke, wenn du das Sheet am Empfangstresen öffnest oder deinen Bildschirm teilst und Gäste mitlesen könnten.
Notizen einblenden:
- Klicke auf das Auge-Icon links neben dem Plus-Icon in der Sektions-Headerbar (erscheint nur, wenn Notizen vorhanden sind)
- Oder drücke das Tastenkürzel Umschalt+H von überall in der App
Das Auge-Icon zeigt den aktuellen Zustand:
| Icon | Bedeutung |
|---|---|
| Geschlossenes Auge | Notizen ausgeblendet (Standard) |
| Offenes Auge | Notizen vollständig sichtbar |
Ein Tooltip erklärt die Aktion und das Tastenkürzel.
Hinweis: Die Einstellung gilt global für alle Buchungen und bleibt über Sitzungen erhalten (Browser-Speicher). Einmal eingeblendet bleiben Notizen sichtbar, bis du das Icon erneut klickst oder Umschalt+H drückst.
Hinweis: Das Tastenkürzel funktioniert nicht innerhalb von Eingabefeldern.
Letzte Aktivität
Ein reines Audit-Log: zeigt die letzten System-Events und Nachrichten (system, message_in, message_out) in chronologischer Reihenfolge (bis zu 4 Einträge). Manuelle Notizen tauchen hier nicht auf – die findest du im Abschnitt „Interne Notizen" darüber.
Falls noch kein Erstellungs-Event im Journal vorhanden ist, erscheint automatisch ein synthetischer Eintrag „Buchung erstellt." basierend auf dem Erstellungszeitpunkt der Buchung – so ist der Startpunkt immer nachvollziehbar.
Rechnungen
Das Quick-Sheet zeigt alle Rechnungen der Buchung als kompakte Zeilen (Nummer, Typ, Betrag, Status). Ein Klick auf eine Rechnungszeile öffnet die Buchungsdetail-Seite direkt im Rechnungen-Tab – die angeklickte Rechnung ist bereits aufgeklappt und im sichtbaren Bereich. Das Quick-Sheet schließt sich dabei.
💡 Tipp: Mit Strg- oder Cmd-Klick öffnest du die Rechnung in einem neuen Browser-Tab. Das Quick-Sheet bleibt im aktuellen Tab geöffnet – praktisch, um mehrere Rechnungen parallel anzusehen.
Hinweis: Rechnungen werden ausschließlich auf der Buchungsdetail-Seite bearbeitet. Ein gestapelter Rechnungs-Editor im Quick-Sheet existiert nicht mehr.
Zahlungen
Unterhalb der Buchungsdetails zeigt das Sheet alle bisher erfassten Zahlungen. Pro Zahlung siehst du:
- Zahlungsart-Icon (Bar, Karte, Überweisung oder Sonstige)
- Betrag – Zahlungseingänge in grün (
+), Erstattungen in amber (−) - Datum und Uhrzeit der Zahlung
- Notiz (falls angegeben)
- Löschen-Button (Papierkorb) – öffnet einen Bestätigungsdialog, bevor die Zahlung unwiderruflich gelöscht wird
Aktionsbuttons (unterer Rand)
- Check-in / Check-out (je nach aktuellem Status)
- Kassieren (Wallet-Icon, sky-blau) – erscheint, wenn noch ein offener Betrag vorhanden ist; öffnet den Zahlungsdialog
- Nachricht senden – öffnet den Dialog „Nachricht an Gast". Die Nachricht geht als E-Mail an den Gast, Anhänge gehen mit, und du findest sie danach im Tab Kommunikation wieder. Spricht der Gast eine andere Sprache, hast du dieselben zwei Sendewege wie dort – mit Vorschau vor dem Senden. Den Knopf siehst du nur mit dem Recht Nachrichten senden.
- Stornieren (roter Button) – erscheint nur bei Buchungen mit Status Bestätigt; öffnet den Storno-Bestätigungsdialog (mit optionalem Grund). Bei anderen Status ist der Button nicht sichtbar.
- Alle Details anzeigen → (öffnet die vollständige Detailseite)


💡 Tipp: Das Sheet eignet sich perfekt für den schnellen Check zwischendurch. Für das vollständige Journal, Zahlungshistorie und alle Details nutze "Alle Details anzeigen".
Buchung bestätigen
In allen drei Einstiegspunkten öffnet sich beim Bestätigen ein Dialog – du kannst optional eine persönliche Nachricht an den Gast mitgeben:
| Einstiegspunkt | Weg |
|---|---|
| Buchungsliste (empfohlen) | Kontext Anfragen wählen → in der Zeile auf ✓ Bestätigen klicken |
| Dashboard (Pending-Requests-Panel) | Direkt auf ✓ Bestätigen in der Anfragekarte klicken |
| Quick-Access Sheet | Buchung öffnen → Bestätigen im Footer klicken |
Im Dialog:
- Optional: Nachricht an den Gast eingeben (z.B. „Die Schranke öffnet ab 14 Uhr.")
- Auf Bestätigen klicken
Die Buchung wechselt in den Status Bestätigt. Der Gast erhält die Bestätigungsmail – enthält sie eine Nachricht, erscheint diese zwischen Begrüßung und Buchungsdetails.
💡 Tipp: Strg/⌘ + Enter löst aus dem Textfeld heraus den großen Knopf aus – du musst nicht zur Maus greifen.

Wenn der Gast eine andere Sprache spricht
Deine Nachricht wird nicht automatisch übersetzt. Du entscheidest bei jeder Bestätigung selbst – genauso wie beim Schreiben einer Nachricht.
Hat der Gast zum Beispiel auf Englisch gebucht und du schreibst eine Nachricht, dann:
- steht unter dem Textfeld: „Wird in die Gastsprache EN übersetzt. Du prüfst die Übersetzung vor dem Senden."
- ist der Knopf geteilt: Bestätigen und Bestätigen + Übersetzen. Welcher der große ist, bestimmt der Schalter „Nachrichten an Gäste automatisch übersetzen" in Sprache & Übersetzungen.
- öffnet Bestätigen + Übersetzen erst die Vorschau. Du liest die Übersetzung, änderst sie bei Bedarf und bestätigst dann.
Der Gast bekommt die Übersetzung. Darunter stehen ein Hinweis, dass mit KI übersetzt wurde, und dein Originaltext.

⚠️ Wichtig: Steht auf dem großen Knopf „Bestätigen + Übersetzen", öffnet Strg/⌘ + Enter die Vorschau. Es geht nichts ungeprüft raus.
💡 Ohne Nachricht gibt es nichts zu übersetzen. Dann siehst du nur Bestätigen. Dasselbe gilt, wenn der Gast die Sprache deines Platzes spricht.
Das gilt auch für Gruppenbuchungen: Eine Gruppe hat eine Sprache. Du bekommst eine Vorschau und schreibst eine Fassung für die ganze Gruppe.
Buchung ablehnen
In allen drei Einstiegspunkten (Liste, Dashboard, Sheet) öffnet sich beim Ablehnen derselbe Dialog:
- Klicke auf ✗ Ablehnen
- Gib einen Ablehnungsgrund ein (Pflichtfeld, z.B. „Keine freie Parzelle verfügbar")
- Klicke auf Ablehnen (Button ist deaktiviert bis Text vorhanden)
Die Buchung wechselt in den Status Abgelehnt. Der Gast erhält eine Ablehnungsmail mit dem Grund.
Spricht der Gast eine andere Sprache, läuft es wie beim Bestätigen: Der Knopf ist geteilt in Ablehnen und Ablehnen + Übersetzen, und der übersetzte Weg zeigt dir erst die Vorschau. Automatisch übersetzt wird nichts – siehe Wenn der Gast eine andere Sprache spricht.
Hinweis: Der Ablehnungsgrund wird auch im Journal festgehalten.
Check-in durchführen
So checkst du einen anreisenden Gast ein:
Schnell-Methode: Wähle den Kontext Anreisen und klicke in der Zeile auf Check-in.
Alternativ: Öffne das Sheet und klicke auf Check-in im Footer.
Die Buchung wechselt in den Status Eingecheckt. Der Gast erhält automatisch eine Check-in-Bestätigungsmail.
Hinweis: Check-in ist nur möglich, wenn die Buchung den Status Bestätigt hat. Im Anreisen-Kontext siehst du ein gelbes Warn-Dreieck, wenn die Buchung noch offen ist.
Gast kommt früher – der Dialog „Check-in vor der gebuchten Anreise"
Ist der Gast früher da, als er gebucht hat, öffnet sich beim Einchecken der Dialog „Check-in vor der gebuchten Anreise". Du erreichst ihn vom Dashboard, aus der Buchungsliste und aus der Buchungs-Schnellansicht.
Der Dialog fragt dich, ob die Buchung angepasst werden soll:
- Ohne Haken bleibt der Zeitraum wie gebucht. Es wird nur eingecheckt, es ändert sich nichts am Preis.
- Mit Haken „Buchung anpassen" wird die Anreise um die zusätzlichen Nächte nach vorn verlegt – und der Preis neu berechnet.
⚠️ Ohne Preis kein Bestätigen. Setzt du den Haken, ist Anpassen und einchecken gesperrt, solange kein Preis vorliegt. Darunter steht „Ohne Preis lässt sich die Anpassung nicht bestätigen." Während gerechnet wird, steht dort „Der Preis wird berechnet …". Ein Knopf Preis erneut abrufen holt ihn noch einmal; kommt ein Preis, ist das Bestätigen frei und der Hinweis verschwindet.
Vorher war der Knopf trotzdem anklickbar – die Buchung wurde also um die zusätzlichen Nächte verlängert, ohne dass jemand den Preis gesehen hatte.
Die Fehlermeldung nennt den Grund, statt immer denselben Satz zu zeigen:
| Was passiert ist | Was dort steht |
|---|---|
| Der Platz hat für den Zeitraum keinen Grundpreis (oder eine andere fachliche Ablehnung) | „Kein Preis für den verlängerten Zeitraum: " + die genaue Begründung, inklusive Hinweis, wo der Preis zu pflegen ist |
| Dir fehlt das Recht, Preise abzurufen | „Dir fehlt das Recht, Preise abzurufen. Bitte jemanden mit den nötigen Rechten, den Check-in zu übernehmen." |
| Die Buchung gibt es nicht mehr | „Die Buchung ist nicht mehr da. Schließe den Dialog und lade die Liste neu." |
| Zu viele Abfragen in kurzer Zeit | „Zu viele Preisabfragen in kurzer Zeit. Warte einen Moment und hole den Preis erneut." |
| Serverfehler | „Der Server konnte den Preis nicht berechnen. Hole ihn erneut ab." |
| Die Buchungsdaten reichen nicht aus | „Die Angaben dieser Buchung reichen für eine Preisberechnung nicht aus." |
| Kein Netz oder unbekannter Grund | „Der Preis für den verlängerten Zeitraum lässt sich gerade nicht berechnen." |
Was sich nicht geändert hat:
- Einchecken ohne Anpassung geht weiter wie bisher, auch wenn kein Preis abgerufen werden kann – dort wird keiner gebraucht.
- Die Rückfrage bei belegter Parzelle („Trotzdem buchen") ist eine eigene, ältere Sperre. Steht ein Preis, kann das Bestätigen also trotzdem gesperrt sein – dann wegen der Überbuchung, und das steht auch so da.
- Ob eine Anreise als vorgezogen gilt, entscheidet die Zeitzone deines Platzes, nicht die Uhr deines Rechners.
Check-out durchführen
So checkst du einen abreisenden Gast aus:
Schnell-Methode: Wähle den Kontext Abreisen und klicke in der Zeile auf Check-out.
⚠️ Wichtig: Prüfe vor dem Check-out den Restbetrag in der Abreise-Spalte. Ist er rot, ist noch eine offene Zahlung vorhanden.
Die Buchung wechselt in den Status Ausgecheckt. Der Gast erhält automatisch eine Check-out-Bestätigungsmail.
Hinweis: Check-out ist nur möglich, wenn die Buchung den Status Eingecheckt hat. Im Abreisen-Kontext siehst du ein gelbes Warn-Dreieck bei noch nicht eingecheckten Buchungen.
Die Rückmeldung nach dem Auschecken nennt Gast und Parzelle – zum Beispiel „Anna Weber · A12 ausgecheckt". Am Tresen stehen mehrere Abreisen nebeneinander; die Meldung soll sagen, wen sie meint. Das gilt in der Buchungsliste und auf der Buchungsdetailseite. Auf dem Dashboard steht kürzer „Gast ausgecheckt" – dort hast du die Zeile ohnehin vor Augen. Einen Rückgängig-Knopf hat die Meldung bewusst nicht: Der Rückweg ist der Reiter Status.
💡 Alle Erfolgsmeldungen nennen das Ergebnis, nicht den Knopf. Nach dem Bestätigen liest du „Buchung bestätigt", nach dem Ablehnen „Anfrage abgelehnt", nach dem Stornieren „Buchung storniert", nach dem Einchecken „Gast eingecheckt", nach dem Speichern „Buchung gespeichert" und nach einer Nachricht an den Gast „Nachricht gesendet". Behandelst du auf dem Dashboard mehrere Buchungen auf einmal, zählt die Meldung mit: „2 Buchungen bestätigt".
Status von Hand setzen
Du hast den falschen Gast eingecheckt. Oder ausgecheckt. Oder eine Anfrage abgelehnt, die du eigentlich annehmen wolltest. Für genau diese Fälle gibt es den Reiter Status auf der Buchungsdetailseite (/buchungen/:id?tab=status).
⚠️ Wichtig: Der Reiter ist der Korrekturweg, nicht der Regelweg. Er geht nur zurück. Bestätigen, Einchecken und Auschecken machst du weiter mit den Knöpfen in der Buchungsliste – nur die verschicken Mails und legen Rechnungen an.
Was du hier zurücknehmen kannst
| Aktueller Status | Zurück nach |
|---|---|
| Ausgecheckt | Eingecheckt |
| Eingecheckt | Bestätigt |
| Bestätigt | Anfrage |
| Abgelehnt | Anfrage |
Bei einer Anfrage ist der Reiter leer – davor liegt nichts, was sich zurücknehmen ließe. Bei einer stornierten Buchung ebenso: Für ein Storno legst du eine neue Buchung an, die Gebühren und Belege der alten bleiben, wie sie sind.
So gehst du vor
- Öffne die Buchung und klicke auf den Reiter Status.
- Im Ablauf-Diagramm siehst du die ganze Kette: Anfrage → Bestätigt → Eingecheckt → Ausgecheckt. Dein aktueller Zustand ist hervorgehoben. Darunter stehen die Abzweige Abgelehnt und Storniert – sichtbar, aber von hier aus nie wählbar.
- Klicke den Zustand an, auf den du zurück willst.
- Im Kasten darunter steht vor dem Setzen in Klartext, was der Wechsel tut und was er nicht tut. Lies ihn.
- Klicke Auf „…" setzen.
Es gibt keinen Bestätigungsdialog und keinen Rückgängig-Knopf. Was geschehen ist, steht danach im Buchungstagebuch.

Was sich ändert – und was ausdrücklich nicht
Es ändert sich der Status. Der Zeitstempel des Schritts, den du zurücknimmst, wird gelöscht – die Anreisezeit beim Zurücknehmen des Check-ins. Die Buchung erscheint danach wieder dort, wo sie hingehört: in der Anreiseliste statt in der Abreiseliste.
Es ändert sich nichts an Geld und Belegen. Rechnungen, Positionen und Zahlungen bleiben stehen. Was du kassiert hast, hast du kassiert; eine gestellte Rechnung verschwindet nicht, weil ein Check-in zurückgeht.
Es geht keine E-Mail an den Gast. Weder eine neue Willkommensmail beim erneuten Einchecken noch eine Entwarnung beim Zurücknehmen.
💡 Die eine Ausnahme betrifft nur die Anzeige: Setzt du eine Buchung auf Anfrage zurück, zeigt der Buchungskopf wieder den Angebotsbetrag statt der offenen Forderung aus den Rechnungen. Die Rechnungen selbst sind unverändert – nur die Zahl oben stammt dann aus einer anderen Quelle.
Eine Ablehnung zurücknehmen
Ein Fehlklick auf Ablehnen war früher endgültig. Wer sich vertat, musste die Buchung von Hand neu anlegen – und verlor damit den Zustimmungs-Schnappschuss, das Zugangs-Token, das Tagebuch und das Anfragedatum. Die Buchungsnummer in allen bisher verschickten Mails zeigte danach auf eine tote Buchung.
Jetzt führt aus Abgelehnt ein Weg zurück nach Anfrage. Drei Dinge musst du dazu wissen:
- Das Ziel ist „Anfrage", nicht „Bestätigt". Abgelehnt wird aus einer offenen Anfrage heraus, dorthin führt der Weg zurück. Willst du danach zusagen, drückst du den Bestätigen-Knopf – der schickt die Bestätigungsmail und legt die Rechnung an.
- Der Gast erfährt nichts davon. Er hat eine Absage bekommen und findet seine Anfrage anschließend wieder als offen vor. Das ist Absicht: „Anfrage" ist keine Zusage, es gibt an dieser Stelle nichts anzukündigen.
- Die Parzelle wird geprüft. Mit der Ablehnung hast du sie freigegeben, ein anderer Gast kann sie inzwischen bekommen haben – und eine offene Anfrage belegt sie sofort wieder. Ist sie im Zeitraum vergeben, wird nicht gewechselt, und du bekommst die Meldung, dass die Parzelle inzwischen anderweitig vergeben ist.
Das ist der einzige Übergang, bei dem die Parzelle geprüft wird.
Wenn ein Zustand grau ist
Der Reiter braucht das Recht Ein-/Auschecken. Fehlt es, kannst du gar nichts setzen und liest das als Grund.
Wechsel, die die Anfrage berühren (Bestätigt → Anfrage, Abgelehnt → Anfrage), brauchen zusätzlich das Recht Buchungen bestätigen/ablehnen. Ohne dieses Recht bietet der Reiter sie nicht an – und sagt dir, warum. Sonst wäre der Reiter ein Seitenweg um das strengere Recht.
Stornieren und Ablehnen stehen im Diagramm, sind aber immer grau: Daran hängen Gebühren, Rechnungen und Gastmails, sie haben ihre eigenen Knöpfe.
Buchung stornieren
So stornierst du eine Buchung:
| Status | Weg |
|---|---|
| Bestätigt | Im Quick-Access Sheet → roter Stornieren-Button im Footer |
| Offen (Anfrage) | Im Quick-Access Sheet → Ablehnen-Button |
- Öffne das Quick-Access Sheet der Buchung
- Klicke auf Stornieren (nur sichtbar bei Status „Bestätigt")
- Gib optional einen Stornogrund ein
- Entscheide über die Stornogebühr (siehe unten)
- Bestätige mit Stornieren
Hinweis: Stornierte Buchungen können nicht rückgängig gemacht werden. Das Backend erlaubt Stornierungen nur für Buchungen im Status „Bestätigt" (bei „Offen/Ausstehend" nutze „Ablehnen").
Stornogebühr wählen
Der Dialog schlägt dir eine Gebühr vor und nennt die Begründung dazu. Du kannst den Vorschlag übernehmen, ihn auf keine Gebühr setzen oder einen eigenen Betrag eintragen.
| Tarif der Buchung | Vorschlag |
|---|---|
| Flexibel | 0,00 € – die Stufen deiner Richtlinie gelten für Stornierungen durch den Gast |
| Nicht erstattungsfähig | Voller Buchungspreis – der Gast hat den Nachlass gegen den Storno-Verzicht eingetauscht |
Die Gebühr wird an der Buchung vermerkt und mindert den ausgewiesenen Erstattungsbetrag. Eine Rechnung darüber entsteht nicht automatisch – das passiert nur beim Storno durch den Gast. Brauchst du einen Beleg, stellst du ihn im Reiter „Rechnungen" selbst aus. Details: Stornierungsrichtlinie.
Nicht erstattungsfähige Buchungen kannst nur du stornieren. Der Gast bekommt für sie keinen Storno-Link.
Was mit Positionen und Rechnungen passiert
Beim Storno räumt CampsiteHero den Rechnungsbereich der Buchung auf – egal, ob du stornierst oder der Gast selbst über seinen Storno-Link. Die aus der Buchung erzeugten Positionen (Parzelle, Personen, Tiere, Vehikel, Optionen) werden entfernt, solange sie noch auf keiner ausgestellten Rechnung stehen. Die stornierte Buchung hat danach keine offene Forderung mehr.
| Was | Passiert beim Storno |
|---|---|
| Buchungspositionen (Parzelle, Personen, Tiere, Vehikel, Optionen) – noch nicht fakturiert | werden entfernt |
| Manuell angelegte Positionen (z.B. Reinigung, Schadensersatz) | bleiben – du hast sie bewusst erfasst und kannst sie weiter fakturieren |
| Stornogebühr samt zugehöriger Rechnung | bleibt |
| Alles auf einer bereits ausgestellten Rechnung | bleibt unverändert (GoBD – ausgestellt heißt unveränderlich) |
| Eine noch nicht ausgestellte Entwurfsrechnung | bleibt bestehen, ist aber auf 0,00 € geleert – du kannst sie löschen oder neu befüllen |
Im Reiter „Rechnungen" einer so stornierten Buchung stehen dann keine Beträge und kein Kassieren-Button mehr, sondern nur der Hinweis „Für diese Buchung gibt es noch keine Positionen oder Rechnungen."
Bleibt doch einmal etwas liegen, kannst du bei einer stornierten Buchung auch die Buchungspositionen selbst über das Papierkorb-Symbol entfernen – siehe Rechnungen → Positionen einer stornierten Buchung löschen.
Bestandsbuchungen: Ältere Stornos, bei denen solche Positionen noch offen standen, wurden mit dem Update automatisch bereinigt. Du musst dafür nichts tun.
Zahlung kassieren
Du kannst Zahlungen auf zwei Wegen erfassen:
- Schnell-Methode: Kontext Kassieren wählen → in der Zeile auf den Kassieren-Button (Wallet-Icon mit Betrag) klicken.
- Alternativ: Buchung im Sheet öffnen → im Footer auf Kassieren klicken (erscheint nur, wenn noch ein offener Betrag > 0 vorhanden ist).
Im Zahlungsdialog:
- Betrag – vorbelegt mit dem offenen Restbetrag; kannst du manuell anpassen.
- Anzahlungsrechnung-Checkbox – liegt der eingegebene Betrag über dem bereits ausgestellten Rechnungsbetrag, bietet der Dialog an, eine Anzahlungsrechnung über die Differenz automatisch zu erzeugen (standardmäßig angehakt). Sie wird sofort finalisiert; beim Erstellen der Schlussrechnung wird die Anzahlung automatisch verrechnet.
- Quick-Chips – Schaltfläche für den Vollbetrag (zeigt den offenen Betrag), bei ungeraden Beträgen zusätzlich Aufrundungen auf 5 € und 10 € als schnelle Eingabehilfe.
- Zahlungsart – wähle per Icon-Auswahl: Bar, Karte, Überweisung oder Sonstige.
- Erweiterte Optionen (ausklappbar): Zahlungsdatum/-uhrzeit und eine optionale Notiz.
- Klicke auf Kassieren.
⚠️ Überzahlung: Gibst du mehr als den offenen Betrag ein, erscheint eine Warnung – du kannst dennoch speichern, wenn z. B. ein Trinkgeld erfasst werden soll.
Der Zahlungsstatus der Buchung aktualisiert sich automatisch: Teilbezahlt wenn noch ein Restbetrag offen ist, Bezahlt wenn der Gesamtbetrag gedeckt ist.

Gastdaten und Notizen bearbeiten
Du kannst Gastdaten (Name, E-Mail, Telefon) und interne Notizen jederzeit nachträglich bearbeiten:
- Klicke auf Alle Details anzeigen → im Sheet
- Klicke auf Bearbeiten
- Ändere die gewünschten Felder
- Klicke auf Speichern
Kontaktdaten ändern
In der Karte Gast (Reiter „Buchungsdetails" und im Buchungs-Sheet) stehen E-Mail und Telefon immer – auch wenn sie leer sind. Dann steht dort fehlt. So siehst du auf einen Blick, ob eine Nummer fehlt oder die Karte sie nur nicht zeigt.
- Ein Klick auf die E-Mail-Adresse öffnet dein Mailprogramm, ein Klick auf die Telefonnummer dein Telefonprogramm.
- Hinter jeder Zeile sitzt ein Stift. Er öffnet den Dialog „Kontaktdaten des Gastes" mit beiden Feldern – der Cursor steht gleich in dem Feld, dessen Stift du geklickt hast.
⚠️ Zwei Stifte, zwei Dialoge. Der Stift oben rechts in der Karte öffnet die Rechnungsadresse (Name, Straße, PLZ, Ort, Land). Die Stifte an den Zeilen öffnen die Kontaktwege (E-Mail, Telefon). Verschiedene Dialoge mit verschiedenen Pflichtfeldern.
Mindestens ein Kontaktweg muss bleiben. Speichern ist gesperrt, solange weder E-Mail noch Telefon übrig bliebe – der Gast muss auf einem Weg erreichbar sein.

Wenn keine E-Mail-Adresse hinterlegt ist
Eine Telefonbuchung ohne E-Mail ist zulässig. Nur: Ohne Adresse kann keine Mail hinausgehen.
Klickst du bei so einer Buchung auf E-Mail erneut senden (das Sende-Symbol neben den Kontaktdaten im Buchungs-Sheet), öffnet sich deshalb ein Hinweis statt einer Erfolgsmeldung:
Keine E-Mail-Adresse hinterlegt Für diese Buchung ist keine E-Mail-Adresse hinterlegt — es geht deshalb keine Mail an den Gast hinaus. Du kannst den Gast stattdessen anrufen: +49 …
Die Nummer ist anklickbar. Der Knopf E-Mail nachtragen führt dich direkt in den Dialog „Kontaktdaten des Gastes".
💡 Nach dem Speichern geht keine Mail automatisch raus. Du klickst E-Mail erneut senden noch einmal, wenn du wirklich senden willst.
Dasselbe gilt für Nachrichten an den Gast – aus dem Tab Kommunikation und über Nachricht senden im Buchungs-Sheet. Ohne Adresse geht nichts raus, und du bekommst beim Senden die Meldung: „Für diese Buchung ist keine E-Mail-Adresse hinterlegt – die Nachricht kann dem Gast nicht zugestellt werden." Die Nachricht landet auch nicht als „gesendet" im Verlauf.
Buchung bearbeiten
Du kannst eine bestehende Buchung umfangreich ändern: Parzelle, Zeitraum, Personen, Tiere und Vehikel.
- Öffne die Buchungsdetail-Seite (Alle Details anzeigen → im Sheet oder Klick auf die Buchungsnummer)
- Klicke auf Bearbeiten (Stift-Icon im Header)
- Nimm deine Änderungen vor (Details je Bereich siehe unten)
- Klicke auf Weiter und im zweiten Schritt auf Speichern
Hinweis: Wenn für die Buchung bereits ausgestellte Rechnungen vorliegen, erscheint vor dem Speichern ein GoBD-Schutzschritt. Details dazu im Kapitel Rechnungen.
Aufbau des Bearbeiten-Dialogs
Der Dialog ist genauso gebaut wie „Neue Buchung" – 1240 px breit, mit fester Höhe, und nur die Spalten scrollen:
| Bereich | Inhalt |
|---|---|
| Kopf | Titel, daneben Buchungsnummer · Gastname · Status (z. B. „BK-2026-00018 · Hans-Peter Beck · Bestätigt") |
| Kopfzone | Anreise · Abreise · Parzelle mit Schnellwahl; unter der Parzelle die Zeile „2 Nächte · Premium-Seeplatz" |
| Linke Spalte | Optionen, darunter fest der Tarif-Umschalter |
| Rechte Spalte | Gästekategorien – Personen, Tiere und Vehikel mit mitlaufenden Gruppen-Überschriften |
| Fußzeile | Preiszeile · „Abbrechen" · „Weiter" |
Der zweistufige Ablauf (Weiter → Bestätigen) ist unverändert. Nach dem Schließen steht der Cursor wieder auf dem Knopf Bearbeiten – wer den Dialog mit der Tastatur geöffnet hat, muss sich nicht neu durchtabben.
Der Dialog fragt bei ungespeicherten Änderungen nach. Escape, ein Klick auf den Hintergrund, das × oder „Abbrechen" öffnen die Rückfrage „Ungespeicherte Änderungen" (Abbrechen / Verwerfen), sobald du am Zeitraum, an der Parzelle, an der Belegung, an den Optionen oder am Tarif etwas geändert hast. Ohne Änderung schließt der Dialog wie bisher sofort. Wählst du „Abbrechen", landest du wieder im Dialog – an der Stelle, von der aus du schließen wolltest.
Parzelle und Zeitraum ändern
- Wähle eine neue Parzelle über die durchsuchbare Auswahl (tippen filtert die Liste) aus den verfügbaren Parzellen
- Ändere Anreise- und/oder Abreisedatum – die Datum-Schnellwahl steht auch hier zur Verfügung, inklusive Freitag-Chip und den −/+-Tasten für einen Tag vor oder zurück (siehe Parzelle und Zeitraum)
Hinweis: Die neue Parzelle muss im gewünschten Zeitraum verfügbar sein. Ist sie belegt, wird ein Fehler angezeigt.
Parzellen ohne Grundpreis: Hat eine Parzelle im gewählten Zeitraum weder einen eigenen noch einen von ihrer Kategorie geerbten Grundpreis, lehnt das System das Speichern ab: „Für diese Parzelle ist im gewählten Zeitraum kein Grundpreis hinterlegt …". Trage den Preis unter Tarife & Regeln → Preise nach (siehe Preisvererbung). Ein bewusst gesetzter Preis von 0,00 € ist davon nicht betroffen – der gilt als gepflegt.
Belegung bearbeiten (Personen, Tiere, Vehikel)
Im Bearbeiten-Dialog gibt es Abschnitte für die Belegung:
| Abschnitt | Inhalt |
|---|---|
| Personen | Mengenwähler pro Gästekategorie (z.B. Erwachsener, Kind) |
| Tiere | Mengenwähler pro Tierkategorie – erscheint nur, wenn der Campingplatz Tierkategorien konfiguriert hat |
| Vehikel | Mengenwähler pro Vehikeltyp (z.B. Wohnmobil, PKW) – mehrere Typen gleichzeitig möglich |
Die Mengenwähler stehen in der rechten Spalte unter mitlaufenden Gruppen-Überschriften. Es gelten dieselben Komfortfunktionen wie beim Anlegen (siehe Belegung: Personen, Tiere und Vehikel):
- Icons neben jeder Kategorie (Kategorie-/Vehikeltyp-Icon aus den Stammdaten)
- das Ein-Klick-Layout (Knopfreihe 0–9 + Eingabefeld bis 99) statt der Schrittwahl – umgeschaltet wird es über das Raster-Symbol in der Werkzeugzeile der Gästekategorien. Es ist dieselbe Einstellung wie im Anlegen-Dialog.
- Suchfeld und Trichter („Nur belegte anzeigen") in derselben Werkzeugzeile, mit Leerzustand und „Filter zurücksetzen"
- Inklusiv-Badge „X inkl." neben jeder Kategorie nach Parzellenauswahl
- Kapazitäts- und Slot-Anzeige („verbraucht / max", Vehikel in Slots, orange bei Überschreitung, Per-Typ-Warndreieck „+N")
Zusatzleistungen (Optionen)
Wie beim Anlegen erscheinen die Optionen als parzellen-abhängige Cards in der linken Spalte: nur die für die gewählte Parzelle verfügbaren Optionen, Pflicht-Optionen vorausgewählt mit „Pflicht"-Abzeichen und Schloss, frei gewählte mit Haken, noch nicht gewählte mit Plus. Bei langen Listen kommen auch hier Suchfeld und Trichter dazu.
Tarif nachträglich wechseln
Auch beim Bearbeiten steht der Umschalter Flexibel ↔ Unflexibel zur Verfügung (der Fachbegriff „nicht erstattungsfähig" steht im Info-Zeichen daneben – siehe Abschnitt Tarif wählen beim Anlegen). Du kannst eine bestehende Buchung also in beide Richtungen umstellen – der Rabatt kommt dabei hinzu oder fällt weg, und die Preiszeile zeigt den neuen Betrag sofort.
Achtung bei abgeschaltetem Tarif: Bietet deine Stornierungsrichtlinie den nicht erstattungsfähigen Tarif gerade nicht an, behält eine bestehende Buchung ihn zwar samt eingefrorenem Rabattsatz – du darfst sie aber nur noch auf „flexibel" umstellen. Der Umschalter ist dann gesperrt und nennt den Grund darunter: „Dieser Tarif wird nicht mehr angeboten. Diese Buchung darf ihn behalten oder abgeben – zurückholen lässt er sich nicht."
Live-Preisvorschau mit Differenz
Während du Änderungen vornimmst, zeigt die Preiszeile in der Fußzeile laufend den neuen Gesamtpreis, serverseitig berechnet durch die Preis-Engine. Zugeklappt lautet sie „Neuer Gesamtpreis · Chip · 153,60 €":
| Fall | Anzeige |
|---|---|
| Preis unverändert | kein Chip – die Zeile zeigt nur den Betrag |
| Teurer | bernsteinfarbener Chip „12,00 € teurer" |
| Günstiger | grüner Chip „8,00 € günstiger" |
Du musst also nichts aufklappen, um zu sehen, ob es teurer oder günstiger wird. Rot ist im Desk für Fehler und Löschen reserviert – ein höherer Preis ist beides nicht; das Minuszeichen entfällt, weil „günstiger" das Vorzeichen schon trägt.
Ein Klick auf die Zeile öffnet die Preisaufstellung als Fenster über dem Dialog (Parzellen-Grundpreis, Personen-/Tier-/Vehikel-Kategorien mit Inklusiv-Anteil, Zusatzleistungen mit aufgeschlüsselter Menge, Rabattzeile, enthaltene Steuern, Gesamtbetrag) – identisch zur Ansicht beim Anlegen. Der Dialog bleibt dabei gleich hoch; die Knöpfe rutschen nicht weg.
Die Vorschau ist auch im Bestätigen-Schritt sichtbar. Du gibst keine Preise manuell ein – alle Preise werden von der Preis-Engine berechnet (Single Source of Truth). Nachträgliche Rabatte kannst du als manuelle Rechnungsposition mit negativem Betrag erfassen.
Kapazitätswarnung (weich)
Wenn die gewählte Personen-, Tier- oder Vehikelanzahl das Kapazitätslimit der Parzelle überschreitet, erscheint ein gelber Hinweis, z.B.:
„Die gewählte Personenzahl (5) überschreitet das Limit dieser Parzelle (4). Du kannst trotzdem fortfahren."
Der Hinweis ist nicht blockierend – du kannst die Buchung trotzdem speichern (Operator-Override). So lässt sich z.B. eine Ausnahme für Stammgäste machen.

Buchung löschen
Buchungen können nur gelöscht werden, wenn sie den Status Offen, Storniert oder Abgelehnt haben.
- Öffne die Detailseite
- Klicke auf Löschen
- Bestätige die Löschung im Dialog
Hinweis: Bestätigte oder eingecheckte Buchungen können nicht gelöscht werden. Storniere sie zuerst.
Gruppenbuchungen
Wenn mehrere Personen oder Familien gemeinsam mehrere Parzellen buchen, werden diese als Gruppe zusammengefasst.
Was ist eine Gruppenbuchung?
Eine Gruppe besteht aus mehreren Einzelbuchungen mit:
- Einem gemeinsamen Hauptgast (Name, E-Mail, Telefon)
- Derselben Reisezeit (in der Regel)
- Einer Gruppen-Nummer (Format:
GRP-2026-00001)
📋 Beispiel: Familie Müller und Freunde buchen Parzelle 12 und 13 für dieselbe Woche. Du siehst in der Liste eine Summary-Zeile mit dem violetten Badge GRP-2026-00001 und kumulierten Werten über alle Teilbuchungen.
Gruppen-Summary-Zeile
In der Buchungsliste repräsentiert jede Gruppe eine einzige Zeile mit aggregierten Werten:
| Spalte | Inhalt |
|---|---|
| GRP-Badge | Gruppen-Nummer in Violett (z.B. GRP-2026-90003) mit Gruppen-Icon |
| Gast | Hauptgast der Gruppe (Name) |
| Parzelle | Anzahl der belegten Parzellen (z.B. „3 Parzellen") – Hover zeigt alle Parzellen mit Kategorie-Farbpunkt im Tooltip |
| Zeitraum | Frühester Check-in bis spätestes Check-out; zweite Zeile: Nächte (gleich: „3 Nächte", unterschiedlich: „2 – 5 Nächte") |
| Status | Einheitliches Badge wenn alle gleich; sonst Mixed-Badge (z.B. „2/3 bestätigt") |
| Zahlung | Einheitliches Badge oder Mixed-Badge (z.B. „1/3 bezahlt") |
| Betrag / Offen | Kumulierte Summen über alle Teilbuchungen |
Klicke auf den ▸ Pfeil links in der Zeile, um alle Teilbuchungen aufzuklappen. Jede Teilbuchungszeile zeigt Kategorie-Farbkreis, Parzellennummer, Buchungsnummer und ist einzeln klickbar (öffnet das Detail-Sheet der jeweiligen Buchung).

Suche nach Teilbuchung
Gibst du im Suchfeld eine Buchungsnummer einer Teilbuchung ein (z.B. BK-2026-00087), passiert folgendes:
- Die übergeordnete Gruppe erscheint als Suchergebnis
- Die Gruppe klappt sich automatisch auf
- Die gesuchte Teilbuchung wird hervorgehoben
Gruppen-Aktionen
Direkt in der Aktionsspalte der Gruppen-Summary-Zeile erscheinen kontextabhängige Bulk-Aktionsbuttons. Sie verhalten sich analog zu den Einzel-Aktionsbuttons und folgen derselben Kaskaden-Logik.
Sichtbarkeit im Standard-Kontext (kein Filter):
Die Aktionskaskade läuft in drei Schritten ab – der Kassieren-Button erscheint parallel zu Check-in und Check-out, sobald ein offener Betrag vorhanden ist:
| Schritt | Button | Sichtbar wenn |
|---|---|---|
| 1 | ✓ N Bestätigen (grün) | Mindestens eine Teilbuchung hat Status Offen |
| 2 | → N Check-in (grün) | Alle offenen Anfragen bestätigt, mindestens eine hat Status Bestätigt |
| 3 | ← N Check-out (lila) | Mindestens eine Teilbuchung ist eingecheckt |
| parallel | € Kassieren (sky-blau, offener Betrag) | Offener Gesamtbetrag > 0 – erscheint gleichzeitig neben Check-in oder Check-out |
Sichtbarkeit in Filter-Kontexten:
| Kontext | Angezeigte Buttons |
|---|---|
| Anfragen | Bestätigen + Ablehnen |
| Anreisen | Check-in (mit vollständigem Label) – kein Kassieren-Button |
| Abreisen | Check-out (mit vollständigem Label) – kein Kassieren-Button |
| Kassieren | € mit offenem Gesamtbetrag |
| Rückerstatten | Rückerstatten-Button mit offenem Erstattungsbetrag |
Wenn keine Aktion möglich ist (Pre-Conditions nicht erfüllt), bleibt die Aktionsspalte nicht mehr leer – sie zeigt stattdessen einen Warn- oder Erfolgs-Indikator:
| Kontext + Sub-Buchungs-Status | Aktionszeile zeigt |
|---|---|
| Anreise: alle Sub-Buchungen Offen | ⚠️ „X × Nicht bestätigt" |
| Anreise: alle bereits eingecheckt/ausgecheckt | ✓ „alle eingecheckt" |
| Abreise: alle Sub-Buchungen Offen | ⚠️ „X × Nicht bestätigt" |
| Abreise: alle bestätigt, aber noch nicht eingecheckt | ⚠️ „X × Nicht eingecheckt" |
| Abreise: alle ausgecheckt | ✓ „alle ausgecheckt" |
Bestätigen-Dialog
Klick auf ✓ N Bestätigen öffnet einen Dialog:
- Checkbox-Liste aller
Offen-Buchungen der Gruppe – alle standardmäßig angehakt - Einzelne Buchungen können abgewählt werden
- Optionales Freitextfeld „Nachricht an Gäste" (max. 2000 Zeichen) – wird pro Gast in die Bestätigungsmail eingebettet
- Der Submit-Button zeigt die Anzahl der ausgewählten Buchungen und ist deaktiviert, wenn keine angehakt ist
- Bereits bestätigte/abgelehnte Buchungen erscheinen read-only in einer separaten Liste
Hinweis: Bestätigt werden nur die angehakten Buchungen. Jeder Gast erhält seine eigene Bestätigungsmail.
Ablehnen-Dialog
Klick auf ✗ N Ablehnen öffnet einen AlertDialog im Destructive-Stil:
- Deutliche Warnung: „Abgelehnte Buchungen können nicht reaktiviert werden."
- Checkbox-Liste aller
Offen-Buchungen - Pflichtfeld „Ablehnungsgrund" (max. 1000 Zeichen) – ohne Eingabe bleibt der Button deaktiviert
Gruppen-Check-in-Dialog
Klick auf den Check-in-Button öffnet einen Dialog:
- Alle
Bestätigt-Buchungen als Checkboxen - Standard-Auswahl: nur Buchungen mit Anreisedatum ≤ heute
- Buchungen mit Anreisedatum > heute: Warndreieck + „Früh-Checkin – Anreise am TT.MM." – können manuell angehakt werden
- Bereits eingecheckte Buchungen erscheinen read-only
💡 Denselben Dialog erreichst du vom Dashboard aus. Der Einchecken-Knopf an einer Gruppenzeile der Karte „Heutige Anreisen" öffnet ihn – du musst für einen Teil-Check-in nicht erst in die Buchungsliste wechseln.
Ist eine Anreise vorgezogen, bietet der Dialog an, den Zeitraum der ausgewählten Parzellen anzupassen: Setze den Haken und stelle die zusätzlichen Nächte mit + und − ein. Ohne Haken wird nur eingecheckt, die Buchungen bleiben unverändert.
Was das Vorziehen kostet, steht im Dialog
Sobald du „Anreise der vorgezogenen Buchungen anpassen" ankreuzt, steht hinter jeder Zeile der Aufschlag, den das Vorziehen für genau diese Parzelle kostet – und darunter „Aufschlag gesamt" als Summe.
☑ BK-BULK-00019 · Jan Hoffmann · B4 +87,00 €
☑ BK-BULK-00021 · Jan Hoffmann · A2 +65,00 €
☐ BK-BULK-00020 · Jan Hoffmann · B1 —
Aufschlag gesamt +152,00 €Vier Dinge dazu:
- Die Summe zählt nur die angehakten Zeilen. Nimmst du ein Häkchen weg, zeigt die Zeile „—" und die Summe sinkt um genau diesen Betrag. Der Zeilenwert ist deshalb wichtig: Bei unterschiedlichen Parzellenpreisen siehst du an der Summe allein nicht, woher der Betrag kommt.
- Der Regler ändert alle Beträge. Weniger Nächte vorziehen heißt weniger Aufschlag. Zeilen und Summe folgen einen Wimpernschlag später – der Dialog wartet ab, bis du fertig geklickt hast.
- Ohne Preis kein Bestätigen. Solange für eine angehakte Zeile kein Preis vorliegt, ist × einchecken gesperrt. Darunter steht, warum, und der Knopf Preis erneut abrufen holt ihn nach.
- Scheitert eine einzelne Zeile, sagt sie es an Ort und Stelle – zum Beispiel „Für diese Parzelle ist im gewählten Zeitraum kein Grundpreis hinterlegt". Die übrigen Zeilen behalten ihren Betrag. Gesperrt wird nie pauschal, ohne zu sagen, welche Zeile schuld ist.

Belegte Parzellen siehst du vor dem Bestätigen
Ist eine der Parzellen in den vorgezogenen Nächten schon belegt, erfährst du das im Dialog – nicht erst nach dem Klick.
- Jede betroffene Zeile sagt es selbst, mit ihrer Parzellennummer: „Parzelle B1 ist im vorgezogenen Zeitraum belegt". Bei zwei betroffenen Zeilen stehen zwei Meldungen da, jede an ihrer Zeile.
- Bestätigt wird einmal. Unter der Aufschlagssumme erscheint ein gelb hinterlegter Kasten: „n belegte Parzelle(n) – der Grund gilt für alle", daneben das Häkchen „Trotzdem buchen (Overbooking)". Setzt du es, erscheint ein Feld für den Grund.
- Ein Grund für alle. Was du dort einträgst, wird bei jeder betroffenen Buchung im Buchungsverlauf vermerkt – nicht nur bei einer.
- Ohne Häkchen bleibt „× einchecken" gesperrt. Dieselbe Regel wie im Dialog für die Einzelbuchung.
- Nimmst du das Häkchen einer betroffenen Zeile weg, verschwindet ihre Meldung. Ist keine betroffene Zeile mehr angehakt, ist der Knopf wieder frei – ohne dass du etwas bestätigen musst.
- Änderst du danach die Nächtezahl, fällt die Bestätigung weg und muss neu gesetzt werden: Sie galt für einen Zeitraum, den du gerade verlassen hast.
Ist keine Parzelle belegt, ändert sich nichts – es erscheint weder eine Meldung noch der Kasten.
Läufst du trotzdem in die Ablehnung (etwa weil die Belegung erst nach der Preisvorschau entstanden ist), liest du:
Die Parzelle ist in den vorgezogenen Nächten bereits belegt — weder die Buchung wurde verlängert noch der Check-in durchgeführt. Es wurde nichts eingecheckt – setze das Häkchen „Trotzdem buchen (Overbooking)" und versuche es erneut.

Gruppen-Check-out-Dialog
Analog zum Check-in-Dialog:
- Zeigt alle
Eingecheckt-Buchungen - Standard-Auswahl: nur Buchungen mit Abreisedatum ≤ heute
- Früh-Checkout-Warnung für Buchungen mit Abreisedatum > heute
Gruppen-Kassieren-Dialog
Klick auf den €-Button öffnet den Kassier-Dialog. Du kannst ihn jederzeit öffnen, sobald ein offener Betrag vorhanden ist – auch wenn die Gruppe noch nicht ausgecheckt ist. Das ist die typische Situation bei einer Anzahlung.
Einzahlung:
- Betragseingabe (€)
- Zahlungsart (Bar / Karte / Überweisung / Sonstiges)
- Ausklappbar: Datum & Uhrzeit (Default: jetzt), optionale Notiz
Verteilung per Slider:
- Pro Teilbuchung eine Zeile mit Slider (0 bis offener Saldo)
- Gebundenes Eingabefeld (two-way mit Slider)
- Min- und Max-Buttons pro Zeile: setzen den Betrag auf 0 € bzw. auf den vollen offenen Saldo
- Default: proportional zum offenen Saldo
- Vollbezahlte Buchungen: read-only, Badge „Bezahlt"
- Live-Indikator: grün = Slider-Summe entspricht Einzahlungs-Anker, amber = Abweichung
Anzahlungsrechnung pro Teilbuchung:
Liegt der auf eine Teilbuchung entfallende Betrag über dem bereits ausgestellten Rechnungsbetrag dieser Buchung, erstellt das System automatisch eine Anzahlungsrechnung für die Differenz. Pro betroffener Teilbuchung erscheint unterhalb des Sliders eine Checkbox:
„Anzahlungsrechnung über X,XX € erstellen"
Die Checkbox ist standardmäßig angehakt. Du kannst sie abwählen, wenn du ausnahmsweise keine Anzahlungsrechnung benötigst.
Adress-Prüfung:
Fehlt einer betroffenen Teilbuchung die vollständige Rechnungsadresse, zeigt der Dialog einen amber Hinweisblock direkt unter der jeweiligen Buchungszeile:
„Buchung BK-2026-00042 – Rechnungsadresse unvollständig"
Ein Link „Adresse vervollständigen" öffnet den Adress-Dialog für diese Buchung. Solange die Adresse fehlt, ist der Submit-Button gesperrt – so wird sichergestellt, dass Anzahlungsrechnungen immer eine gültige Rechnungsanschrift enthalten.
💡 Tipp: Vervollständige die Adressen aller Gruppenmitglieder schon bei der Buchungsbestätigung – dann ist das Kassieren am Anreisetag reibungslos.
Submit-Button zeigt die effektive Kassier-Summe (z.B. „Kassieren – 198,00 €") und ist aktiv, sobald mindestens ein Slider > 0 € steht und alle Adress-Voraussetzungen erfüllt sind.
💡 Tipp: Das Eingabefeld dient als Anker für die Default-Verteilung. Du kannst weniger kassieren als eingegeben – die Slider-Summe ist maßgeblich.

Mobile Card-Ansicht
Auf Smartphones und Tablets wird die Buchungsliste als Card-Liste statt als Tabelle dargestellt – jede Buchung ist eine eigene Card mit Gast, Status- und Zahlungs-Badges, Zeitraum, Parzelle und Aktionsbuttons. Die Navigation erfolgt über die Bottom-Navigation (Dashboard, Buchungen, Rechnungen, Mehr).
Gruppenbuchungen werden als eigene Card mit Chevron dargestellt (Gast, GRP-Badge, kumulierter Betrag, Zeitraum). Beim Aufklappen erscheinen die Teilbuchungen als eingerückte Sub-Cards. Die Gruppen-Aktionsbuttons sind am unteren Rand der Gruppen-Card sichtbar – identisches Verhalten wie auf Desktop.

Grund und Wartezeit stehen jetzt auch auf der Karte
Zwei Angaben, die auf dem Desktop eine eigene Spalte haben, fehlten am Telefon bis zum 08.09.2026 vollständig:
- Kontext „Überfällig": Unter Zeitraum und Betrag steht jetzt der Grund („Nicht bestätigt", „Check-in überfällig", „Check-out überfällig", „Zahlung ausstehend") und daneben, wie lange das schon so ist („seit 85 Tagen"). Bei „Zahlung ausstehend" steht dort statt der Tageszahl der offene Betrag.
- Kontext „Anfragen": Dort steht jetzt „Eingegangen vor 3 Tagen". Ab dem dritten vollen Tag ohne Antwort wird die Zeile rot mit ⚠️ – dieselbe Schwelle wie in der Desktop-Spalte „Eingegangen".
Auf dem Desktop ändert sich nichts.
💡 Die Wartezeit kommt vom Server, nicht von deinem Gerät. Eine falsch gestellte Uhr am Telefon verschiebt die Angabe nicht mehr.
Einstellung: Gast pro Parzelle
Im Bereich Buchungseinstellungen kannst du festlegen, ob bei Gruppenbuchungen für jede Parzelle ein eigener Gast angegeben werden kann:
| Einstellung | Bedeutung |
|---|---|
| Hauptgast für alle | Ein Hauptgast gilt für alle Parzellen der Gruppe (Standard) |
| Gast pro Parzelle optional | Für jede Parzelle kann optional ein eigener Gast angegeben werden |
| Gast pro Parzelle Pflicht | Für jede Parzelle muss ein eigener Gast angegeben werden |
Weitere Infos: Buchungseinstellungen
Plan
Der Plan zeigt dir die Auslastung aller Parzellen grafisch – ideal für die kurzfristige Planung. Die Ansicht zeigt immer 4 vollständige Kalenderwochen ab Montag der Kalenderwoche des gewählten Datums.
Navigation
Der Plan nutzt denselben Datumsschalter im Header wie die Ansichten Anreisen und Abreisen. Die Pfeile springen dabei wochenweise (±1 Kalenderwoche) und rasten immer auf dem Montag der Zielwoche ein.
- ↻ Reset-Button – zurück zur aktuellen Woche
- Datums-Label / Datepicker – direkter Sprung auf eine beliebige Woche
- ‹ / › Pfeile – eine Woche vor oder zurück
💡 Tipp: Das Datum wird zwischen den Ansichten geteilt. Klickst du in der Anreise-Ansicht auf „nächsten Samstag" und wechselst dann zum Belegungsplan, siehst du sofort die Woche mit diesem Samstag.
- Kategorie-Filter – schränke die Ansicht auf eine Parzellenkategorie ein
- Status-Filter – zeige nur bestimmte Buchungsstatus
Visueller Filter
Der Belegungsplan hat einen eigenen, icon-only Filter direkt über dem Planraster. Er ist unabhängig vom Kontextschalter der Liste – du kannst in der Liste einen anderen Kontext aktiv haben als im Plan.
Die Filterleiste enthält vier Buttons:
| Button | Farbe | Bedeutung |
|---|---|---|
| Sterne-Icon | Amber | Anfragen – offene Buchungsanfragen |
| Eincheck-Icon + Haken | Grün | Eingecheckt – Gäste, die aktuell auf dem Platz sind |
| Auscheck-Icon + Haken | Lila | Ausgecheckt – Gäste, die bereits abgereist sind |
| Warndreick-Icon | Rot | Überfällig – Buchungen mit Handlungsbedarf |
| Rückwärtspfeil-Icon | Grau | Filter zurücksetzen |
Fahre mit der Maus über einen Button, um den Filternamen als Tooltip zu sehen.
So funktioniert der Filter:
- Klicke auf einen Button – er wird aktiv hervorgehoben.
- Alle Treffer werden in der Filterfarbe eingefärbt (z.B. grün für Eingecheckt).
- Alle Nicht-Treffer werden dezent ausgegraut – sie bleiben sichtbar, treten aber in den Hintergrund.
- Klicke erneut auf den aktiven Button oder auf das Rücksetzen-Icon, um den Filter aufzuheben.
💡 Tipp: Der Filter blendet keine Buchungen aus – so behältst du immer den Gesamtüberblick über die Auslastung. Treffer leuchten in der Filterfarbe auf, alles andere zieht sich zurück.
💡 Tipp: Der aktive Filter wird in der URL (
?plan_filter=…) und im Browser-Speicher gesichert. Du kannst einen gefilterten Plan als Link teilen – der Empfänger sieht denselben Filterstand.

Unterschied zum Kontextschalter
Der Kontextschalter oben im Header filtert die Liste serverseitig – er zeigt nur Buchungen eines bestimmten Status. Der visuelle Filter im Plan arbeitet rein clientseitig und mutet statt zu verstecken. Beide Einstellungen sind voneinander unabhängig.
📋 Beispiel: Du hast in der Liste den Kontext „Anfragen" aktiv. Wechselst du zum Plan, bleibt dort der zuletzt gesetzte Planfilter aktiv – er ist nicht an „Anfragen" gebunden.
Buchungen ausblenden (Auge-Button)
Mit dem Auge-Button in der Filterleiste (direkt vor dem Zurücksetzen-Button) kannst du alle Buchungsbalken im Plan ausblenden. Belegte Tageszellen werden dadurch anklickbar – zum Beispiel um eine bewusste Doppelbelegung (Overbooking) manuell anzulegen.
| Zustand | Icon | Bedeutung |
|---|---|---|
| Buchungen sichtbar (Standard) | Geschlossenes Auge | Klick blendet Buchungsbalken aus |
| Buchungen ausgeblendet | Offenes Auge | Klick zeigt Buchungsbalken wieder |
Balken werden stark abgeblendet und sind nicht mehr klickbar – die darunterliegenden Tageszellen sind wieder anwählbar.
Alt-Taste als temporärer Schalter:
Halte Alt gedrückt, um den aktuellen Zustand vorübergehend umzukehren:
- Buchungen sichtbar + Alt → Buchungen kurz ausgeblendet (zum Anklicken belegter Zellen)
- Buchungen dauerhaft ausgeblendet + Alt → Buchungen kurz eingeblendet
Beim Loslassen der Alt-Taste kehrt der Plan zur Normalansicht zurück – ein zuvor dauerhaft aktiviertes Ausblenden wird aufgelöst.
💡 Tipp: Kombiniere Auge-Button + Zeitraum per Klick auswählen, um eine Buchung über belegte Tage hinweg anzulegen.

Zeitraum per Klick auswählen
Du kannst den Zeitraum einer neuen Buchung direkt im Belegungsplan mit zwei Klicks festlegen:
- Erster Klick auf eine Tageszelle – setzt das Startdatum (Anreise). Die Zelle wird hervorgehoben.
- Bewege die Maus über die folgenden Zellen derselben Parzelle – der gewählte Zeitraum wird als Vorschau angezeigt.
- Zweiter Klick auf eine spätere Zelle – setzt das Enddatum (Abreise) und öffnet den Dialog „Neue Buchung" mit Parzelle und Zeitraum bereits eingetragen.
Besonderheiten:
| Szenario | Ergebnis |
|---|---|
| Start- und Endklick in derselben Zelle | 1 Nacht (Abreise = Folgetag) |
| Das angeklickte Enddatum | ist der Abreisetag – der Gast übernachtet bis zum Vortag |
| Esc während der Auswahl | Bricht die laufende Auswahl ab |
| Klick auf eine andere Parzelle | Setzt den Startanker auf die neue Parzelle um |
💡 Tipp: Wenn die gewünschten Tage bereits belegt sind, blende zunächst die Buchungen mit dem Auge-Button aus – dann kannst du belegte Zellen wie freie Zellen anklicken.

Kalenderwochen-Header
Über den Tagesspalten siehst du eine sticky Kopfzeile mit den Kalenderwochen. Jede Woche zeigt neben der KW-Nummer auch den Monat und das Jahr – z. B. KW 17 · April · 2026. Läuft eine Woche über einen Monats- oder Jahreswechsel, erscheinen beide mit / getrennt (z. B. KW 14 · März/April · 2026 oder KW 1 · Dezember/Januar · 2025/2026). Das erleichtert die Orientierung beim Scrollen durch mehrere Wochen.
Das gewählte Datum wird in der Kopfzeile und in den Zellen farblich hervorgehoben – zusätzlich zur Markierung des heutigen Tages.
Farben
Ohne aktiven Filter zeigen die Buchungsbalken ihre Statusfarbe:
| Farbe | Buchungsstatus |
|---|---|
| Blau | Bestätigt |
| Grün | Eingecheckt |
| Lila | Ausgecheckt |
| Amber | Offen (Anfrage) |
| Rot | Überfällig |
Ist ein Filter aktiv, werden Treffer in der Filterfarbe dargestellt, Nicht-Treffer grau abgedimmt.
Gruppenbuchungen erkennst du am GRP-Badge auf dem Balken.
Überlagerte Buchungen
Liegen mehrere Buchungen einer Parzelle im gleichen Zeitraum, werden sie zu einem einzelnen Balken mit Zähler-Badge zusammengefasst (z. B. 2). Ein Klick auf diesen Balken öffnet eine Liste aller Buchungen des Stapels – jede Zeile ist klickbar und öffnet die jeweilige Buchung direkt. Einzelne Buchungen (ohne Überlagerung) verhalten sich wie gewohnt.
Die Balkenfarbe des Stapels spiegelt die dringlichste Buchung wider: Offene Anfragen haben Vorrang vor bestätigten Buchungen, bestätigte vor eingecheckten usw.
Footer: Legende und Belegungsrate
Am unteren Rand des Plans siehst du die Status-Legende mit Anzahl und die aktuelle Belegungsrate in Prozent für den angezeigten Zeitraum. Die Legende zeigt die aktuellen Begriffe: Eingecheckt und Ausgecheckt (nicht „Anreise"/„Abreise", da der Plan einen 4-Wochen-Zeitraum umfasst und keine tagesscharfen An-/Abreisedaten zeigt).

Kalender
Der Kalender gibt dir einen Monatsüberblick. Jede Tageszelle zeigt auf einen Blick, wie ausgelastet der Tag ist.
Tageszellen
Der heutige Tag ist mit einem farbigen Kreis um die Tageszahl hervorgehoben.
Für jeden Tag mit aktiven Buchungen siehst du rechts unten eine kompakte Info-Zeile:
| Symbol | Farbe | Bedeutung |
|---|---|---|
| X% | – | Auslastung in Prozent |
| Bett-Icon + Zahl | – | Anzahl belegter Parzellen |
| Eingangs-Pfeil + Zahl | Grün | Anzahl Anreisen an diesem Tag |
| Ausgangs-Pfeil + Zahl | Lila | Anzahl Abreisen an diesem Tag |
Hinweis zur Zählweise: In den Pillen werden nur aktive Buchungen gezählt – stornierte und abgelehnte Buchungen fließen nicht ein. Dieselbe Regel gilt auch für die Anreise-/Abreise-Zahlen im Kontextschalter oben, sodass beide Werte immer übereinstimmen.
Die Zellfarbe zeigt die Auslastungsstufe:
| Farbe | Auslastung |
|---|---|
| Grau | Wenig belegt (unter 33 %) |
| Gelb | Mittel belegt (33–66 %) |
| Rot | Stark belegt (über 66 %) |
Tagesklick → zur gefilterten Liste springen
Klickst du auf einen Tag im Kalender, wechselt die Ansicht automatisch zur Listenansicht und zeigt dir alle Buchungen, die genau diesen Tag betreffen.
Der aktive Datumsfilter erscheint als Badge unter den Filterzeilen. Mit dem ×-Button im Badge entfernst du den Filter wieder.
💡 Tipp: So findest du schnell alle Gäste eines bestimmten Tages – einfach auf die Tageszelle klicken.
Navigation
- ‹ Monat Jahr › – Monatsweise vor- und zurückblättern
Footer: Belegungsbalken und Legende
Am unteren Rand siehst du:
- Einen Belegungsbalken mit der durchschnittlichen Auslastung des angezeigten Monats in Prozent
- Eine Legende mit den Farben (grau / gelb / rot) und den Icons (Bett, Anreise-Pfeil, Abreise-Pfeil)

Buchungsdetailseite – Rückkehr zur Liste
Auf der Buchungsdetailseite findest du oben links den Link „Zurück zur Buchungsliste". Er öffnet nicht einfach die Liste – er springt außerdem direkt zu der Buchungszeile, die du zuletzt angesehen hast, und öffnet automatisch das Quick-Sheet dieser Buchung.
- Falls du einen Filter oder Kontext aktiv hattest, ist dieser nach der Rückkehr wiederhergestellt
- Die Liste lädt ggf. die Seite nach, auf der sich die Buchung befindet (falls du z.B. weit unten in der Liste warst)
💡 Tipp: Du kommst immer genau dahin zurück, wo du aufgehört hast – ohne erneutes Suchen oder Scrollen.
Buchungsdetailseite – Tab-Struktur
Die vollständige Buchungsdetailseite (/buchungen/:id) ist in fünf Tabs unterteilt:
| Tab | URL-Parameter | Inhalt |
|---|---|---|
| Buchungsdetails | ?tab=details (Standard) | Stammdaten, Personen & Vehikel, Optionen, Aktivitäts-Log |
| Rechnungen | ?tab=invoices | Billing-Summary, Offene Posten, Rechnungen |
| Zahlungen | ?tab=payments | Erfasste Zahlungen und Erstattungen |
| Kommunikation | ?tab=communication | Gast-Chat, interne Notizen, Ereignisse |
| Status | ?tab=status | Statusschritte zurücknehmen (siehe Status von Hand setzen) |
Der Tab-Parameter wird in der URL gespeichert – du kannst Links gezielt auf einen Tab teilen (z.B. ?tab=invoices für den Rechnungs-Tab). Der Header mit Buchungsnummer, Status-Badge und Kassieren-Button bleibt in allen Tabs sichtbar.
Tab „Buchungsdetails" – neue Sektionen
Der Detail-Tab zeigt auf Desktop ein 3-Spalten-Grid:
- Gast – Kontaktdaten. Hat der Gast in einer anderen Sprache gebucht, erscheint direkt am Namen dasselbe Sprach-Badge wie im Quick-Access Sheet (z.B. „🇬🇧 EN" mit Sprachname-Tooltip). Die Adresse zeigt das Land ausgeschrieben (z.B. „Deutschland" statt „DE") und erscheint nur, wenn auch Straße, PLZ oder Ort hinterlegt sind – ein Land allein (nur der Checkout-Formular-Default) wird nicht als Adresse angezeigt.
- Aufenthalt – Zeitraum, Parzelle
- Personen & Vehikel – drei separate Zeilen (jeweils nur wenn vorhanden):
- Personen: Gesamtzahl, darunter als eigene kleine Zeile die Aufschlüsselung (z.B. „1× Erwachsener, 1× Jugendlicher, 2× Kleinkind")
- Tiere: Gesamtzahl, darunter analog die Aufschlüsselung nach Kategorie (z.B. „1× Hund")
- Vehikel: eine Zeile pro Vehikeltyp mit Anzahl (z.B. „1× Wohnmobil")
- Optionen & Zuschläge (nur wenn Optionen gebucht) – alle gebuchten Extras mit Menge und Gesamtpreis (z.B. „4× Strom — 20,00 €"). Darunter erscheint klein die Mengen-Formel wie in der Buchungsstrecke (z.B. „3 Pers. × 4 Nächte × 1,00 €") sowie – bei auf Gästekategorien eingeschränkten Optionen – die Personenkreis-Aufschlüsselung (z.B. „2 × Kleinkind, 1 × Jugendlicher").
Am unteren Ende des Detail-Tabs befindet sich die Aktivitäts-Card (standardmäßig eingeklappt). Sie zeigt alle Buchungs-Ereignisse chronologisch (System-Events, Nachrichten, Zahlungen) als Audit-Trail.
Buchungsjournal
Das Journal zeigt den vollständigen Verlauf einer Buchung – chronologisch. Auf der Detailseite erreichst du es über den Tab Buchungsdetails (Aktivitäts-Card am unteren Ende) oder über den Tab Kommunikation (vollständiger Chat-Verlauf).
| Eintragstyp | Bedeutung |
|---|---|
| System | Automatische Ereignisse (z.B. "Buchung bestätigt") |
| Notiz | Manuelle interne Notizen des Betreibers (archivierbar) |
| Nachricht (ausgehend) | Von dir versendete Nachrichten an den Gast |
| Nachricht (eingehend) | Eingehende Nachrichten vom Gast |
| Zahlung erfasst | Zahlungseingang |
| Zahlung gelöscht | Gelöschte Zahlung |
| Erstattung erfasst | Rückzahlung an den Gast – „Erstattung erfasst: 135,00 € (Überweisung)." |
| Erstattung zurückgenommen | Eine erfasste Erstattung wurde über den Papierkorb wieder entfernt |
| Gastdaten geändert | Wer wann welches Gastfeld von welchem Wert auf welchen geändert hat |
Zum Typ-Label an Erstattungs-Einträgen: Der Satz lautet „Erstattung erfasst", das Label daneben sagt noch „Zahlung erfasst" (grünes Wallet-Symbol). Das ist bekannt und noch nicht geändert – der Satz ist maßgeblich.
Gastdaten-Änderungen stehen im Verlauf
Änderst du Name, E-Mail, Telefon oder Anschrift einer Buchung, schreibt das Journal eine Zeile mit wer, wann und von welchem Wert auf welchen:
Gastdaten geändert — E-Mail: — → anna@example.de; Telefon: +49 170 1111111 → +49 170 2222222 05.09.2026, 11:34 · Maria Mitarbeiterin · System
Ein vorher leeres Feld erscheint als „—". Alle acht Gastfelder sind dabei: Vorname, Nachname, E-Mail, Telefon, Straße, PLZ, Ort, Land. Änderst du mehrere Felder in einem Zug, ergibt das eine Zeile, nicht vier.
💡 Nützlich, wenn im Team unklar ist, wer eine Adresse eingetragen oder überschrieben hat.
Alle Zeiten sind die Zeiten deines Platzes
Jede Datums- und Uhrzeitangabe zu einer Buchung – Verlauf, Journal-Einträge, „Erstellt am", Zahlungen, Guthaben-Verrechnungen und der Kommunikations-Reiter – zeigt die Zeit an deinem Campingplatz. Dieselbe Uhr, die im Dashboard-Kopf steht.
Es ist egal, wo du sitzt und wie dein Rechner eingestellt ist. Welche Zeitzone gilt, stellst du in den Stammdaten ein.
Notiz hinzufügen
Interne Notizen sind nur für dich und deine Mitarbeiter sichtbar:
- Wechsle zum Tab Kommunikation
- Wähle im Composer den Modus „Interne Notiz"
- Gib deine Notiz ein
- Klicke auf „Notiz speichern"
Nachricht an Gast verfassen
- Wechsle zum Tab Kommunikation
- Stelle sicher, dass der Composer auf „Nachricht an Gast" steht
- Verfasse deine Nachricht
- Klicke auf Senden
Weitere Details zur Kommunikationsfunktion findest du im Kapitel Kundenkommunikation.
E-Mail erneut senden
Du kannst die zum aktuellen Buchungsstatus passende transaktionale E-Mail erneut versenden – z.B. wenn ein Gast angibt, keine Bestätigungsmail erhalten zu haben.
Über das Quick-Access Sheet (schnellster Weg):
Im Sheet-Kopf siehst du neben der Gast-E-Mail-Adresse ein kleines Senden-Icon. Ein Klick darauf versendet die passende Mail sofort erneut. Das Icon ist nur bei Buchungen mit Status Offen, Bestätigt und Storniert sichtbar – bei „Abgelehnt" erscheint es nicht.
Weitere Informationen zu E-Mail-Benachrichtigungen findest du im Kapitel E-Mail-Benachrichtigungen.
Benachrichtigungen
Neue Buchungsanfragen und andere Ereignisse erscheinen als Benachrichtigungen. Du erreichst sie auf zwei Wegen:
- Glocke (oben im Sidebar-Kopf) – ein Klick öffnet ein Popover mit den letzten Meldungen und einem roten Zähler-Badge für Ungelesenes.
- Vollseite – über das Glocken-Symbol bzw. den Eintrag in der Navigation gelangst du zur Seite Benachrichtigungen (
/benachrichtigungen) mit der kompletten Historie.
Es gibt vier Benachrichtigungstypen: Neue Buchungen, Stornierungen durch Gäste, Zahlungseingänge und Gast-Nachrichten.
Gemeinsamer Lese-Status: Benachrichtigungen sind platz-weit – der Lese-Status gilt für alle Mitarbeitenden gemeinsam. Markiert jemand etwas als gelesen, ist es für das ganze Team gelesen.
Persönlicher Glocken-Filter (Zahnrad)
Du kannst für dich persönlich festlegen, über welche Typen die Glocke dich informiert:
- Öffne die Glocke und klicke oben rechts (neben „Alle als gelesen") auf das Zahnrad.
- Die Ansicht „Benachrichtigungen anpassen" zeigt einen Schalter je Typ (an = informieren, aus = stumm).
Diese Einstellung ist persönlich pro Nutzer und bleibt dauerhaft gespeichert (nicht nur im Browser – auch auf anderen Geräten gleich).
Wirkung eines stummgeschalteten Typs: Er erscheint nicht mehr in der Glocke und zählt nicht im roten Badge. Auf der Vollseite Benachrichtigungen bleibt er aber sichtbar – es geht nichts verloren.
Abgrenzung: Dieser Filter steuert nur die In-App-Glocke. Die platz-weite E-Mail-Benachrichtigung (Einstellungen → E-Mail-Benachrichtigungen) ist davon unabhängig.

Ungelesen-Markierung umschalten
In jeder Melde-Zeile (sowohl in der Glocke als auch auf der Vollseite) sitzt rechts ein Status-Icon:
- Gefüllter Punkt = ungelesen
- Hohler Ring = gelesen
Ein Klick schaltet den Status um. Setzt du eine Meldung wieder auf ungelesen, erscheint sie für alle Mitarbeitenden erneut in der Glocke (gemeinsamer Lese-Status).
„Alle als gelesen markieren"
Der Knopf „Alle als gelesen" erscheint nur, wenn es ungelesene Meldungen gibt. Ein Klick öffnet einen Bestätigungs-Dialog mit dem Hinweis, dass dies die Benachrichtigungen für alle Mitarbeitenden des Platzes als gelesen markiert. Das gilt sowohl in der Glocke als auch auf der Vollseite.
Typ-Filter auf der Vollseite
Auf der Seite Benachrichtigungen kannst du die Liste nach Typ filtern – über eine Schaltflächen-Gruppe mit einem Knopf je Typ (Neue Buchungen, Stornierungen durch Gäste, Zahlungseingänge, Gast-Nachrichten) plus Zurücksetzen.
- Inaktiv zeigt jeder Knopf nur sein Icon (Beschriftung im Tooltip), aktiv den vollen farbigen Badge mit Text.
- Es ist immer genau ein Typ wählbar; ein erneuter Klick auf den aktiven Knopf zeigt wieder alle Typen.
- Die Auswahl wird dauerhaft im Browser gemerkt (übersteht Seitenwechsel und Neustart).
- Sind keine Meldungen dieses Typs vorhanden, erscheint ein Hinweis mit Knopf „Alle Typen anzeigen".
Wichtig: Dieser Typ-Filter ist ein reiner Ansichts-Filter der Seite und unabhängig vom persönlichen Glocken-Filter (Zahnrad). Er blendet nichts dauerhaft aus. Der „Alle als gelesen markieren"-Knopf sitzt auf dieser Seite rechts in der Filterzeile.

Berechtigungen
| Aktion | Benötigte Berechtigung |
|---|---|
| Buchungen einsehen | bookings.view |
| Buchung anlegen | bookings.create |
| Gastdaten / Notizen bearbeiten | bookings.edit |
| Interne Notiz löschen | bookings.edit |
| Buchung bestätigen / ablehnen | bookings.confirm |
| Check-in / Check-out durchführen | bookings.checkin |
| Buchung stornieren | bookings.cancel |
| Zahlung kassieren / löschen | bookings.mark_paid |
Berechtigungen werden vom Betreiber in der Mitarbeiterverwaltung vergeben. Siehe Kapitel Berechtigungen.