← Zurück zur LeaveFlow-Übersicht
Dieser Leitfaden erklärt alle administrativen Funktionen von LeaveFlow. Admins haben Zugriff auf den /admin/...-Bereich und sind für die vollständige Systemkonfiguration verantwortlich.
Hier wird das Kernprofil der Organisation konfiguriert.
| Feld | Beschreibung |
|---|---|
| Unternehmensname | Wird in der gesamten UI und in PDF-Exporten angezeigt |
| Adresse | Wird im PDF-Briefkopf verwendet |
| Steuernummer / Handelsregisternummer | Wird im PDF-Briefkopf verwendet |
| Logo | PNG/JPG/SVG bis 1 MB — wird in PDF-Exporten angezeigt |
| Akzentfarbe | Hex-Farbe (#RRGGBB) für zukünftiges UI-Theming |
| Eskalationstage | Tage, nach denen eine unbearbeitete Genehmigungsanfrage an den Stellvertreter eskaliert wird |
| Aufbewahrungsfrist (Monate) | DSGVO: Wie lange Mitarbeiterdaten nach Austritt gespeichert werden (Standard: 36 Monate) |
| Resturlaub bei Austritt | Was mit dem verbleibenden Urlaubssaldo beim Mitarbeiteraustritt passiert: Auszahlen, Pflichtabbau oder Freistellung |
Der Unternehmensdatensatz wird beim Einrichtungsassistenten erstellt und kann hier jederzeit bearbeitet werden.
Benutzer sind die Login-Konten für LeaveFlow. Jede Person, die sich einloggt, benötigt ein Benutzerkonto. Ein Mitarbeiterdatensatz ist separat und verknüpft mit einem Benutzerkonto.
| Rolle | Zugriff |
|---|---|
ROLE_EMPLOYEE |
Selbstservice: Urlaubsanträge stellen, Saldo einsehen, Profil verwalten |
ROLE_MANAGER |
Mitarbeiter-Zugriff + Genehmigungswarteschlange, Teamkalender |
ROLE_ADMIN |
Vollzugriff inkl. gesamter Admin-Konfiguration |
/admin/users/new navigierenAdmins können jederzeit einen neuen Passwort-Reset-Link für bestehende Benutzer von der Benutzer-Detailseite aus versenden.
Setze den Benutzerstatus auf Inaktiv auf der Bearbeitungsseite. Inaktive Benutzer können sich nicht einloggen. Die Urlaubshistorie bleibt erhalten.
Wenn ein Benutzer keinen Zugriff mehr auf seine Authenticator-App hat, kann ein Admin sein 2FA-Enrollment unter /admin/users/{id}/2fa-reset zurücksetzen. Der Benutzer muss sich beim nächsten Login neu enrollen.
Abteilungen werden für die Genehmigungsweiterleitung und Teamkalender-Gruppierung verwendet.
| Feld | Beschreibung |
|---|---|
| Name | Anzeigename |
| Abteilungsleiter | Der Manager, der Genehmigungsanfragen für diese Abteilung erhält |
| Stellvertreter | Ersatzgenehmiger, wenn der Leiter nicht verfügbar ist (muss sich vom Leiter unterscheiden) |
Genehmigungslogik: Wenn ein Mitarbeiter einen Urlaubsantrag stellt, wird dieser an den Abteilungsleiter weitergeleitet. Falls kein Leiter konfiguriert ist, fällt es auf jeden Benutzer mit ROLE_ADMIN zurück.
Standorte definieren den Arbeitsort eines Mitarbeiters. Sie bestimmen, welcher Feiertagskalender des Bundeslands für die Urlaubsberechnung gilt.
| Feld | Beschreibung |
|---|---|
| Name | Anzeigename (z. B. „Berliner Büro") |
| Land | ISO-2-Ländercode (aktuell DE) |
| Bundesland | ISO 3166-2-Code (z. B. DE-BY für Bayern) |
| Stadt | Optionales Anzeigefeld |
Das Bundesland wird vom
HolidayCalculatorverwendet, um zu bestimmen, welche Feiertage Nicht-Arbeitstage für Mitarbeiter an diesem Standort sind.
Abwesenheitstypen definieren, welche Art von Urlaub beantragt werden kann. Jeder Typ steuert, ob er vom Anspruchssaldo abgezogen wird und ob eine Managergenehmigung erforderlich ist.
| Feld | Beschreibung |
|---|---|
| Name | Anzeigename (z. B. „Urlaub", „Krankheit") |
| Vom Urlaubssaldo abziehen | Ob genehmigte Anträge Anspruchsstunden verbrauchen |
| Genehmigung erforderlich | Ob Anträge den Genehmigungsworkflow durchlaufen |
| Farbe | Hex-Farbe im Teamkalender |
| Krankheitsnachverfolgung | Flag für 6-Wochen-Krankenbenachrichtigung (§3 EntgFG) |
| Aktiv | Inaktive Typen werden im Antragsformular ausgeblendet |
Standard-Abwesenheitstypen für ein neues Unternehmen:
| Typ | Abzug | Genehmigung | Hinweise |
|---|---|---|---|
| Urlaub | Ja | Ja | Regulärer Jahresurlaub (BUrlG) |
| Resturlaub | Ja | Ja | Übertrag aus dem Vorjahr |
| Krankheit | Nein | Nein | Krankmeldung — automatisch erfasst, Krankheitsnachverfolgung aktiv |
| Überstundenabbau | Ja | Ja | Ausgleich für Überstunden |
| Sonderurlaub | Nein | Ja | Sonderurlaub (§616 BGB) |
| Fortbildung | Nein | Ja | Schulung / Weiterbildung |
Ansprüche definieren, wie viele Urlaubsstunden ein Mitarbeiter in einem bestimmten Jahr hat. LeaveFlow unterscheidet zwischen regulären Ansprüchen (zu Jahresbeginn gewährt) und Resturlaub (aus dem Vorjahr übertragen, mit Ablaufdatum).
/admin/entitlements/new navigierenDas Formular zeigt einen Pro-rata-Hinweis, wenn der Mitarbeiter mitten im Jahr eingetreten ist (BUrlG §5 — die Zwölftelregel wird angewendet).
Admins können hoursGranted und das expiresAt-Datum bestehender Ansprüche bearbeiten. Jede Änderung erfordert einen Pflichtgrund und erzeugt einen Audit-Eintrag.
Den Jahresübergangs-Befehl zu Beginn des neuen Jahres ausführen, um automatisch Resturlaub aus verbleibenden regulären Salden zu erstellen:
# Erst Testlauf
docker compose exec -u app app php bin/console app:entitlement:year-transition --year=2027 --dry-run
# Anwenden
docker compose exec -u app app php bin/console app:entitlement:year-transition --year=2027
LeaveFlow enthält einen eingebauten Feiertagsmotor für alle 16 deutschen Bundesländer, berechnet mit der Gaußschen Osterformel.
Nach Jahr und Bundesland filtern. Feiertage sind nach Geltungsbereich farbcodiert:
| Geltungsbereich | Farbe | Bedeutung |
|---|---|---|
| National | Blau | Gilt für alle Bundesländer (z. B. Neujahr, Tag der Deutschen Einheit) |
| Regional | Grün | Gilt für bestimmte Bundesländer (z. B. Fronleichnam in BY, BW, ...) |
| Unternehmen | Orange | Unternehmensweite Nicht-Arbeitstage, vom Admin hinzugefügt |
Überschreibe den berechneten Feiertagskalender für spezifische Situationen:
added — einen Feiertag hinzufügen, den der Rechner nicht standardmäßig enthält (z. B. Augsburger Friedensfest für BY-Augsburg)removed — einen Feiertag aus der Standardberechnung entfernen (z. B. Mariä Himmelfahrt für protestantische BY-Gemeinden)Überschreibungen können optional auf einen bestimmten Standort beschränkt werden.
Unternehmensweite Nicht-Arbeitstage hinzufügen (z. B. Betriebsurlaub 27.–31. Dezember). Diese gelten für alle Mitarbeiter unabhängig von Standort oder Bundesland.
Sperrzeiträume blockieren Urlaubsanträge für einen definierten Zeitraum. Wenn ein Mitarbeiter einen Antrag stellt, der einen Sperrzeitraum überschneidet, zeigt das System sofort einen Fehler in der Live-Vorschau — noch vor der Einreichung.
| Feld | Beschreibung |
|---|---|
| Name | Beschreibung für Mitarbeiter (z. B. „Jahresabschluss") |
| Start / Ende | Inklusiver Datumsbereich |
| Abteilung | Optional — auf eine bestimmte Abteilung beschränken oder leer für unternehmensweit |
LeaveFlow unterstützt vier Anmeldemethoden. Mehrere Adapter können gleichzeitig aktiviert sein.
Standard. Benutzer melden sich mit E-Mail + Passwort an. Passwort-Reset per E-Mail. Zwei-Faktor-Authentifizierung (TOTP) verfügbar.
Google OAuth-Login für die Organisation aktivieren:
https://deine-domain.de/connect/google/checkGOOGLE_CLIENT_ID und GOOGLE_CLIENT_SECRET in .env.local setzen/admin/company/settings aktivieren@dein-unternehmen.de)Google-Benutzer umgehen die LeaveFlow-2FA-Anforderung (Google's eigene IdP-MFA greift).
Entra ID (ehemals Azure AD) SSO aktivieren:
https://deine-domain.de/connect/entra/checkENTRA_CLIENT_ID und ENTRA_CLIENT_SECRET in .env.local setzen/admin/company/settings setzenDas Setzen einer Tenant ID wird dringend empfohlen. Ohne sie können persönliche Microsoft-Konten beliebige E-Mail-Claims liefern (nOAuth-Sicherheitslücke).
Entra-Benutzer umgehen die LeaveFlow-2FA.
LDAP für On-Premise-Active-Directory-Integration aktivieren:
/admin/company/settings setzen: Host, Port, Verschlüsselung (none/tls/ssl), Bind DN, Bind-Passwort, Base DN, BenutzerfilterLDAP_BIND_PASSWORD in .env.local setzenLDAP-Benutzer behalten die LeaveFlow-2FA-Anforderung.
2FA für alle Benutzer mit lokaler Authentifizierung unternehmensweit erzwingen:
Einzelne Benutzer richten 2FA in ihrem Profil ein (/profile/2fa). Sie können:
Das Statistik-Dashboard ist die Startseite für Admins nach dem Login. Es zeigt:
PDF-Export — Druckbares A4-Statistiküberblatt mit Unternehmens-Briefkopf (Logo + Adresse), KPI-Tabelle, monatliche Textzusammenfassung und Abteilungsaufschlüsselung. Generiert via dompdf.
CSV-Export — Urlaubskontostände aller Mitarbeiter, semikolon-getrennt mit UTF-8-BOM (Excel/Numbers-kompatibel). Unterstützt Jahresfilter. Verwendet deutsches Dezimalkomma-Format.
Mitarbeiter in großer Stückzahl per semikolon-getrennter CSV-Datei importieren.
Auf Vorlage herunterladen klicken, um eine CSV mit allen erforderlichen und optionalen Spalten mit Beispielwerten zu erhalten.
| Spalte | Format | Beispiel |
|---|---|---|
name |
Freitext | Max Mustermann |
email |
Gültige E-Mail | max@beispiel.de |
employee_number |
Alphanumerisch | EMP-001 |
location_id |
Ganzzahl (Standort-ID) | 1 |
joined_at |
TT.MM.JJJJ oder JJJJ-MM-TT |
01.01.2024 |
| Spalte | Format | Standard |
|---|---|---|
weekly_hours |
Dezimalzahl (Komma oder Punkt) | 40 |
role |
employee, manager, admin |
employee |
CSV-Datei hochladen. LeaveFlow validiert jede Zeile und zeigt eine Vorschautabelle. Zeilen mit Fehlern werden mit spezifischen Fehlermeldungen hervorgehoben.
Auf Importieren klicken, um alle gültigen Zeilen zu erstellen. Eine Zusammenfassung zeigt, wie viele Datensätze erstellt wurden.
LeaveFlow unterstützt DSGVO-konformes Datenlebenzyklusmanagement.
Anzahl der Monate festlegen, wie lange Mitarbeiterdaten nach Austritt gespeichert werden. Standard: 36 Monate (BUrlG-Minimum für deutsche Unternehmen).
Konfigurieren, was mit dem verbleibenden Urlaubssaldo beim Mitarbeiteraustritt passiert:
| Option | Verhalten |
|---|---|
| Auszahlen | Admin sieht den verbleibenden Saldo — Auszahlung erfolgt extern |
| Pflichtabbau | Mitarbeiter muss verbleibenden Urlaub vor Austrittsdatum nehmen |
| Freistellung | Verbleibende Tage werden als Freistellungs-Abwesenheit erfasst |
Nach Ablauf der Aufbewahrungsfrist führt ein täglicher Scheduler die Anonymisierungsroutine aus:
Der Admin erhält 30 Tage vor der Anonymisierung eine Vorwarnung.
Beim Erfassen eines Mitarbeiteraustritts unter /admin/employees/{id}/exit:
API-Token authentifizieren Machine-to-Machine-Anfragen an die LeaveFlow REST API. Vollständige Endpunktreferenz: API-Dokumentation.
/admin/api-tokens/new navigieren| Status | Verhalten |
|---|---|
| Aktiv | Authentifiziert API-Anfragen |
Widerrufen (revokedAt gesetzt) |
Gibt 401 Unauthorized zurück |
Abgelaufen (expiresAt in der Vergangenheit) |
Gibt 401 Unauthorized zurück |
Tokens sind unternehmensgebunden — sie können nur auf Daten des Unternehmens zugreifen, in dem sie erstellt wurden.
Token widerrufen: auf Widerrufen auf der Token-Detailseite klicken. Widerruf ist sofort wirksam und kann nicht rückgängig gemacht werden.