Skip to main content
lohnsteuer-bmf

Lohn- und Einkommensteuer nach dem BMF-Programmablaufplan 2026: offline, typisiert, ohne externe Abhängigkeiten.

PyPI Downloads Python License: MIT CI codecov Ruff Types: mypy strict Dependencies: 0

Installation · Schnellstart · API · PyPI

lohnsteuer-bmf

pip install und loslegen: kein Code-Generator, kein PAP-XML-Parsing, keine Laufzeit-Abhängigkeiten. Die Steuerwerte für 2026 sind gegen Primärquellen verifiziert (§32a EStG, BMF-PAP 2026, SV-Rechengrößenverordnung 2026).

  • 🔌 Zero Dependencies — reine Standardbibliothek, nichts zu auditieren
  • 📴 Offline — keine Netzwerk-Calls, kein PAP-XML-Parsing zur Laufzeit
  • 🧮 Primärquellen-verifiziert — §32a EStG, BMF-PAP 2026, SV-RechGrV 2026
  • 🏷️ Vollständig typisiert — PEP 561 (py.typed), mypy --strict
  • 🐍 Python 3.10 – 3.14 — getestet auf Linux, Windows und macOS

🇬🇧 English speakers: scroll down for the English section.


Installation

pip install lohnsteuer-bmf

Python ≥ 3.10 (getestet bis 3.14) · keine Abhängigkeiten.

Schnellstart

Die häufigste Frage zuerst — Steuerklasse 1, 5.000 € brutto/Monat, 2026:

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': 782.42, 'soli_monat': 0.0, 'kirchensteuer_monat': 0.0,
#  'zve_jahr': 46644.0, 'vorsorgepauschale': 12090.0}

Einkommensteuer-Tarif (§32a EStG)

from lohnsteuer_bmf import berechne_einkommensteuer_tarif

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

Bausteine

from lohnsteuer_bmf import (
    einkommensteuer,             # §32a EStG, Grundtarif
    einkommensteuer_splitting,   # §32a Abs. 5 EStG, Ehegattensplitting
    solidaritaetszuschlag,       # §3/§4 SolzG inkl. Milderungszone
    kirchensteuer,               # 8 % (BY, BW) / 9 % (übrige Länder)
)

einkommensteuer(50_000, 2026)              # 10548
einkommensteuer_splitting(100_000, 2026)   # 21096
solidaritaetszuschlag(30_864, jahr=2026)   # 1251.17
kirchensteuer(10_000, "Bayern")            # 800.0

Was ist drin

Funktion Rechtsgrundlage
berechne_lohnsteuer_pap BMF-Programmablaufplan 2026 (BMF-Schreiben v. 12.11.2025)
berechne_zve zu versteuerndes Einkommen aus Brutto (Vorsorgepauschale etc.)
berechne_einkommensteuer_tarif §32a EStG inkl. Grenz-/Durchschnittssteuersatz
einkommensteuer / einkommensteuer_splitting §32a Abs. 1 / Abs. 5 EStG
solidaritaetszuschlag §3/§4 SolzG
kirchensteuer Landeskirchensteuergesetze

Unterstützte Steuerjahre: 2024, 2025, 2026.

Stand der Verifikation (2026-06-07): Alle drei Steuerjahre sind gegen amtliche Primärquellen geprüft — 2024 final (Grundfreibetrag 11.784 €, BGBl. 2024 I Nr. 386 / BMF EStH 2024), 2025 (Steuerfortentwicklungsgesetz, BGBl. 2024 I Nr. 449 / BMF EStH 2025), 2026 (§32a EStG, gesetze-im-internet) — zusätzlich durch einen Kontinuitäts-Check an allen Tarif-Zonengrenzen abgesichert.

Brauchst du mehr als Lohn-/Einkommensteuer?

Dieses Paket ist die offene Commodity-Schicht. Die breite Abdeckung — rund 58 weitere deutsche Rechner inkl. Sozialleistungen (Bürgergeld, Wohngeld, Elterngeld, Gewerbe-/Grunderwerb-/Erbschaftsteuer, Krypto, Photovoltaik u.v.m.), Batch-Endpoints und Gemeinde-Hebesätze — gibt es als gehostete REST-API:

👉 rechner-hub.de/steuerrechner-api

Genauigkeit & Haftung

Die Berechnungen folgen den offiziellen BMF-Formeln, ersetzen aber keine Steuerberatung. Alle Angaben ohne Gewähr. Das Paket bildet die maschinelle Lohnsteuer-/ESt-Berechnung ab, nicht jeden Einzelfall des Veranlagungsverfahrens.

Lizenz

MIT © 2026 L1nch-lab


English

German wage tax (Lohnsteuer) and income tax (Einkommensteuer) per the official BMF payroll algorithm (Programmablaufplan) 2026 — offline, typed, zero dependencies.

pip install lohnsteuer-bmf

Quick start — tax class 1, €5,000 gross/month, 2026:

from lohnsteuer_bmf import berechne_lohnsteuer_pap

result = berechne_lohnsteuer_pap(
    brutto_jahr=60_000.0,        # 5,000 EUR * 12
    steuerklasse=1,              # tax class 1
    bundesland="Nordrhein-Westfalen",
    mit_kirchensteuer=False,     # church tax
    kinder=0,                    # children
    geburtsjahr=1990,            # birth year
    kv_zusatzbeitrag=2.9,        # avg. health-insurance surcharge 2026
    ist_sachsen=False,           # Saxony special rule
    jahr=2026,                   # tax year
)
print(result["lohnsteuer_monat"])  # 782.42  (monthly wage tax in EUR)

What's included: monthly Lohnsteuer (BMF-PAP 2026), the §32a income-tax tariff (incl. spouse splitting, marginal/average rates), solidarity surcharge and church tax. Tax years 2024–2026 — all three verified against official primary sources (as of 2026-06-07). Python ≥ 3.10, zero dependencies.

Need the full breadth (≈58 more German calculators incl. social benefits, batch endpoints, municipal trade-tax rates)? Use the hosted REST API: rechner-hub.de/steuerrechner-api.

Not tax advice — provided as is. Licensed under MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lohnsteuer_bmf-2026.2.tar.gz (21.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lohnsteuer_bmf-2026.2-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file lohnsteuer_bmf-2026.2.tar.gz.

File metadata

  • Download URL: lohnsteuer_bmf-2026.2.tar.gz
  • Upload date:
  • Size: 21.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for lohnsteuer_bmf-2026.2.tar.gz
Algorithm Hash digest
SHA256 82b97128e30aa1d45473566d848474dafbc3899ac664560d1d7e6ba0a09da5b3
MD5 5421c237ed5c62ccac015980fe9bf739
BLAKE2b-256 ef09422bd5f68efce92ccab696acb60a63f9c8d92d12b30d80a62a00f6f16696

See more details on using hashes here.

Provenance

The following attestation bundles were made for lohnsteuer_bmf-2026.2.tar.gz:

Publisher: release.yml on L1nch-lab/lohnsteuer-bmf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lohnsteuer_bmf-2026.2-py3-none-any.whl.

File metadata

File hashes

Hashes for lohnsteuer_bmf-2026.2-py3-none-any.whl
Algorithm Hash digest
SHA256 43b3f2f08c340f278ba85eaf878ae380863b9b310c325fe67294d1a4a26881e7
MD5 000232107b0e1aa4b0ea85f3b98ee7d1
BLAKE2b-256 687d2c2c1a21bfb77a87bb2e166f3fac91b88d144854ec875f91597a3cc43964

See more details on using hashes here.

Provenance

The following attestation bundles were made for lohnsteuer_bmf-2026.2-py3-none-any.whl:

Publisher: release.yml on L1nch-lab/lohnsteuer-bmf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

2026.2 This release

2 files

2026.1

2 files

2026.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page