[{"data":1,"prerenderedAt":93},["ShallowReactive",2],{"content:blog:rechnungsexport-346-belege-fehlten":3,"content:blog":34},{"slug":4,"title":5,"subtitle":6,"date":7,"metaTitle":8,"metaDescription":9,"excerpt":10,"readingMinutes":11,"tags":12,"toc":17,"body":33},"rechnungsexport-346-belege-fehlten","Abruf an der Quelle statt Rechnungsexport: 346 Belege fehlten","Warum eine CSV-Datei vollständig aussieht, auch wenn sie es nicht ist – und was ein direkter Abruf der Rechnungen daran ändert","2026-09-12","Rechnungsexport von Hand: 346 Belege fehlten","Rechnungsexport von Hand gegen Abruf an der Quelle: 3 048 Rechnungen automatisch geholt, 346 Belege fehlten im Export. Was Buchhaltungen in DACH prüfen.","Einmal im Monat eine CSV-Datei aus dem Portal, darauf bauen alle Auswertungen auf. Wir haben die Rechnungen stattdessen direkt aus dem staatlichen E-Rechnungssystem geholt und beim ersten Abgleich gesehen, was der manuelle Export nie enthalten hatte.",4,[13,14,15,16],"E-Rechnung","Schnittstellen","Buchhaltung","Praxisbericht",[18,21,24,27,30],{"id":19,"text":20},"ausgangslage","Der monatliche Rechnungsexport als Arbeitsgrundlage",{"id":22,"text":23},"quelle","Abruf direkt aus dem E-Rechnungssystem",{"id":25,"text":26},"abgleich","Der erste Abgleich: 346 Belege, die im Rechnungsexport fehlten",{"id":28,"text":29},"luecken","Warum ein Export Lücken hat, die niemand sieht",{"id":31,"text":32},"grenzen","Was der Abruf nicht löst","\u003Cp>Ein Rechnungsexport von Hand enthält, was beim Export mitgekommen ist, und niemand sieht, was fehlt. In einem Kundenprojekt haben wir die Rechnungen direkt aus dem staatlichen E-Rechnungssystem geholt, Stand September 2026 sind es 3 048. Beim ersten Abgleich der nachgeholten 2 408 Belege fehlten 346 im manuellen Export.\u003C\u002Fp>\n\n\u003Ch2 id=\"ausgangslage\">Der monatliche Rechnungsexport als Arbeitsgrundlage\u003C\u002Fh2>\n\u003Cp>Die Buchhaltung dieses Kunden arbeitete mit einer Routine, die in vielen Unternehmen genauso aussieht. Einmal im Monat meldet sich jemand im Portal an, wählt den Zeitraum, lädt eine CSV-Datei herunter und spielt sie in die eigene Tabelle ein. Auf dieser Tabelle stehen dann Umsatzübersichten, der Abgleich mit der Bank und die Antworten auf die Fragen der Geschäftsführung.\u003C\u002Fp>\n\u003Cp>Das Verfahren hat drei Eigenschaften, die man erst bemerkt, wenn man sie ausspricht. Die Zahlen sind immer so alt wie der Abstand zwischen zwei Exporten. Ob ein Export vollständig war, lässt sich an der Datei selbst nicht erkennen. Und wann zuletzt aktualisiert wurde, weiß nur die Person, die exportiert hat – bei Urlaub oder Krankheit also niemand.\u003C\u002Fp>\n\n\u003Ch2 id=\"quelle\">Abruf direkt aus dem E-Rechnungssystem\u003C\u002Fh2>\n\u003Cp>Statt den Export zu verbessern, haben wir ihn ersetzt. Die Rechnungen kommen über die offizielle Schnittstelle des staatlichen E-Rechnungssystems mit Token-Anmeldung. Ein nächtlicher Lauf holt Einkaufs- und Verkaufsrechnungen, die Historie kam einmalig über den verschlüsselten Paket-Export, den das System dafür vorsieht.\u003C\u002Fp>\n\u003Cp>Zwei Entscheidungen waren dabei wichtiger als die Anbindung selbst. Erstens landen die Rechnungen in derselben Tabelle wie zuvor die CSV-Datei. Keine Auswertung und kein Bericht musste angefasst werden; geändert hat sich nur, woher die Zeilen kommen. Zweitens hinterlässt jeder Lauf ein sichtbares Lebenszeichen. Wer auf die Zahlen schaut, sieht, wann sie zuletzt aktualisiert wurden, und merkt es, wenn ein Lauf ausbleibt.\u003C\u002Fp>\n\u003Cp>Die Schnittstelle begrenzt, wie viele Anfragen in einer Stunde erlaubt sind. Der nächtliche Abruf ist so geschnitten, dass er unter dieser Grenze bleibt, statt sich auf Wiederholungen nach einer Ablehnung zu verlassen. Solche Grenzen stehen in der Dokumentation der Schnittstelle, und wir lesen sie vor der ersten Zeile Code.\u003C\u002Fp>\n\n\u003Ch2 id=\"abgleich\">Der erste Abgleich: 346 Belege, die im Rechnungsexport fehlten\u003C\u002Fh2>\n\u003Cp>Beim Nachholen der Historie kamen 2 408 Belege aus dem E-Rechnungssystem. Wir haben sie mit dem verglichen, was bis dahin aus dem manuellen Export in der Tabelle stand. 346 davon waren im manuellen Export überhaupt nicht enthalten.\u003C\u002Fp>\n\u003Cp>Diese Zahl ist unbequem, und gerade deshalb steht sie hier. Niemand hatte diese Rechnungen absichtlich weggelassen. Es gab keinen Fehler, den man einer Person zuordnen könnte, und keine Warnung. Die Datei sah vollständig aus, weil eine Datei immer vollständig aussieht: Sie enthält, was sie enthält, und schweigt über den Rest.\u003C\u002Fp>\n\u003Cp>Für die Geschäftsführung heißt das: Jede Zahl, die auf dem Export aufgebaut war, stand auf einer Grundlage mit Lücke. Das betrifft die Umsatzübersicht ebenso wie die Frage, welche Eingangsrechnungen noch zu bezahlen sind, und den Abgleich mit der Bank, der eine Zahlung ohne passende Rechnung als ungeklärt führt.\u003C\u002Fp>\n\n\u003Ch2 id=\"luecken\">Warum ein Export Lücken hat, die niemand sieht\u003C\u002Fh2>\n\u003Cp>Die Ursache haben wir nicht für jeden einzelnen fehlenden Beleg rekonstruiert, und es wäre unredlich, hier eine zu behaupten. Die üblichen Mechanismen sind aber bekannt, und jeder davon reicht allein aus:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Der Zeitraum.\u003C\u002Fstrong> Rechnungen, die nach dem Export mit einem Datum im bereits exportierten Monat eingehen, fallen zwischen zwei Dateien.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Der Filter.\u003C\u002Fstrong> Ein Exportfilter bleibt so eingestellt, wie er einmal war, auch wenn eine neue Rechnungsart oder ein neuer Geschäftspartner dazukommt.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Die Vertretung.\u003C\u002Fstrong> Wer den Export in Abwesenheit übernimmt, macht ihn ein wenig anders, und niemand vergleicht die beiden Dateien.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Der Abruf an der Quelle beseitigt diese Mechanismen nicht durch Sorgfalt, sondern durch Bauweise. Er fragt jede Nacht nach einem Zeitfenster, das sich mit dem vorigen überschneidet, und erkennt Belege wieder, die schon da sind. Eine spät eingegangene Rechnung wird damit beim nächsten Lauf gefunden, nicht beim nächsten Jahresabschluss.\u003C\u002Fp>\n\n\u003Ch2 id=\"grenzen\">Was der Abruf nicht löst\u003C\u002Fh2>\n\u003Cp>Ein automatischer Abruf macht die Daten vollständig in Bezug auf eine Quelle, nicht in Bezug auf das Unternehmen. Belege, die nicht über das E-Rechnungssystem laufen, kommen auf diesem Weg nicht an: Quittungen, Rechnungen von Lieferanten, die das System nicht nutzen, Gutschriften, die außerhalb vereinbart werden. Sie brauchen weiterhin einen eigenen Eingang, und dort stellt sich die Frage nach Lücken genauso.\u003C\u002Fp>\n\u003Cp>Auch die Übertragung selbst ist keine inhaltliche Prüfung. Ob eine Rechnung sachlich stimmt, entscheidet weiterhin die Buchhaltung; der Abruf sorgt nur dafür, dass sie die Rechnung überhaupt zu sehen bekommt.\u003C\u002Fp>\n\u003Cp>Für Unternehmen in Deutschland wird das Thema ohnehin konkret. Seit dem 1. Januar 2025 müssen Unternehmen im B2B-Geschäft E-Rechnungen empfangen können, für den Versand gelten Übergangsfristen bis Ende 2026 beziehungsweise 2027. Was eine \u003Ca href=\"\u002Flexikon\u002Fe-rechnung\">E-Rechnung\u003C\u002Fa> ausmacht und welche Formate zählen, erklärt das Lexikon. Mit strukturierten Rechnungen im Eingang verliert die Handarbeit zwischen Portal und Tabelle ihren letzten Grund.\u003C\u002Fp>\n\u003Cp>Anbindungen dieser Art bauen wir als \u003Ca href=\"\u002Fleistungen\u002Fsoftwareentwicklung\">Softwareentwicklung\u003C\u002Fa> für kaufmännische Abläufe in einer festen Reihenfolge: zuerst die Quelle anbinden, dann in die bestehenden Tabellen schreiben, dann einmal gegen den bisherigen Stand abgleichen und das Ergebnis offen zeigen – auch wenn es heißt, dass die alten Zahlen Lücken hatten.\u003C\u002Fp>",[35,43,68],{"slug":4,"title":5,"subtitle":6,"date":7,"metaTitle":8,"metaDescription":9,"excerpt":10,"readingMinutes":11,"tags":36,"toc":37},[13,14,15,16],[38,39,40,41,42],{"id":19,"text":20},{"id":22,"text":23},{"id":25,"text":26},{"id":28,"text":29},{"id":31,"text":32},{"slug":44,"title":45,"subtitle":46,"date":47,"metaTitle":48,"metaDescription":49,"excerpt":50,"readingMinutes":11,"tags":51,"toc":54},"offene-posten-bank-statt-haekchen","Offene Posten aus der Bank statt aus dem Häkchen: 1 725 auf 802","Wie ein Abgleich gegen die Kontoauszüge die Liste offener Lieferantenrechnungen wieder brauchbar macht – für Geschäftsführung und kaufmännische Leitung","2026-08-11","Offene Posten: Bankabgleich statt Zahlungsvermerk","Offene Posten gegen die Bank abgleichen: 1 268 Zahlungen zugeordnet, 1 051 über die Rechnungsnummer. Ein Praxisbericht für kaufmännische Leitungen in DACH.","Eine Lieferantenrechnung galt als offen, solange niemand die Zahlung abgehakt hatte. Wir haben die Liste gegen die Kontoauszüge abgeglichen: 1 268 Zahlungen zugeordnet, 1 051 davon über die Rechnungsnummer. Was dabei bewusst Handarbeit bleibt, steht am Ende.",[15,52,53,16],"Automatisierung","PostgreSQL",[55,58,60,63,66],{"id":56,"text":57},"bezahlt","Offene Posten, die längst bezahlt waren",{"id":25,"text":59},"Der Abgleich: Rechnungsnummer zuerst, dann Betrag und Gegenpartei",{"id":61,"text":62},"ergebnis","Von 1 725 auf 802 offene Posten",{"id":64,"text":65},"sekunden","Warum 0,4 Sekunden mehr sind als Komfort",{"id":31,"text":67},"Was von Hand bleibt: Zahlungen ohne Rechnungsnummer",{"slug":69,"title":70,"subtitle":71,"date":72,"metaTitle":73,"metaDescription":74,"excerpt":75,"readingMinutes":11,"tags":76,"toc":80},"wissensbasis-50-regeln-aus-dem-chat","Wissensbasis statt Chatverlauf: 50 Regeln an einem Tag in den Betrieb","Wie kaufmännische Regeln aus Nachrichten in ein System kommen, mit dem die KI arbeitet – und warum jede Regel danach jemandem gehören muss","2026-07-28","Wissensbasis: 50 Regeln aus dem Chat an einem Tag","Wissensbasis aus dem Chatverlauf: 50 Regeln an einem Tag produktiv, KI-Entwürfe folgen ihnen. Was Unternehmen in DACH für Pflege und Zuständigkeit brauchen.","Die Regeln der Auftragsannahme standen nirgends aufgeschrieben, aber alle waren irgendwann im Chat gesagt worden. Wir haben 50 davon an einem Tag geordnet und in den Betrieb gebracht. Die Technik war der kleinere Teil; die Frage, wer eine Regel ändern darf, der größere.",[77,78,79,16],"KI","Vertrieb","Arbeitsweise",[81,84,87,90],{"id":82,"text":83},"chat","Wo kaufmännische Regeln tatsächlich stehen",{"id":85,"text":86},"tag","Vom Chatverlauf zur Wissensbasis an einem Tag",{"id":88,"text":89},"schattenbetrieb","Schattenbetrieb, bevor die Entwürfe zählen",{"id":91,"text":92},"eigentuemer","Eine Wissensbasis ohne Eigentümer veraltet",1789379229919]