IT
Software für Freelancer

Solo IT-Freelancer - Reviews & Workflows

Artikel

Buchhaltung & Monatsabschluss für IT-Freelancer (DACH) – Workflow

Monatsabschluss mit E-Mail-Eingangsrechnungen, OCR, Lexware Office API und USt-VA.

Praxisnah Checkliste

Warum ich einen festen Prozess brauche

Januar 2023: Ich sitze vor meiner Steuererklärung und suche eine Rechnung von Hetzner. Irgendwo muss sie sein - im Postfach, im Download-Ordner, vielleicht in diesem einen Slack-Channel, wo mir jemand mal was weitergeleitet hat? Nach 45 Minuten finde ich sie in meinem Spam-Ordner. Diese 45 Minuten haben mich überzeugt: Ich brauche einen Prozess.

Heute dauert mein Monatsabschluss 20 Minuten. Nicht weil ich schneller tippe, sondern weil ich einen festen Ablauf habe, den ich jeden Monat gleich durchlaufe. Die meisten Schritte laufen automatisiert - ich prüfe nur noch, ob alles passt, und klicke auf "Absenden".

Ziel dieses Artikels

Du bekommst hier einen praxiserprobten Monatsabschluss-Workflow, den du als Solo-IT-Freelancer jeden Monat gleich abarbeiten kannst - ohne Sucherei und ohne "ach, das mache ich spaeter".

Der Fokus liegt auf dem Prozess (Eingang -> Ablage -> Prüfung -> Abschluss) und auf Automatisierung, wo sie Sinn ergibt. Das ist keine Steuerberatung.

Für wen der Prozess passt

Für IT-Freelancer im DACH-Raum, die jeden Monat Eingangsrechnungen erfassen, den Monatsabschluss zügig erledigen und die USt-VA direkt aus dem Tool vorbereiten wollen.

Kurzfazit (TL;DR)

  • Sammle Belege über einen einzigen Einstiegspunkt (z.B. Rechnungs-Mailbox).
  • Lege PDFs direkt in einen Monatsordner mit Namensschema ab.
  • Lade Belege automatisiert ins Tool hoch, prüfe OCR nur stichprobenartig.
  • Synchronisiere Banking-Umsätze, prüfe Zuordnungen, sende USt-VA.
  • Baue einen manuellen Fallback ein, falls ein Schritt einmal ausfällt.

Wenn du erst eine Übersicht suchst: Workflows: Buchhaltung.

Was du brauchst (Minimum)

  • Eine dedizierte Rechnungsadresse (z.B. rechnungen@...) oder ein sauberer Posteingang-Filter.
  • Eine einfache Ordnerstruktur (lokal oder Cloud) nach Jahr/Monat.
  • Ein Buchhaltungstool oder mindestens ein Standard für Ablage/Export.

Wenn du ohne Tool starten willst: Der Artikel Rechnung -> Archiv -> Steuerberater ist die Low-Tech-Variante meines Ansatzes.

Mein Monatsabschluss in sechs Schritten

Schritt 1: Eingangsrechnungen sammeln (automatisiert, ~2 Min Kontrolle)

Am 1. des Monats läuft ein Bash-Script per systemd-Timer, das alle E-Mails mit PDF-Anhängen aus meinem Rechnungs-Postfach holt. Typisch sind 15-20 Belege pro Monat: Hetzner, AWS, Adobe, Slack, ein paar kleinere SaaS-Tools.

Schritt 2: PDFs in Monatsordner ablegen (automatisiert)

Die PDFs landen in einem Monatsordner (z.B. Buchhaltung/2026/01/Eingang/) mit einheitlicher Benennung, z.B. 2026-01-15_Hetzner_47.60.pdf. Das macht die spätere Suche und den Export deutlich einfacher.

Schritt 3: Belege per API hochladen (automatisiert, ~5 Min Kontrolle)

Jedes PDF wird per API an Lexware Office geschickt. Die OCR erkennt Betrag, Datum und Lieferant. Bei 90% der Belege stimmt alles - die restlichen 10% korrigiere ich manuell.

Schritt 4: Banking-Umsätze aktualisieren (~2 Min)

Ein Klick in Lexware Office holt die Kontobewegungen von meinem Geschäftskonto. Das läuft über die Banking-Integration - bei mir mit Kontist, funktioniert aber auch mit den meisten anderen Banken.

Schritt 5: Automatische Zuordnung prüfen (~5 Min)

Lexware Office matched Umsätze mit Belegen automatisch. "47,60 € an Hetzner" wird dem Hetzner-Beleg zugeordnet. Ich prüfe nur die Fälle, wo das Matching nicht geklappt hat (meistens Lastschriften mit kryptischen Verwendungszwecken).

Schritt 6: USt-VA erstellen und absenden (~3 Min)

Die Umsatzsteuer-Voranmeldung generiert Lexware Office aus den gebuchten Belegen. Ich prüfe die Summen, klicke auf "An ELSTER senden", fertig.

Checkliste: Ist dein Monatsabschluss "workflow-ready"?

  • Belege kommen zuverlässig an einer Stelle rein (Mailbox/Filter).
  • Du hast ein Namensschema, das du wiederfindest.
  • Du prüfst Vollständigkeit (nicht nur "alles scheint drin zu sein").
  • Du weißt, was im Fehlerfall passiert (z.B. OCR falsch, Upload fehlgeschlagen).
  • Dein Steuerberater bekommt am Ende ein reproduzierbares Paket.

Warum E-Mail mein Einstiegspunkt ist

Ich habe verschiedene Einstiegspunkte getestet:

  • Direkter API-Abruf bei Anbietern: Funktioniert bei manchen (AWS, Hetzner), aber nicht bei allen. Zu viele Sonderfälle, zu viel Wartung.
  • Bank-Kontoauszüge: Zeigen nur Beträge, keine Rechnungsdetails. Für die USt-VA brauche ich aber die PDFs.
  • Manuelle Sammlung: Hat bei mir nie funktioniert. Irgendeine Rechnung vergesse ich immer.

E-Mail ist der kleinste gemeinsame Nenner. Jeder Anbieter - von Hetzner bis zum lokalen Bürobedarf - schickt Rechnungen per E-Mail. Manche als PDF-Anhang, manche als Link, aber immer per Mail.

Mein Setup: Eine dedizierte E-Mail-Adresse rechnungen@meinedomain.de, die ich bei allen Anbietern hinterlegt habe. Vorteil: Nichts geht im normalen Postfach unter, und ich kann automatisiert alles abgreifen, was dort ankommt.

Lexware Office API: So setze ich den Workflow technisch um

Die Lexware Office API läuft über https://api.lexware.io und wird mit einem API-Key als Bearer-Token authentifiziert. Den API-Key erzeuge ich im Lexware-Office-Konto unter app.lexware.de/addons/public-api.

Mehr Kontext zu meinem Tool-Setup und den Automationsbeispielen findest du im Artikel Lexware Office für Freelancer.

Wichtig: Behandle den API-Key wie ein Passwort. Lege ihn als Environment Variable ab (wie im Beispiel) und speichere ihn nicht in Notizen oder im Repo.

1) Einmalig: Buchungskategorien holen

Ich ziehe mir die Posting Categories, weil ich daraus die categoryId für Ausgabenbelege brauche. Kategorien mit Typ outgo gelten für Expense-Voucher wie purchaseinvoice, während income für Einnahmenbelege gedacht ist.

export LEXWARE_TOKEN="..."
curl https://api.lexware.io/v1/posting-categories \
  -H "Authorization: Bearer $LEXWARE_TOKEN" \
  -H "Accept: application/json"

2) Beleg hochladen und Voucher erzeugen

Das Hochladen der PDF- oder Bilddatei erzeugt automatisch einen Voucher. Die Antwort liefert mir sowohl die id der Datei als auch die voucherId. Der Voucher ist sofort per API abrufbar, startet im Status blank (OCR läuft) und wechselt nach Abschluss der Texterkennung auf unchecked.

curl https://api.lexware.io/v1/files \
  -X POST \
  -H "Authorization: Bearer $LEXWARE_TOKEN" \
  -H "Content-Type: multipart/form-data" \
  -H "Accept: application/json" \
  -F "file=@/pfad/zu/rechnung.pdf" \
  -F "type=voucher"

3) OCR-Ergebnis abholen

Sobald der Voucher auf unchecked steht, hole ich die erkannten Daten und entscheide, ob ich sie direkt finalisiere oder manuell prüfe.

curl https://api.lexware.io/v1/vouchers/$VOUCHER_ID \
  -X GET \
  -H "Authorization: Bearer $LEXWARE_TOKEN" \
  -H "Accept: application/json"

4) Voucher finalisieren (unchecked -> open)

Den Status darf ich per API nur von unchecked nach open finalisieren. Das Update erfolgt per PUT und nutzt die aktuellste version aus dem GET. In der Praxis setze ich hier den aktuellen Wert (das Beispiel nutzt 1). Pflichtfelder wie voucherDate, Summen, taxType und mindestens ein voucherItem müssen gesetzt sein; die categoryId kommt aus Schritt 1.

curl https://api.lexware.io/v1/vouchers/$VOUCHER_ID \
  -X PUT \
  -H "Authorization: Bearer $LEXWARE_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "version": 1,
    "type": "purchaseinvoice",
    "voucherStatus": "open",
    "voucherNumber": "ER-2026-01-001",
    "voucherDate": "2026-01-02",
    "totalGrossAmount": 119.00,
    "totalTaxAmount": 19.00,
    "taxType": "gross",
    "voucherItems": [{
      "amount": 119.00,
      "taxAmount": 19.00,
      "taxRatePercent": 19,
      "categoryId": "8f8664a8-fd86-11e1-a21f-0800200c9a66"
    }]
  }'

Alternative: Voucher zuerst, Datei danach

Wenn ich bereits strukturierte Daten habe (z.B. aus OCR vor dem Upload), kann ich den Voucher per POST /v1/vouchers anlegen und die Datei danach über POST /v1/vouchers/{id}/files anhängen. Beide Endpoints sind in der Doku mit cURL-Beispielen dokumentiert.

Damit ist der technische Teil erledigt, und der Monatsabschluss bleibt ein klarer, kurzer Ablauf statt eines offenen Endes.

Typische Fehler (und wie du sie vermeidest)

  1. Belege sind verteilt (normales Postfach, Downloads, Slack, Portale). Besser: eine Rechnungs-Mailbox als einziger Einstiegspunkt.

  2. Kein Namensschema: Du findest PDFs nicht wieder, Exporte werden chaotisch. Besser: YYYY-MM-DD_Lieferant_Betrag.pdf als Standard.

  3. Keine Vollständigkeitsprüfung: Du merkst Lücken erst beim Steuerberater. Besser: jeden Monat kurz prüfen, ob die erwarteten Anbieter drin sind.

  4. Zu viel Automatisierung ohne Fallback: Wenn ein Schritt ausfällt, hängt der komplette Monatsabschluss. Besser: manuelle Alternative definieren (und einmal testen).

  5. Secrets werden "irgendwo" gespeichert. Besser: Keys in env vars, Rechte minimieren, regelmäßig aufräumen.

Zusammenfassung

Mit dem Prozess fühle ich mich sicher, dass mein Monatsabschluss vollständig ist und ich deutlich weniger Zeit brauche. Weil ich alle Belege aus einem stabilen Einstiegspunkt sammle und den Rest automatisiere, spare ich Aufwand und halte die Daten in Lexware Office konsistent.

Wenn du als Einstieg eine Übersicht suchst, findest du alle Buchhaltungs- Workflows hier: Workflows: Buchhaltung.

Transparenz

Dieser Blog kann Affiliate-Links enthalten. Aktuell liegt der Fokus auf Inhalten und Workflows. Wenn später Links ergänzt werden, werden sie klar gekennzeichnet.

FAQ

Wie schnell geht der Monatsabschluss mit dem Workflow?

Wenn die Belege sauber gesammelt sind, brauche ich deutlich weniger Zeit, weil Upload, OCR und Zuordnung fast vollständig automatisiert laufen.

Welche Daten müssen vor dem Upload stimmen?

Wichtig sind Datum, Betrag, Lieferant und Leistungsbezug. Je sauberer die PDFs sind, desto zuverlässiger greift die OCR.

Brauche ich OCR oder reicht das PDF?

Das PDF reicht als Beleg, aber OCR spart mir den manuellen Abgleich. Ich nutze OCR, um schneller zu finalisieren.

Mehr Artikel und Workflows für Solo-Freelancer.