UC06 – Kunden einladen & Portal
Stand : 2026-08-01, 11:12:55
Branch: main
Status: Abgeschlossen
| Datum, Uhrzeit |
Version |
Änderung |
Autor |
| 01.08.2026 11:12 |
1.0 |
Kopfbereich ergänzt |
David |
Spezifikationsdatei – Leitdokument für Entwicklung, Testing und Abnahme
Stand: Mai 2026 | Version: 0.1
Autor: David | Review: offen
Status-Übersicht
| Schritt |
Bezeichnung |
Status |
Kommentar |
| 1 |
Steckbrief |
✅ Erstellt |
fachlicher Rahmen für UC06 definiert |
| 2 |
Scope & Abgrenzung |
✅ Erstellt |
Einladung, Aktivierung und Portalzugang abgegrenzt |
| 3 |
Rollenmodell |
🟡 In Bearbeitung |
tenant_admin, mitarbeiter und kunde vorbereitet |
| 4 |
Einladungslogik |
🟡 In Bearbeitung |
Statusmodell und Ablauf vorbereitet |
| 5 |
Portalumfang V1 |
🟡 In Bearbeitung |
Kundenportal bewusst begrenzt |
| 6 |
Datenschutz / Sicherheit |
🟡 In Bearbeitung |
Zugriff, Tenant-Isolation und Kundendaten vorbereitet |
| 7 |
Screen-Flow KP-01 bis KP-08 |
⬜ Offen |
Screen-Dokumente noch nicht erstellt |
| 8 |
Review / Quality Gate |
⬜ Offen |
nach Screen-Ausarbeitung durchführen |
Legende: ✅ Erstellt | 🟡 In Bearbeitung | 🔴 Blockiert | ⬜ Offen
1. Steckbrief
| Feld |
Inhalt |
| UC-ID |
UC06 |
| Name |
Kunden einladen & Portal |
| Version |
V1 MVP |
| Zielgruppe |
Tauchschule und Kunden |
| Primärakteur intern |
tenant_admin |
| Sekundärakteur intern |
mitarbeiter |
| Primärakteur extern |
kunde |
| Systemakteur |
Kundenportal / Einladungsmodul |
| Reifegrad V1 |
fachliche Spezifikation gestartet |
| Priorität |
Hoch |
1.1 Ziel
UC06 ermöglicht es einer Tauchschule, Kunden zum Kundenportal einzuladen und deren Zugang zu aktivieren.
Das Kundenportal soll dem Kunden in V1 einen begrenzten, sicheren Self-Service-Zugang geben. Im Fokus stehen eigene Stammdaten, eigenes Equipment, Fristenhinweise, Einladungsannahme und spätere Portal-Hinweise aus UC07.
UC06 ist damit die Grundlage für alle kundenseitigen Online-Funktionen.
2. Scope & Abgrenzung
2.1 Gehört zu UC06 V1
| Bereich |
Enthalten |
| Kunde zum Portal einladen |
Ja |
| Einladung per E-Mail vorbereiten |
Ja, über UC07 angebunden |
| Einladungsstatus führen |
Ja |
| Einladung erneut senden |
Ja, kontrolliert |
| Einladung widerrufen |
Ja |
| Portalzugang aktivieren |
Ja |
| Kunden-Login vorbereiten |
Ja, technische Auth-Integration offen |
| Kunde sieht eigene Daten |
Ja, begrenzt |
| Kunde sieht eigenes Equipment |
Ja |
| Kunde sieht eigene Fristenhinweise |
Ja, aus UC05 |
| Kunde sieht Benachrichtigungen / Portalhinweise |
vorbereitet über UC07 |
| Kunde kann Stammdatenänderung anfragen |
vorbereitet, V1-light |
| vollständige Self-Service-Bearbeitung |
Nein, später |
2.2 Gehört nicht zu UC06 V1
| Bereich |
Hinweis |
| vollständige Kundenverwaltung |
UC01 / Kundenstamm |
| Zahlungsportal |
nicht V1 |
| Rechnungen / Belege |
nicht V1 |
| Online-Buchung von Services |
späterer UC |
| vollständige Profilbearbeitung durch Kunden |
V1 nur Änderungsanfrage / begrenzt |
| Push-Benachrichtigung |
später UC12 |
| Kunden-Chat |
nicht V1 |
| öffentliche Registrierung ohne Einladung |
nicht V1 |
3. Bezug zu anderen Use Cases
| UC |
Bezug |
| UC01 – Equipment erfassen |
liefert Kundenzuordnung und Equipmentdaten |
| UC02 – TÜV-Inspektion einreichen |
liefert Prüfstatus und Fristgrundlagen |
| UC05 – Fristen-Dashboard |
liefert Fristenhinweise für Portal |
| UC07 – Benachrichtigungen |
versendet Einladungen und Portal-Hinweise |
| UC08 – Benutzerverwaltung |
interne Rollen und Berechtigungen |
| UC09 – Berichte & Export |
optionaler Export von Einladungsstatus / Portalnutzung |
| UC-SA – Superadmin-Panel |
Plattformweite Grundeinstellungen, Domains, Mandanten |
4. Rollenmodell V1
| Rolle |
Bedeutung für UC06 |
tenant_admin |
lädt Kunden ein, verwaltet Portalzugänge, sieht Einladungsstatus |
mitarbeiter |
darf Kunden optional einladen oder Status prüfen, falls Tenant erlaubt |
kunde |
nimmt Einladung an und nutzt eigenes Portal |
superadmin |
nicht Zielnutzer des Tenant-Moduls; Plattformregeln später UC-SA |
4.1 Rollenrechte V1
| Aktion |
tenant_admin |
mitarbeiter |
kunde |
| Kundenportal-Übersicht öffnen |
Ja |
Ja / optional |
Nein |
| Kunden einladen |
Ja |
optional |
Nein |
| Einladung erneut senden |
Ja |
optional |
Nein |
| Einladung widerrufen |
Ja |
optional / Nein |
Nein |
| Portalzugang sperren |
Ja |
Nein / optional |
Nein |
| eigenen Portalzugang aktivieren |
Nein |
Nein |
Ja |
| eigene Daten sehen |
Nein |
Nein |
Ja |
| eigenes Equipment sehen |
Nein |
Nein |
Ja |
| eigene Fristen sehen |
Nein |
Nein |
Ja |
| Stammdatenänderung anfragen |
Nein |
Nein |
vorbereitet |
5. Einladungsstatus
| Status |
Bedeutung |
not_invited |
Kunde wurde noch nicht eingeladen |
invitation_draft |
Einladung vorbereitet, aber noch nicht versendet |
invited |
Einladung wurde versendet |
accepted |
Kunde hat Einladung angenommen |
active |
Portalzugang ist aktiv |
expired |
Einladung ist abgelaufen |
revoked |
Einladung wurde widerrufen |
blocked |
Portalzugang wurde gesperrt |
failed |
Einladung konnte nicht zugestellt werden |
6. Fachlicher Ablauf V1
6.1 Einladung vorbereiten
| Schritt |
Beschreibung |
| 1 |
Interner Benutzer wählt Kunden aus |
| 2 |
System prüft Kundendaten und E-Mail-Adresse |
| 3 |
System prüft, ob bereits aktiver Portalzugang existiert |
| 4 |
System erzeugt Einladungsentwurf |
| 5 |
Benutzer prüft Vorschau und bestätigt Versand über UC07 |
| 6 |
Einladung erhält Status invited oder failed |
6.2 Einladung annehmen
| Schritt |
Beschreibung |
| 1 |
Kunde öffnet Einladungslink |
| 2 |
System prüft Token, Tenant und Ablaufdatum |
| 3 |
Kunde bestätigt Zugang / richtet Zugang ein |
| 4 |
System aktiviert Portalzugang |
| 5 |
Kunde landet auf Kundenportal-Startseite |
| 6 |
System protokolliert Aktivierung |
6.3 Portal nutzen
| Schritt |
Beschreibung |
| 1 |
Kunde meldet sich im Portal an |
| 2 |
System zeigt nur eigene Daten und eigenes Equipment |
| 3 |
System zeigt eigene Fristenhinweise |
| 4 |
System zeigt relevante Portal-Hinweise / Benachrichtigungen |
| 5 |
Kunde kann vorgesehene Self-Service-Aktionen nutzen |
7. Portalumfang V1
| Bereich |
V1 |
| Portal-Startseite |
Ja |
| eigene Stammdaten anzeigen |
Ja, begrenzt |
| eigenes Equipment anzeigen |
Ja |
| eigene Fristenhinweise anzeigen |
Ja |
| Portal-Hinweise / Benachrichtigungen anzeigen |
vorbereitet |
| Stammdatenänderung direkt speichern |
Nein |
| Stammdatenänderung anfragen |
vorbereitet |
| Dateien hochladen |
nicht V1 |
| Zahlungen |
nicht V1 |
| Service direkt buchen |
nicht V1 |
8. Einladungstoken / Sicherheit
| Thema |
Regel |
| Token |
einmalig, zeitlich begrenzt, nicht erratbar |
| Tenant-Bezug |
Token muss eindeutig einem Tenant zugeordnet sein |
| Kunde-Bezug |
Token muss eindeutig einem Kunden zugeordnet sein |
| Ablaufdatum |
abgelaufene Einladungen werden nicht akzeptiert |
| Widerruf |
widerrufene Einladungen sind ungültig |
| Mehrfachnutzung |
bereits verwendeter Token darf nicht erneut aktiviert werden |
| Protokollierung |
Einladung, Annahme, Ablauf und Widerruf speichern |
9. Datenmodell-Vorbereitung
9.1 Mögliche Tabellen / Bereiche
| Bereich |
Bedeutung |
customer_portal_accounts |
Portalzugang je Kunde |
customer_invitations |
Einladungen und Status |
customer_invitation_tokens |
technische Tokenverwaltung, falls getrennt |
customer_portal_sessions |
spätere Session-/Loginbezüge, falls nötig |
customer_portal_activity_log |
Portalaktivitäten |
notification_queue |
Einladung über UC07 |
audit_log |
sicherheitsrelevante Aktionen |
9.2 Wichtige Felder
| Feld |
Beschreibung |
tenant_id |
Tenant-Isolation |
customer_id |
Kundenbezug |
portal_status |
not_invited, invited, active, blocked usw. |
invitation_status |
Status der Einladung |
invited_at |
Versandzeitpunkt |
accepted_at |
Annahmezeitpunkt |
expires_at |
Ablaufdatum |
revoked_at |
Widerrufszeitpunkt |
revoked_by |
ausführender Benutzer |
last_login_at |
letzter Portalzugriff |
created_by |
interner Benutzer / System |
10. Sicherheits- und Datenschutzregeln
| ID |
Regel |
| UC06-SEC-R01 |
Tenant-Isolation ist zwingend |
| UC06-SEC-R02 |
Kunde darf nur eigene Daten sehen |
| UC06-SEC-R03 |
Kunde darf keine internen Prüfnotizen sehen |
| UC06-SEC-R04 |
Einladungslinks müssen zeitlich begrenzt sein |
| UC06-SEC-R05 |
Einladungslinks dürfen nicht mehrfach aktivierbar sein |
| UC06-SEC-R06 |
Portalzugang kann gesperrt werden |
| UC06-SEC-R07 |
Einladung, Annahme, Widerruf und Sperre müssen protokolliert werden |
| UC06-SEC-R08 |
Kundendatenänderungen dürfen in V1 nicht ungeprüft direkt Stammdaten überschreiben |
| UC06-SEC-R09 |
Portal darf keine fremden Tenant- oder Kundendaten leaken |
11. Screen-Flow KP-01 bis KP-08
| Screen |
Bezeichnung |
Zweck |
| KP-01 |
Kundenportal-Übersicht intern |
interne Übersicht über Portalstatus und Einladungen |
| KP-02 |
Kunde auswählen & Einladung vorbereiten |
Kundenauswahl, Datenprüfung, Einladungsentwurf |
| KP-03 |
Einladungsvorschau & Versandübergabe |
Einladung prüfen und an UC07 übergeben |
| KP-04 |
Einladungsstatus & Fehler |
Versand-, Annahme-, Ablauf- und Fehlerstatus prüfen |
| KP-05 |
Einladung annehmen |
kundenseitiger Aktivierungsablauf |
| KP-06 |
Kundenportal-Startseite |
kundenseitige Übersicht nach Login |
| KP-07 |
Mein Equipment & Fristen |
Kundensicht auf eigenes Equipment und Fristen |
| KP-08 |
Meine Daten / Änderungsanfrage |
Kundensicht auf Stammdaten und Änderungswunsch |
11.1 Empfohlener V1-Kern
| Screen |
Bewertung |
| KP-01 |
zwingend V1 |
| KP-02 |
zwingend V1 |
| KP-03 |
zwingend V1 |
| KP-04 |
zwingend V1 |
| KP-05 |
zwingend V1 |
| KP-06 |
zwingend V1 |
| KP-07 |
zwingend V1 |
| KP-08 |
V1-light |
12. Akzeptanzkriterien UC06 V1
| ID |
Kriterium |
| UC06-AC01 |
tenant_admin kann Kundenportal-Übersicht öffnen |
| UC06-AC02 |
System zeigt Portalstatus je Kunde |
| UC06-AC03 |
tenant_admin kann Einladung für Kunden vorbereiten |
| UC06-AC04 |
System verhindert Einladung ohne gültige Empfängeradresse |
| UC06-AC05 |
Einladung wird über UC07 versendet oder vorbereitet |
| UC06-AC06 |
Kunde kann gültige Einladung annehmen |
| UC06-AC07 |
abgelaufene oder widerrufene Einladung kann nicht angenommen werden |
| UC06-AC08 |
Kunde sieht im Portal nur eigene Daten |
| UC06-AC09 |
Kunde sieht eigenes Equipment und eigene Fristenhinweise |
| UC06-AC10 |
System protokolliert Einladung, Annahme, Widerruf und Sperre |
| UC06-AC11 |
Portal zeigt keine internen Prüfnotizen |
13. Offene Fragen / Restentscheidungen
| ID |
Frage |
Vorschlag / Status |
| UC06-O01 |
Welcher Auth-Mechanismus wird für Kunden genutzt? |
technisch offen |
| UC06-O02 |
Wie lange ist eine Einladung gültig? |
Vorschlag: 14 Tage |
| UC06-O03 |
Darf mitarbeiter Kunden einladen? |
offene Rollenentscheidung |
| UC06-O04 |
Darf Kunde eigene Stammdaten ändern oder nur Änderung anfragen? |
V1: nur Änderungsanfrage |
| UC06-O05 |
Wird Portalzugang automatisch aktiv nach Annahme? |
Vorschlag: Ja |
| UC06-O06 |
Wird E-Mail-Verifikation separat benötigt? |
abhängig von Auth-Mechanismus |
| UC06-O07 |
Werden Portal-Hinweise direkt aus UC07 angezeigt? |
vorbereitet |
| UC06-O08 |
Wie wird Kunde eindeutig mit Auth-User verknüpft? |
technische Detailklärung |
| UC06-O09 |
Gibt es mehrere Kundenkontakte pro Kunde? |
später prüfen |
| UC06-O10 |
Wird Einladung erneut senden begrenzt? |
Empfehlung: Rate-Limit / Protokoll |
14. Nächster Schritt
Als nächstes sollten die Screen-Vorgaben unter folgendem Ordner angelegt werden:
docs/developer/uc06/screens/
Start mit:
KP-01 – Kundenportal-Übersicht intern
Je Screen werden analog zu UC02, UC03, UC05, UC07 und UC08 drei Dateien erstellt: