Wie ich meine Umsatzsteuer-Voranmeldung aus einem Stapel Lieferantenrechnungen erstelle
Dmitry, founder of Conversion Tools
Jedes Quartal muss ich meine Umsatzsteuer-Voranmeldung abgeben. Und jedes Quartal saß ich vorher vor demselben traurigen kleinen Stapel: PDF-Rechnungen von einem Dutzend verschiedener Lieferanten, jede völlig anders aufgebaut, jede versteckt irgendwo auf der Seite die zwei Zahlen, die ich wirklich brauche. Nettobetrag hier, Steuerbetrag dort, jedes Mal eine andere Bezeichnung.
Jahrelang habe ich es gemacht wie die meisten. Jede PDF öffnen, Netto und Umsatzsteuer suchen, beides in eine Tabelle tippen und hoffen, dass ich mich beim Komma nicht vertippt habe. Das ist langweilig, das ist langsam, und es ist genau die Sorte Aufgabe, bei der eine falsche Zahl in einer einzigen Zelle klammheimlich die ganze Meldung vergiftet.
Was ich lange falsch verstanden habe
Sehr lange habe ich das für ein Leseproblem gehalten: „Ich muss einfach schneller lesen.“ Es ist kein Leseproblem. Rechnungen sehen unterschiedlich aus, aber sie sind nicht wirklich unterschiedlich. Unter dem Layout hat jede einzelne dieselbe Handvoll Felder: einen Lieferanten, eine Rechnungsnummer, ein Datum, einen Nettobetrag, einen Steuersatz, einen Steuerbetrag und einen Bruttobetrag. Das Layout ist Rauschen. Die Felder sind das Signal.
Sobald man es so sieht, heißt die Aufgabe nicht mehr „zehn verschiedene Dokumente abtippen“, sondern „dieselben sieben Felder aus zehn Dokumenten holen“. Und so eine Aufgabe kann man einmal definieren und danach nie wieder anfassen. Genau das habe ich mit Parse gemacht.
Die Felder einmal definieren
In Parse beschreibt man die Form der Daten, die man haben will - nur die Felder, nicht das Layout irgendeiner bestimmten Rechnung. Für meine Umsatzsteuer-Voranmeldung sieht das so aus:
{
"supplier": "string",
"invoice_number": "string",
"invoice_date": "string",
"net_amount": "number",
"vat_rate": "number",
"vat_amount": "number",
"gross_amount": "number"
}Mehr ist da nicht einzurichten. Mir ist es egal, ob eine Rechnung „USt.“, „MwSt.“, „VAT“ oder „Steuer“ dazu sagt oder es in einer Tabelle in der Ecke vergräbt. Ich habe beschrieben, was ich will, und Parse findet es in jedem Dokument.
Den ganzen Stapel durchlaufen lassen
Dann schicke ich jede Rechnung durch genau dieses Schema. Jede PDF kommt als dasselbe saubere Objekt zurück, egal wie das Original aufgebaut war:
{
"supplier": "Netzwerk Supplies GmbH",
"invoice_number": "2026-04-118",
"invoice_date": "2026-04-03",
"net_amount": 420.00,
"vat_rate": 19,
"vat_amount": 79.80,
"gross_amount": 499.80
}Zehn Rechnungen rein, zehn identische Objekte raus. Weil jede Zeile dieselben Felder an derselben Stelle hat, kann ich den ganzen Schwung direkt nach Excel oder CSV exportieren und einfach die Spalte vat_amount summieren. Diese Summe ist die Zahl, die in die Meldung kommt. Was früher ein ganzer Abend sorgfältiges Abtippen war, dauert jetzt ein paar Minuten, und es gibt keine Zelle mehr, in die ich 79.08 statt 79.80 hätte tippen können.
Warum das besser ist als „eine KI, die PDFs liest“
Es gibt viele Werkzeuge, die sich eine PDF ansehen und ungefähr sagen können, was darin steht. Das ist nicht dasselbe. Sobald man eine wiederkehrende Aufgabe hat - dieselbe Art Dokument, Monat für Monat - will man nicht jedes Mal eine frische Vermutung. Man will jedes Mal dieselbe Form der Antwort, damit sie direkt in die Tabelle fällt, die man ohnehin schon hat. Die Felder einmal zu definieren macht aus einem einmaligen Blick einen kleinen, verlässlichen Ablauf.
Das gilt natürlich nicht nur für die Umsatzsteuer. Tauschen Sie die Felder aus, und schon sind es Spesenbelege, Bestellungen, Kontoauszüge, Lieferscheine, Stundenzettel - alles, was als Stapel ähnlicher, aber nicht identischer Dokumente ankommt. Die Umsatzsteuer war bei mir nur der Anlass, der mich endgültig vom Tippen abgebracht hat.
Probieren Sie es an Ihrem eigenen Stapel aus
Wenn Ihnen dieser monatliche Stapel bekannt vorkommt: Nehmen Sie eine Rechnung, definieren Sie die Felder, die Sie brauchen, und sehen Sie zu, wie sie als strukturierte Daten zurückkommt. Der kostenlose Tarif deckt 100 Seiten pro Monat ab, mehr als genug, um zu sehen, ob Ihnen das diesen einen Abend erspart hätte. Mir hat es seitdem jeden einzelnen erspart.