Zum Inhalt

Konditionale Statements in Mahntexten

Das Acucollect-System bietet die Möglichkeit, Mahntexte durch konditionale Statements (Bedingungen) dynamisch an den jeweiligen Empfänger anzupassen. Dies wird durch die integrierte Template-Engine im Hintergrund ermöglicht.

Dadurch können Sie Texte verfassen, die sich automatisch verändern, je nachdem, welche Daten beim jeweiligen Debitor vorliegen (z.B. geschlechtsspezifische Anrede, Vorhandensein einer Mahngebühr oder spezifische Zahlungsfristen).

Funktionsweise

Bevor ein Mahntext versendet wird, durchläuft er zwei Phasen der Text-Ersetzung:

  1. Auswertung: Alle logischen Ausdrücke wie {% if ... %} und {% else %} werden ausgewertet.
  2. Platzhalter-Ersetzung: Normale Platzhalter in geschweiften Klammern (z.B. {betrag} oder {name}) werden durch die tatsächlichen Werte ersetzt.

Verfügbare Variablen für Bedingungen

Sie können in den {% if ... %}-Bedingungen folgende Variablen verwenden, um die Logik zu steuern:

Variable Beschreibung Beispielwert
anrede Die Anrede des Ansprechpartners "Herr", "Frau", ""
vorname Der Vorname des Ansprechpartners "Max"
nachname Der Nachname des Ansprechpartners "Mustermann"
name Der vollständige Name (oder Firmenname, falls kein Ansprechpartner) "Max Mustermann"
debitor_firma Der Firmenname des Debitors "Muster GmbH"
betrag Der offene Betrag (formatiert) "1.500,00 €"
faelligkeitsdatum Das Fälligkeitsdatum der Rechnung "15.05.2026"
mahngebuehr Die Mahngebühr für diese Stufe "5,00 €"
rechnungsnummer Die Rechnungsnummer "RE-2026-001"
zahlungslink Link zur Online-Zahlung "https://pay.example.com/..."
firmenname Ihr eigener Firmenname "Acme Corp"

Syntax-Grundlagen

Eine Bedingung beginnt immer mit {% if <Bedingung> %}, kann optionale {% elif <Bedingung> %} (Sonst Wenn) oder {% else %} (Sonst) Blöcke enthalten und muss mit {% endif %} abgeschlossen werden.

Anwendungsbeispiele

1. Geschlechtsspezifische Anrede

Die häufigste Anwendung ist die dynamische Anrede basierend auf dem Geschlecht des Ansprechpartners. Wenn keine Anrede hinterlegt ist, kann auf eine neutrale oder firmenbezogene Anrede ausgewichen werden.

{% if anrede == 'Herr' %}
Sehr geehrter Herr {nachname},
{% elif anrede == 'Frau' %}
Sehr geehrte Frau {nachname},
{% else %}
Sehr geehrte Damen und Herren,
{% endif %}

wir möchten Sie freundlich daran erinnern, dass die Rechnung {rechnungsnummer} über {betrag} noch offen ist.

2. Dynamischer Text bei Mahngebühren

Sie können bestimmte Textpassagen nur dann einblenden, wenn auch tatsächlich eine Mahngebühr erhoben wird.

Bitte überweisen Sie den offenen Betrag in Höhe von {betrag} bis zum {faelligkeitsdatum}.

{% if mahngebuehr != '0,00 €' %}
Zusätzlich berechnen wir für den bisherigen Verzug eine Mahngebühr in Höhe von {mahngebuehr}. 
Der zu zahlende Gesamtbetrag beläuft sich somit auf den Hauptbetrag plus Mahngebühr.
{% endif %}

3. Unterscheidung zwischen Privatkunden und Firmenkunden

Wenn Sie wissen möchten, ob ein Ansprechpartner (Person) hinterlegt ist oder es sich um ein unpersönliches Firmenkonto handelt:

{% if vorname %}
Hallo {vorname},
wir haben festgestellt, dass deine Zahlung noch aussteht.
{% else %}
Sehr geehrte Damen und Herren der {debitor_firma},
wir haben festgestellt, dass Ihre Zahlung noch aussteht.
{% endif %}

Wichtige Hinweise

[!WARNING] Zeilenumbrüche beachten Jeder Jinja-Tag (wie {% if ... %}) erzeugt potenziell Leerzeilen im fertigen Text, wenn er auf einer eigenen Zeile steht. Achten Sie bei der Formatierung darauf, keine unnötigen Leerzeilen zu produzieren, oder nutzen Sie die Whitespace-Kontrolle von Jinja2, falls erforderlich (z.B. {%- if ... -%}).

[!TIP] Standard-Platzhalter weiterhin nutzen Für die normale Ausgabe von Werten im Text (wie Beträge oder Namen) nutzen Sie weiterhin die einfache Schreibweise in einfachen geschweiften Klammern (z.B. {betrag}). Die {% ... %}-Syntax wird nur für die Logik (Wenn/Dann) benötigt.