Wohin mit der Rechnung?
ZUGFeRD, x-Rechnung, Endkunde, factura-PA…
Steuern Sie über DotLiquid-Formeln in JTL-Wawi den Rechnungsempfänger!
Dieser Leitfaden bietet eine präzise und flexible Möglichkeit, in JTL-Wawi über DotLiquid-Formeln zu steuern, welche E-Mail-Adresse für den Versand von Rechnungen verwendet wird. Hier ist eine Zusammenfassung der Hauptpunkte und Tipps zur Implementierung:
1. Anpassung der Standard-Mailausgabe in JTL-Wawi
Navigieren Sie zu Admin > Druck-/E-Mail Exportvorlagen.
Bearbeiten Sie die Vorlage Ihrer Rechnungsmail.
Stellen Sie den Empfänger auf Benutzerdefiniert und passen Sie die Ausgabe über eine DotLiquid-Formel an.
Beispiel für deutsche B2B-Kunden (Standardumleitung):
{% if Report.InvoiceBillToAddress.Company <> "" and Report.InvoiceBillToAddress.CountryISO == "DE" -%}
zugferd-ausgang@skhock.de
{% else -%}
{{Report.InvoiceBillToAddress.EmailAddress}}
{% endif -%}
Mit dieser DotLiquid-Formel werden jetzt die Standard-Pdfs bei B2B-Kunden aus Deutschland nicht mehr versendet, sondern an die interne-Adresse zugferd-ausgang@skhock.de
Beispiel mit komplexer Logik (bei Verwendung eigener Felder):
{% if Report.InvoiceBillToAddress.Company <> "" and Report.InvoiceBillToAddress.CountryISO == "DE" -%}
zugferd-ausgang@skhock.de
{% else -%}
{% assign RECHNUNGSEMAILASP = false -%}
{% capture query %}
SELECT cMail FROM tansprechpartner WHERE cName='#RECHNUNGSEMAIL#' AND kKunde={{ Report.Customer.InternalId }}
{% endcapture -%}
{% assign result = query | DirectQuery %}
{% for ansp in result.Daten %}
{% assign RECHNUNGSEMAILASP = ansp.cMail -%}
{% endfor %}
{% assign RECHNUNGSEMAIL = false -%}
{% for CustomerAttribute in Report.Customer.CustomerAttribute -%}
{% if CustomerAttribute.AttributeName == 'Rechnungsmail' -%}
{% assign RECHNUNGSEMAIL = CustomerAttribute.AttributeValue -%}
{% endif -%}
{% endfor %}
{% if RECHNUNGSEMAILASP -%}
{{RECHNUNGSEMAILASP}}
{% elsif RECHNUNGSEMAIL -%}
{{RECHNUNGSEMAIL}}
{% elsif Report.InvoiceBillToAddress.EmailAddress != '' -%}
{{Report.InvoiceBillToAddress.EmailAddress}}
{% else -%}
{{Report.Address.EmailAddress}}
{% endif -%}
{% endif -%}
Achtet darauf das keine vorangesetzten Leerzeichen / Zeilenumbrüche in der Vorschau kommen. Wir haben daher die Formel später in eine Zeile zusammengezogen.
2. Anpassung des JTL-Workflows für den E-Mail-Absender
Im Workflow können Sie dieselbe Formel verwenden, um die korrekte Rechnungs-E-Mail-Adresse zu bestimmen. Wir nutze noch JTL-Wawi in Version 1.8.10 dort sind die Variablen noch auf Deutsch.
Einfache Variante:
{{Vorgang.Auftrag.RechnungsAdresse.Email}}
oder
{{Vorgang.Kunde.EMail}}
Komplexere Variante (inkl. eigener Felder):
{% assign RECHNUNGSEMAILASP = false -%}
{% capture query %}
SELECT TOP 1 Mail
FROM (
SELECT cMail as Mail
FROM tansprechpartner
WHERE cName='#RECHNUNGSEMAIL#'
AND kKunde = {{ Vorgang.InterneKundennummer }}
UNION
SELECT cWertVarchar as Mail
FROM Kunde.tKundeEigenesFeld as kef
INNER JOIN tAttributSprache as atts
ON atts.kAttribut = kef.kAttribut
WHERE atts.cName = 'Rechnungsmail'
AND kef.kKunde = {{ Vorgang.InterneKundennummer }}
AND ISNULL(cWertVarchar, '') <> ''
) as RMail
{% endcapture -%}
{% assign result = query | DirectQuery %}
{% for ansp in result.Daten %}
{% assign RECHNUNGSEMAILASP = ansp.Mail -%}
{% endfor %}
{% if RECHNUNGSEMAILASP -%}
{{ RECHNUNGSEMAILASP }}
{% elsif Vorgang.Auftrag.RechnungsAdresse.EMail != '' -%}
{{ Vorgang.Auftrag.RechnungsAdresse.EMail }}
{% else -%}
{{ Vorgang.Kunde.EMail }}
{% endif -%}
3. Monitoring mit BCC-Adresse
Tragen Sie in der Konfiguration die Adresse zugferd-ausgang@ihre-domaine.de als BCC ein.
So behalten Sie den Überblick über „alte“ Rechnungen (PDF) und ZUGFeRD-Rechnungen in Ihrem Postfach
4. Erweiterungen für zukünftige Anforderungen
- Falls ein Kunde für ZUGFeRD eine extra Empfängeradressen eingerichtet hat, können Sie dies über eigene Felder in JTL-Wawi bequem steuern.
- Mit DotLiquid-Formeln können spezifische Regeln oder Datenbankabfragen integriert werden.
Fazit
Mit dieser Konfiguration sind Sie bestens vorbereitet, flexibel auf zukünftige Anforderungen einzugehen und den Rechnungsversand präzise zu steuern. Die Kombination aus DotLiquid-Formeln, eigenen Feldern und Workflows macht es möglich, unterschiedliche Szenarien effektiv abzubilden. Kunden mit Leitweg-IDs(B2G) erhalten die x-Rechnung über das Portal https://xrechnung.bund.de/ , in dem Fall könnten Sie sich intern das XML für den Upload in das entsprechende Portal zusenden.