Handbuch
← Zurück zur Handbuch-Übersicht
Stammdaten · Stand 20.8.2026
Nutzer per CSV importieren
Für die schnelle Erstbestückung eines Mandanten (z. B. beim Onboarding einer größeren Organisation) können Sie mehrere Nutzer in einem Schritt anlegen. Der Import läuft im Screen des jeweiligen Mandanten — die zugeordnete Mandanten-ID kommt aus der URL, sie steht nicht in der CSV.
Wer darf importieren
Wer die Einladungs-Funktion nutzen darf, darf auch importieren —
in der Praxis: FS/CS Bearbeiter und Admin (Permission
mandant_nutzer_einladen).
Wo Sie das Formular finden
https://xdsb.eu/admin/mandanten/ → Mandant öffnen → oberhalb der
Nutzer-Tabelle rechts der Button „📤 CSV-Import“ klicken.
Das Details-Element klappt auf, springt in den Sichtbereich und
setzt den Fokus auf den Datei-Selektor.
Screenshot ergänzt sobald der Screenshot-Runner mit FSCS-Zugang läuft — Aufruf
node scripts/portal-screenshots.mjs --admin.
CSV-Format
Die Datei ist eine ganz normale Text-CSV mit Kopfzeile und den folgenden Spalten (Reihenfolge egal, solange der Header stimmt):
| Spalte | Pflicht | Werte |
|---|---|---|
email |
ja | E-Mail-Adresse |
name |
ja | Vor- und Nachname |
role |
nein | mandant_admin | mandant_user (Default: mandant_user) |
personal_message |
nein | freier Text, wird in die Einladungs-Mail eingebettet |
Beispiel:
email,name,role,personal_message
maria.mueller@beispiel.de,Maria Müller,mandant_admin,Willkommen im xDSB-Portal.
peter.schmidt@beispiel.de,Peter Schmidt,mandant_user,
lisa.weber@beispiel.de,Lisa Weber,mandant_user,
Zulässige Trennzeichen: Komma (,), Semikolon (;), Tab, Pipe
(|) — der Server erkennt sie automatisch. Kodierung: UTF-8
(Excel: „Speichern als“ → „CSV UTF-8“). Optionales BOM ist
zulässig. CP1252 wird als Fallback ebenfalls akzeptiert.
Limits: max. 500 Zeilen und 512 KB pro Datei. Größere Batches bitte splitten.
Eine Muster-Datei liegt direkt neben dem Formular zum Download bereit.
Was der Import tut
Für jede gültige Zeile:
- legt einen Nutzer im Status eingeladen an (E-Mail-Adresse, Name, Rolle),
- verknüpft ihn mit dem Mandanten aus der URL,
- erzeugt einen Einladungs-Token (7 Tage TTL),
- verschickt die reguläre Einladungs-Mail mit persönlicher Nachricht (falls angegeben),
- schreibt einen Audit-Eintrag und triggert die interne Benachrichtigung (Notification-System).
Fehlerbehandlung
Fehler in einzelnen Zeilen überspringen die betreffende Zeile und verhindern nicht den Import der übrigen. Nach dem Upload zeigt der Screen eine Tabelle mit dem Ergebnis pro Zeile:
- angelegt — Nutzer wurde erstellt, Einladungs-Mail ist raus.
- übersprungen — mit Grund, z. B.:
- „email oder name fehlt“
- „E-Mail ungültig“
- „Konto mit dieser E-Mail existiert bereits“
- „Anlage/Mail fehlgeschlagen: …“
Audit-Eintrag
Nach jedem Import läuft ein Audit-Eintrag mandant_users_csv_import
mit Zusammenfassung {created, skipped, total}. Die einzelnen
Nutzer-Anlagen erscheinen zusätzlich als mandant_user_invited-
Ereignisse — genau wie ein manueller Einzel-Invite.