E-Mail-Templates
[admin] [email-templates] [i18n] [einstellungen]
licensio versendet im Namen des Anbieter automatische E-Mails an Kunden — Aktivierung, Willkommen, Kündigung und mehr. Jeder dieser Text-Bausteine ist ein Template, das du anpassen kannst. Ohne Anpassung greift der mehrsprachige Default (Deutsch oder Englisch, je nach Anbieter-Sprache).
Für wen
Anbieter-Admins, die die Tonalität ihrer Kunden-Kommunikation steuern wollen.
Wo finde ich die Templates?
Einstellungen → E-Mail Vorlagen (Pfad: /settings/emails)
Im Editor wählst du oben den Template-Slot, bearbeitest Subject + Body, und kannst rechts die verfügbaren Variablen aus einer Liste übernehmen.
Die 10 Template-Slots
Jeder Slot wird zu einem klar definierten Ereignis ausgelöst:
activation— Kunde wurde vom Anbieter manuell freigeschaltet. Versendet vom Admin-Action "Aktivieren".welcome— Self-Service-Registrierung über das Widget oder/join. Bestätigt Kontoerstellung, weist auf nötige Freischaltung hin.payment_reminder— eine wiederkehrende Zahlung schlug fehl. Aufforderung, die Zahlungsmethode zu prüfen (enthält{{portal_link}}).payment_request— für den Zugang des Kunden wurde eine Rechnung erstellt ("Rechnung erhalten"). Bittet, sie innerhalb von 14 Tagen über einen sicheren Link zu begleichen (Karte oder SEPA-Lastschrift); der Zugang wird nach Zahlung automatisch freigeschaltet. Enthält{{payment_link}}.cancellation— Kunde hat gekündigt. Bestätigt das Kündigungsdatum.cancellation_withdraw— Kündigung wurde vor Ablauf zurückgezogen.rejection— Anbieter lehnt eine Registrierung ab.email_change_old— Kunde ändert die Login-Email. Benachrichtigt die alte Adresse als Sicherheits-Notiz.email_change_new— Kunde ändert die Login-Email. Sendet Setup-Link an die neue Adresse.interval_change— Abrechnungsintervall wurde geändert (z.B. monatlich → jährlich).
Verfügbare Variablen
Variablen werden im Template als {{variable_name}} geschrieben und beim Versand ersetzt. Heutige Variablen-Namen sind historisch teilweise gemischt-sprachig (kunde_firma, kundennummer) — eine Refactor-Migration auf neutrale englische Namen (customer_name, customer_number) ist im Backlog.
In allen Slots verfügbar:
{{tenant_name}}— Name deines Unternehmens{{kunde_firma}}— Firmenname (oder Nachname) des Kunden{{kundennummer}}— Automatisch generierte Kundennummer (z.B. PT-2026-0042){{support_email}}— Support-Adresse deines Anbieter
Slot-spezifisch:
{{cancellation_date}}— nur incancellation{{portal_link}}— nur inpayment_reminder{{payment_link}}— nur inpayment_request(sicherer Hosted-Invoice-Link, 14-Tage-Frist){{old_email}}/{{new_email}}— nur inemail_change_old{{reset_url}}— nur inemail_change_new{{new_interval}}— nur ininterval_change
Mehrsprachigkeit
Die Defaults existieren in Deutsch (de) und Englisch (en). In welcher Sprache eine Kunden-Mail rausgeht, löst resolveCustomerLanguage auf: die im Portal gewählte Sprache des Kunden (customers.preferred_language) gewinnt; ohne gespeicherte Wahl die Portalsprache des Anbieters (tenants.settings.default_locale, konfigurierbar unter Erweiterte Einstellungen → Sprache & Region). Ist auch die nicht gesetzt, entscheidet das Land: Anbieter in DE/AT bekommen Deutsch, jedes andere Land Englisch. Plant Technology (Land DE, keine explizite default_locale) bleibt also deutsch, ein Nicht-DE-Anbieter wird standardmäßig englisch.
Wenn du ein eigenes Template hinterlegst, wird dein Text in jeder Sprache verwendet. Die Templates sind heute nicht pro Sprache pflegbar — Multi-Locale-Templates kommen mit Phase 5 (Multi-Locale Foundation für FR/ES/IT).
Override-Regeln
- Fehlt das Custom-Template komplett: Default-Sprache aus
default_localegreift. - Custom-Subject gesetzt, Body leer: Default-Body wird verwendet, dein Subject gewinnt (oder umgekehrt). Beide Felder werden unabhängig gemerged.
- Variablen werden nach dem Merge ersetzt — du kannst also einen Default-Body lassen und nur dein Subject anpassen, ohne Variablen-Konsistenz prüfen zu müssen.
Test-Versand
Im Editor gibt es einen "Test senden"-Button — schickt das aktuell bearbeitete Template an deine Login-Adresse, mit Platzhalter-Werten für alle Variablen.
Wann werden Änderungen wirksam?
Sofort. Die nächste E-Mail, die nach dem Speichern für den jeweiligen Slot rausgeht, nutzt dein Template. Bereits versendete E-Mails sind nicht betroffen.
Welche Versand-Routen die Templates nutzen
Transaktionale Kunden-Mails werden aus diesem Template-System gerendert (statt hardcoded HTML-Bodies), darunter:
- Admin: Kunden-Freischaltung (
activate) und die B2B-Rechnungs-Mail (payment_request, inkl.resend-payment-link), Anbieter-Kündigung (cancel), Email-Wechsel (alt + neu = 2 Versände), Registrierungs-Ablehnung (reject), die Welcome-/Einladungs-Mail. - Portal: Self-Service-Kündigung (
cancel-subscription), Kündigungs-Rückzug (cancel-subscription/withdraw), Intervall-Wechsel (change-interval).
Einige Routen (vor allem die Stripe-Webhook-Mails) nutzen noch das ältere Muster und werden in einem eigenen Sprint migriert.
Variablen sauber halten
Wenn du Variablen entfernst (z.B. {{kundennummer}} aus dem Welcome-Template löschst), wird die Variable einfach nicht ersetzt — die E-Mail enthält dann eine leere Stelle, kein Fehler. Wenn du eine Variable einbaust, die für diesen Slot nicht definiert ist (z.B. {{cancellation_date}} im Welcome-Slot), wird sie ebenfalls leer ersetzt.
Verwandt
- Mehrsprachigkeit (i18n) — Anbieter-Locale-Setting, locale-aware Datums-/Zahlen-Formate
- E-Mail-Benachrichtigungen — wann erhältst du als Anbieter-Admin Hinweise (andere Funktion)
- Einstellungen-Übersicht