Zum Inhalt springen

Lohnsteuer 2026 in Python berechnen: lohnsteuer-bmf

Von 7 Min. Lesezeit
lohnsteuerpythonbmfpapeinkommensteueropen-sourcejahr-2026

Lohnsteuer in Python, ohne den PAP selbst zu bauen

Du willst die Lohnsteuer 2026 in Python rechnen? pip install lohnsteuer-bmf, importieren, fertig. Das Paket bildet den BMF-Programmablaufplan 2026 ab, läuft offline und hat keine externen Abhängigkeiten. Steuerklasse 1, 5.000 € brutto im Monat, ein Aufruf, und du bekommst 777,33 € Lohnsteuer pro Monat zurück. Kein Behörden-PDF, kein Codegenerator-Schritt.

Der offizielle Lohnsteuer-PAP des BMF hat über 800 Zeilen Pseudocode. Jeden Januar ändern sich Grundfreibetrag, Tarifkoeffizienten und SV-Rechengrößen. Wer das selbst pflegt, parst jedes Jahr ein neues PDF. Genau diese Arbeit nimmt dir lohnsteuer-bmf ab.

Das Wichtigste in Kürze

  • Installation: pip install lohnsteuer-bmf, Python ab 3.12, keine Dependencies.
  • Lizenz: MIT. Frei nutzbar, auch kommerziell.
  • Abdeckung: Lohnsteuer nach BMF-PAP 2026 plus Einkommensteuer-Tarif nach § 32a EStG (inkl. Splitting, Soli, Kirchensteuer).
  • Steuerjahre: 2024 bis 2026. Die 2026er-Werte sind gegen die Primärquellen geprüft (§ 32a EStG, BMF-PAP 2026, SV-Rechengrößenverordnung 2026).
  • Breite via API: Wer mehr als Lohn- und Einkommensteuer braucht (Bürgergeld, Wohngeld, Gewerbesteuer und rund 58 weitere Rechner), nutzt die gehostete Steuerrechner-API.

pip install lohnsteuer-bmf: der erste Aufruf

Die häufigste Frage zuerst, als Code. berechne_lohnsteuer_pap nimmt den Jahresbrutto, die Steuerklasse und ein paar Parameter mit Defaults und liefert die monatlichen Beträge. Für Steuerklasse 1, 60.000 € Jahresbrutto und Steuerjahr 2026 sieht das so aus:

from lohnsteuer_bmf import berechne_lohnsteuer_pap

ergebnis = berechne_lohnsteuer_pap(
    brutto_jahr=60_000.0,        # 5.000 € * 12
    steuerklasse=1,
    bundesland="Nordrhein-Westfalen",
    mit_kirchensteuer=False,
    kinder=0,
    geburtsjahr=1990,
    kv_zusatzbeitrag=2.9,        # durchschnittlicher Zusatzbeitrag 2026
    ist_sachsen=False,
    jahr=2026,
)
print(ergebnis)
# {'lohnsteuer_monat': 777.33, 'soli_monat': 0.0, 'kirchensteuer_monat': 0.0,
#  'zve_jahr': 46464.0, 'vorsorgepauschale': 12270.0}

Du bekommst die Lohnsteuer, den Solidaritätszuschlag, die Kirchensteuer, das zu versteuernde Einkommen und die Vorsorgepauschale getrennt zurück. Die Vorsorgepauschale folgt der PAP-Logik (Renten-, Kranken- und Pflegeversicherungsanteil), deshalb fließt der durchschnittliche KV-Zusatzbeitrag von 2,9 % für 2026 mit ein. Soli bleibt bei diesem Einkommen null, weil die Bemessungsgrundlage unter der Freigrenze von 20.350 € liegt (§ 3 SolzG).

Einkommensteuer-Tarif (§ 32a EStG) in einer Zeile

Den reinen Einkommensteuer-Tarif rechnest du ohne Umweg. einkommensteuer(zve, jahr) gibt die Steuer auf das zu versteuernde Einkommen nach § 32a EStG zurück, auf den vollen Euro abgerundet wie im Gesetz. Bei 50.000 € zvE und 2026 sind das 10.548 €:

from lohnsteuer_bmf import einkommensteuer, berechne_einkommensteuer_tarif

einkommensteuer(50_000, 2026)        # 10548

t = berechne_einkommensteuer_tarif(zve=50_000, jahr=2026)
print(t["einkommensteuer"], t["grenzsteuersatz"], t["tarifzone"]["name"])
# 10548.0 35.0 Obere Progressionszone

berechne_einkommensteuer_tarif legt noch Grenzsteuersatz, Durchschnittssteuersatz, Tarifzone und Grundfreibetrag obendrauf. Für Splitting setzt du zusammenveranlagung=True, dann läuft das halbierte zvE durch den Tarif und das Ergebnis wird verdoppelt (§ 32a Abs. 5 EStG). Solidaritätszuschlag und Kirchensteuer gibt es als eigene Funktionen solidaritaetszuschlag und kirchensteuer, falls du die Bausteine einzeln zusammensteckst.

Was drin ist, und was nicht

Das Paket deckt die Commodity-Schicht ab: Lohnsteuer (BMF-PAP 2026) und den Einkommensteuer-Tarif (§ 32a EStG) mit Splitting, Soli und Kirchensteuer, für die Steuerjahre 2024 bis 2026. Es ist vollständig typisiert (py.typed nach PEP 561), hat keine Laufzeit-Abhängigkeiten und steht unter MIT-Lizenz.

Bewusst nicht enthalten ist die Breite. Sozialleistungen wie Bürgergeld oder Wohngeld, Gewerbe- und Grunderwerbsteuer, Erbschaftsteuer, Krypto, die Gemeinde-Hebesätze und Batch-Berechnungen für ganze Lohnläufe liegen in der gehosteten API, nicht im Paket. Die 2026er-Werte sind primärquellengeprüft; ältere Jahre sind enthalten, aber die Primärquellen-Prüfung läuft pro Jahr.

lohnsteuer-bmf vs. lstgen vs. selbst implementieren

Es gibt drei Wege, deutsche Lohnsteuer in Code zu bekommen. Der kürzeste ist pip install ohne weiteren Schritt:

lohnsteuer-bmflstgenSelbst implementieren
Installationpip install, sofort nutzbarpip install plus Codegen-Schrittnichts von der Stange
AbdeckungLohnsteuer + ESt-Tarifnur Lohnsteuerwas du selbst baust
Typisierungja (py.typed)generierter Codedeine Sache
2026 startklarjaja, nach dem Generierenselbst nachziehen
Jahres-Updatepip install -UPAP neu generierenPDF parsen, Werte pflegen

lstgen ist stark und etabliert, generiert aber aus dem PAP-XML erst den Code, in mehreren Sprachen, und deckt nur die Lohnsteuer ab. lohnsteuer-bmf ist der direkte Gegenentwurf: kein Generierungsschritt, schon 2026-fertig, typisiert, und der Einkommensteuer-Tarif ist gleich mit dabei. Den PAP von Hand nachzubauen lohnt sich nur, wenn du sehr spezielle Sonderfälle brauchst, die kein Paket abbildet.

Paket oder gehostete API, was wann?

Nimm das Paket, wenn du Lohn- oder Einkommensteuer offline rechnest, keine Werte ans Netz geben willst und mit Lohnsteuer plus ESt-Tarif auskommst. Es kostet nichts, läuft lokal und hat keine Rate Limits. Nimm die gehostete API, wenn du Breite brauchst: Sozialleistungen, Unternehmensteuern, Hebesatz-Datenbank oder Batch-Calls für hunderte Abrechnungen pro Request.

Beides nutzt dieselbe geprüfte Berechnungslogik, deshalb kommen für Lohn- und Einkommensteuer identische Ergebnisse heraus. Wie die gehostete Variante per JSON funktioniert, steht im Artikel Steuerrechner-API für deine App, die Endpoint-Übersicht auf der Steuerrechner-API-Seite.

Häufige Fragen

Wie berechne ich die Lohnsteuer 2026 in Python?

Installiere das Paket mit pip install lohnsteuer-bmf und rufe berechne_lohnsteuer_pap(brutto_jahr=..., steuerklasse=..., jahr=2026, ...) auf. Du bekommst Lohnsteuer, Soli und Kirchensteuer pro Monat zurück. Für Steuerklasse 1 und 60.000 € Jahresbrutto sind das 777,33 € Lohnsteuer monatlich. Die Berechnung folgt dem BMF-Programmablaufplan 2026.

Wie genau ist lohnsteuer-bmf?

Das Paket rechnet nach dem offiziellen BMF-Programmablaufplan 2026 und dem Tarif aus § 32a EStG. Die 2026er-Werte (Tarifkoeffizienten, Grundfreibetrag, SV-Rechengrößen) sind gegen die Primärquellen geprüft: § 32a EStG bei gesetze-im-internet, der BMF-PAP 2026 und die SV-Rechengrößenverordnung 2026. Es ersetzt trotzdem keine Steuerberatung; für die verbindliche Festsetzung zählt das Finanzamt.

Was ist der Unterschied zu lstgen?

lstgen erzeugt aus dem PAP-XML zuerst Quellcode (in mehreren Sprachen) und deckt nur die Lohnsteuer ab. lohnsteuer-bmf überspringt den Generierungsschritt: pip install, importieren, rechnen. Außerdem ist der Einkommensteuer-Tarif nach § 32a EStG enthalten und die API ist typisiert (py.typed).

Kostet das Paket etwas?

Nein. lohnsteuer-bmf steht unter der MIT-Lizenz und ist kostenlos, auch für kommerzielle Projekte. Geld kostet nur die optionale gehostete Steuerrechner-API, wenn du die volle Breite oder ein höheres Request-Kontingent brauchst.

Fazit

Wenn du Lohn- oder Einkommensteuer in Python brauchst, ist pip install lohnsteuer-bmf der kürzeste Weg: BMF-PAP 2026, offline, typisiert, MIT-Lizenz. Für alles darüber hinaus steht die gehostete API bereit.


Diese Seite ist keine Steuerberatung — bei komplexen Fällen frag eine:n Steuerberater:in.