{"id":1577,"date":"2025-02-03T19:19:28","date_gmt":"2025-02-03T17:19:28","guid":{"rendered":"https:\/\/www.lvbprint.de\/?page_id=1577"},"modified":"2025-12-02T10:55:13","modified_gmt":"2025-12-02T08:55:13","slug":"zugferd_xrechnung_factur-x","status":"publish","type":"page","link":"https:\/\/www.lvbprint.de\/en\/zugferd_xrechnung_factur-x\/","title":{"rendered":"ZUGFeRD\/XRechung\/Factur-X from Word, Excel, LibreOffice, \u2026"},"content":{"rendered":"\r\n<h2>Digitale Rechnungserstellung aus vielen Anwendungen<\/h2>\r\n<blockquote>\r\n<h4>Neu: Beispiele mit LibreOffice Writer<\/h4>\r\n<\/blockquote>\r\n<p>Vorab finden Sie hier eine <a href=\"https:\/\/www.lvbprint.de\/files\/zugferd\/Linklist.pdf\" target=\"_blank\" rel=\"noopener\">PDF Datei<\/a> mit sinnvollen Links zu diesem Thema.<\/p>\r\n<p>Hier finden Sie Details wie Sie aus bestehenden Word oder Excel Dateien digitale Rechnungen erzeugen k\u00f6nnen:<br \/><a href=\"https:\/\/www.lvbprint.de\/2025\/04\/03\/zugferd-xrechnung-aus-word-erzeugen\/\" target=\"_blank\" rel=\"noopener\">ZUGFeRD\/XRechnung\/Factur-X aus Word Dateien erstellen<\/a><br \/><a href=\"https:\/\/www.lvbprint.de\/2025\/04\/05\/zugferd-xrechnung-aus-excel-erzeugen\/\" target=\"_blank\" rel=\"noopener\">ZUGFeRD\/XRechnung\/Factur-X aus Excel Dateien erstellen<\/a><\/p>\r\n<p>Ab dem 1. Januar 2025 wird die elektronische Rechnung (E-Rechnung\/ZUGFeRD\/XRechnung\/Factur-X) mit verschiedenen Ausnahmen und \u00dcbergangsfristen zum verbindlichen Standard f\u00fcr Abrechnungen zwischen Unternehmen. Das Computermagazin c\u2019t hat das Thema in seiner Ausgabe 26\/2024 aufgegriffen und mehrere Artikel verfasst. Hier ein Link zu <a href=\"http:\/\/ct.de\/ybrn\" target=\"_blank\" rel=\"noopener\">Quellen und Downloads<\/a>.\u00a0<\/p>\r\n<p>In den Buchhaltungsprogrammen gro\u00dfer Unternehmen ist die Unterst\u00fctzung f\u00fcr elektronische Rechnungen sicherlich weitgehend enthalten. Kleinere Unternehmen, die ihre Rechnungen bisher in Word, Excel oder \u00e4hnlichen Programmen erstellt haben, schauen jedoch in die R\u00f6hre und m\u00fcssen sich nach anderen, oft kostenpflichtigen L\u00f6sungen umsehen.<\/p>\r\n<p>Mit dem kostenlosen <strong>ZUGFeRD-Composer<\/strong> sind diese Zeiten vorbei. Das <a href=\"https:\/\/www.lvbprint.de\/files\/zugferd\/latest\/ZUGFeRDComposer.zip\">Archiv<\/a> enth\u00e4lt zahlreiche Beispiele f\u00fcr die Erstellung von rechtsg\u00fcltiger <em>ZUGFeRD<\/em>&#8211; (das sind PDF-Dateien mit eingebetteten XML-Daten &#8211; das identische Format hei\u00dft in Frankreich <em>Factur-X<\/em>) oder <em>XRechnung<\/em>-Dateien (reines XML-Format). <a href=\"https:\/\/ecosio.com\/de\/blog\/was-ist-factur-x-und-wie-haengt-dieser-standard-mit-zugferd-und-xrechnung-zusammen\/\" target=\"_blank\" rel=\"noopener\">Hier<\/a> finden Sie mehr Details dar\u00fcber.<\/p>\r\n<p>Der Composer nutzt die frei <a href=\"https:\/\/github.com\/stephanstapel\/ZUGFeRD-csharp\" target=\"_blank\" rel=\"noopener\">ZUGFeRD Bibliothek<\/a> von Stephan Stapel, der viel Arbeit in die Bibliothek gesteckt hat und zu Recht um <a href=\"https:\/\/github.com\/sponsors\/stephanstapel\" target=\"_blank\" rel=\"noopener\">Unterst\u00fctzung<\/a> bittet. F\u00fcr andere Programmiersprachen als C# gibt es entsprechende Bibliotheken, z.B. f\u00fcr <a href=\"https:\/\/github.com\/horstoeko\/zugferd\" target=\"_blank\" rel=\"noopener\">php.<\/a><\/p>\r\n<h2>Die Idee dahinter<\/h2>\r\n<p>Das Beispiel zum automatischen <a href=\"https:\/\/www.lvbprint.de\/2022\/04\/24\/e-mail-versand\/\" target=\"_blank\" rel=\"noopener\">Versenden von E-Mails<\/a> mittels verstecktem Text inspirierte uns zu einer \u00e4hnliches L\u00f6sung.<\/p>\r\n<p>An den entsprechenden Stellen in den Rechnungsdokumenten werden einfach vordefinierte Muster in kleiner wei\u00dfer Schrift eingef\u00fcgt und vom Composer aus dem Seitentext herausgefiltert.<\/p>\r\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1585 alignnone\" src=\"https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/02\/word_visible-300x124.png\" alt=\"Sichtbare Muster\" width=\"300\" height=\"124\" title=\"\" srcset=\"https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/02\/word_visible-300x124.png 300w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/02\/word_visible-768x318.png 768w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/02\/word_visible-18x7.png 18w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/02\/word_visible.png 952w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\r\n<p>Der Composer enth\u00e4lt eine Konfigurationsdatei mit definierten Schl\u00fcsseln (z.B. <code>invoice_nr<\/code>)\u00a0 und Anweisungen zur Extraktion der Daten.<br \/>Das sieht z.B. so aus:<\/p>\r\n\r\n<pre class=\"wp-block-code\"><code>\/\/\/ Force a number format from a country e.g. DE-DE\r\nnumber_format:                          1:c:[NF]:\u205e\r\n\r\n\/\/# ----------- Invoice -----------------\r\n\/\/ BT-1\r\ninvoice_nr:\t   \t                0:c:[01]:\u205e\r\n\/\/ BT-2\r\ninvoice_date:                           0:c:[02]:\u205e\r\n\/\/ BT-3: Invoice = 380, Unknown = 0: Use string or number\r\ninvoice_type:                           0:c:[03]:\u205e\r\n\/\/ BT-5: EUR, USD, ...\r\ninvoice_currency:                       0:c:[05]:\u205e\r\n\/\/ BT-9: \r\ninvoice_payment_due_date:               0:c:[09]:\u205e\r\n\/\/ BT-9: \r\ninvoice_payment_description:            1:c:[20]:\u205e\r\n<\/code><\/pre>\r\n\r\n<p>Als Trennzeichen dient der Doppelpunkt; <code>'0\/1'<\/code> f\u00fcr Pflicht\/Optional; <code>'c'<\/code> f\u00fcr Character; <code>'[01]'<\/code> ist z.B.: der Starttext, <code>'\u205e'<\/code> ein seltenes Zeichen aus dem Unicode Zeichensatz zur Kennzeichnung des Textendes. Der Text dazwischen wird in diesem Fall als Rechnungsnummer verwendet. Sie k\u00f6nnen all dies, einschlie\u00dflich des Trennzeichens, bei Bedarf konfigurieren.<\/p>\r\n<p>Wenn Sie einen Blick auf den obigen Rechnungsausschnitt werfen, erkennen Sie die Rechnungsnummer, die von den Mustern umschlossen wird.<\/p>\r\n<h2>Textdarstellung aus der Rechnung erzeugen<\/h2>\r\n<p>Damit der Composer funktioniert, muss der Inhalt des Rechnungsdokuments, unabh\u00e4ngig vom Format, dem Composer als Text zur Verf\u00fcgung gestellt werden. Dazu gibt es verschiedene M\u00f6glichkeiten.<\/p>\r\n<ul>\r\n<li>Die naheliegendste M\u00f6glichkeit ist, die Textdatei programmatisch zu erzeugen und den Composer nur als Kommandozeile f\u00fcr die <a href=\"https:\/\/github.com\/stephanstapel\/ZUGFeRD-csharp\" target=\"_blank\" rel=\"noopener\">ZUGFeRD Bibliothek<\/a> zu verwenden. Sie k\u00f6nnen die Bibliothek nat\u00fcrlich auch direkt verwenden.<\/li>\r\n<li>Sie kopieren den gesamten Rechnungsinhalt in die Zwischenablage und rufen den Composer mit der Option <code>'\/iC'<\/code> auf. In vielen Programmen funktioniert dies jedoch nicht. Zum Beispiel in Word nicht, wenn Sie Textboxen oder eingebettete Objekte verwenden.<\/li>\r\n<li>Der Composer kann mit Hilfe der <a href=\"https:\/\/learn.microsoft.com\/de-de\/windows\/win32\/search\/-search-ifilter-about\" target=\"_blank\" rel=\"noopener\">IFilter-<\/a>Technik den Text aus Rechnungsdokumenten extrahieren. Windows verwendet diese Methode f\u00fcr die Volltextsuche. Im <a href=\"https:\/\/www.lvbprint.de\/files\/zugferd\/latest\/ZUGFeRDComposer.zip\">Downloadarchiv<\/a> ist auch das Tool <code>\"IFilterCmd\"<\/code> enthalten. Rufen Sie es doch einfach mal mit einer Word-, PDF- oder anderen Datei auf. Es kann auch mit Wildcards umgehen (<em>&#8222;IFilterCmd \/S\u00a0 *.pdf&#8220;<\/em> erzeugt f\u00fcr alle PDF Dateien im aktuellen und allen Unterverzeichnissen eine *.pdf.txt Datei). <br \/>Intern wird die Option <code>'\/w \" \"'<\/code>\u00a0verwendet um ungewollte Bindestriche zu vermeiden.<\/li>\r\n<li>PrintMulti kann w\u00e4hrend des Druckens Texte aus dem Druckdatenstrom extrahieren. Dazu sollte die neueste Version 2.0.0.8 verwendet werden, die Verbesserungen in diesem Bereich enth\u00e4lt. Dies funktioniert dann z.B. auch mit eingebetteten Objekten in Word. Viele Softwareprodukte setzen auf Reportgeneratoren oder html-Rechnungen. Wenn Sie dort versteckte Texte einf\u00fcgen k\u00f6nnen, funktioniert es wahrscheinlich auch mit PrintMulti.<br \/>Sie k\u00f6nnen <a href=\"https:\/\/www.lvbprint.de\/printmulti-gleichzeitig-drucken\/\">PrintMulti<\/a>\u00a0auch auf einem Server installieren (dann aber lizenzpflichtig) und den Drucker freigeben, so dass bei mehreren Arbeitspl\u00e4tzen eine zentrale Ablage der elektronischen Rechnungen erfolgen kann.<\/li>\r\n<\/ul>\r\n<p>Details finden Sie unter folgenden Links: <a href=\"http:\/\/www.lvbprint.de\/files\/zugferd\/README.pdf\" target=\"_blank\" rel=\"noopener\">README<\/a>, <a href=\"http:\/\/www.lvbprint.de\/files\/zugferd\/Manual_de.pdf\" target=\"_blank\" rel=\"noopener\">Handbuch<\/a> und Beschreibung der <a href=\"http:\/\/www.lvbprint.de\/files\/zugferd\/Examples_de.pdf\" target=\"_blank\" rel=\"noopener\">Beispiele<\/a><\/p>\r\n<p>Hier eine \u00dcbersicht \u00fcber die unterschiedlichen Methoden in den Beispielen:<\/p>\r\n<figure id=\"attachment_1864\" aria-describedby=\"caption-attachment-1864\" style=\"width: 1137px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1864\" src=\"https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/12\/ZUGFeRD.drawio.png\" alt=\"\u00dcbersicht ZUGFeRD Beispiele\" width=\"1137\" height=\"776\" title=\"\" srcset=\"https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/12\/ZUGFeRD.drawio.png 1137w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/12\/ZUGFeRD.drawio-300x205.png 300w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/12\/ZUGFeRD.drawio-1024x699.png 1024w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/12\/ZUGFeRD.drawio-768x524.png 768w, https:\/\/www.lvbprint.de\/wp-content\/uploads\/2025\/12\/ZUGFeRD.drawio-18x12.png 18w\" sizes=\"auto, (max-width: 1137px) 100vw, 1137px\" \/><figcaption id=\"caption-attachment-1864\" class=\"wp-caption-text\">ZUGFeRD Beispiele<\/figcaption><\/figure>\r\n<ul>\r\n<li><span style=\"color: #0000ff;\">Die Beispiele mit den versteckten Texten k\u00f6nnen Sie \u00fcber PrintMulti nutzen. Das Word-Beispiel mit eingebettetem Excel funktioniert ausschlie\u00dflich \u00fcber PrintMulti<\/span><\/li>\r\n<li><span style=\"color: #008000;\">Die ersten beiden Word-Beispiele k\u00f6nnen Sie \u00fcber die IFilter-Technik verwenden, da sich reine Word-Dateien zur Textextraktion eignen. Mit eingebetteten Excel-Dateien funktioniert das nicht.<\/span><\/li>\r\n<li><span style=\"color: #ff0000;\">Die ersten beiden Beispiele enthalten Makros und Aufrufe des Composers, um den Inhalt in die Zwischenablage zu kopieren und eine digitale Rechnung zu erstellen. Im LibreOffice-Beispiel ist kein entsprechendes Makro enthalten, ansonsten wird aber die gleiche Technik verwendet.<\/span><\/li>\r\n<li><span style=\"color: #adaa6f;\">Die beiden Beispiele mit den Feldern in Word oder den Kommentaren in Excel erzeugen \u00fcber ein Makro eine Konfigurationsdatei mit festen Texten.<\/span>\u00a0<\/li>\r\n<\/ul>\r\n<p>Zum Ausprobieren, laden Sie am besten das <a href=\"https:\/\/www.lvbprint.de\/files\/zugferd\/latest\/ZUGFeRDComposer.zip\">Archiv<\/a> herunter, entpacken es in den Pfad <em>&#8222;C:\\ZUGFeRDComposer&#8220;<\/em> und rufen im Unterverzeichnis\u00a0 <em>&#8222;Examples\/Word&#8220;<\/em> Verzeichnis die Datei <em>&#8222;RunExamples.cmd&#8220;<\/em> auf. <br \/>Sie k\u00f6nnen auch einfach eines der Word- oder das LibreOffice-Dokument \u00f6ffnen, den gesamten Inhalt in die Zwischenablage kopieren und die Batch-Datei <em>&#8222;C:\\ZUGFeRDComposer\\Examples\\RunFromClipboard.cmd&#8220;<\/em> aufrufen.<\/p>\r\n<p>Danach sollte sich der Explorer mit dem Verzeichnis <em>&#8222;C:\\ZUGFeRDComposer\\2025-0002&#8220;<\/em> \u00f6ffnen (2025-002 ist die Rechnungsnummer) in dem sich mehrere ZUGFeRD und XRechnungen befinden.<\/p>\r\n<p>In den Word-Dateien mit Makros gibt es welche zum Anzeigen und Verstecken der besonderen Formatvorlagen <em>&#8222;Hidden&#8220;<\/em> und <em>&#8222;Hidden optional&#8220;<\/em>. Hier sind Links zu der kompletten Rechnung mit <a href=\"http:\/\/www.lvbprint.de\/files\/zugferd\/invoice_visible.png\" target=\"_blank\" rel=\"noopener\">sichtbaren Texten<\/a> und <a href=\"http:\/\/www.lvbprint.de\/files\/zugferd\/invoice_hidden.png\" target=\"_blank\" rel=\"noopener\">unsichtbaren Texten<\/a>.<br \/>In der linken oberen Ecke sind die vier Makros zu erkennen (<span style=\"color: #339966;\"><strong>gr\u00fcn<\/strong><\/span>: Verstecken, <strong><span style=\"color: #ff0000;\">rot<\/span><\/strong>: Anzeigen, \ud83d\ude01: IFilter, <strong>\u26ad<\/strong>: Zwischenablage)<\/p>\r\n<p>Der Composer unterst\u00fctzt noch nicht alle M\u00f6glichkeiten der elektronischen Rechnungen (siehe <a href=\"http:\/\/www.lvbprint.de\/files\/zugferd\/README.pdf\" target=\"_blank\" rel=\"noopener\">README<\/a>). Erweiterungen sind vermutlich leicht m\u00f6glich, sofern die Bibliothek es unterst\u00fctzt.<\/p>\r\n<hr class=\"wp-block-separator has-css-opacity\" \/>","protected":false},"excerpt":{"rendered":"<p>Der ZUGFeRDComposer erm\u00f6glicht das Erzeugen von elektronischen Rechnungen (ZUGFeRD, XRechnung, Factur-X) aus Word, Excel und vielen anderen Programmen und ist frei verf\u00fcgbar.<\/p>","protected":false},"author":1,"featured_media":1578,"parent":0,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1577","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/pages\/1577","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/comments?post=1577"}],"version-history":[{"count":76,"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/pages\/1577\/revisions"}],"predecessor-version":[{"id":1869,"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/pages\/1577\/revisions\/1869"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/media\/1578"}],"wp:attachment":[{"href":"https:\/\/www.lvbprint.de\/en\/wp-json\/wp\/v2\/media?parent=1577"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}