Erstellt aus den Transaktions-Exporten deiner Krypto-Börsen einen nachvollziehbaren Steuerreport für die deutsche Steuererklärung (Anlage SO): Gewinne/Verluste nach FIFO, Jahresfrist je Kauf-Tranche, Ausgabe als PDF, CSV, XLSX – inklusive vollständigem Prüfnachweis.
Läuft komplett lokal. Deine Transaktionsdaten verlassen deinen Rechner nicht – kein Cloud-Upload, kein Account, kein Abo. Die gesamte Rechenlogik ist quelloffen und durch Tests dokumentiert.
| Börse | Export | Status |
|---|---|---|
| Bitpanda | Transaktions-Export (CSV/XLSX) | ✅ |
| Kraken | trades.csv (EUR-Paare) | ✅ |
| Weitere | Adapter anfragen oder beisteuern | 🙋 |
Mehrere Exporte – auch verschiedener Börsen – können zusammen verarbeitet werden. Sie werden chronologisch zu einem FIFO-Bestand zusammengeführt: Ein Kauf auf Kraken liefert damit die Kostenbasis für einen späteren Verkauf auf Bitpanda.
Dieses Tool stellt keine professionelle steuerliche Beratung dar. Die generierten Dokumente und Berechnungen dienen lediglich als Unterstützung und Orientierung für die private Steuererklärung. Für die Einreichung beim Finanzamt oder rechtlich verbindliche Auskünfte wenden Sie sich bitte an einen Steuerberaterin oder das Finanzamt. Der Autor übernimmt keine Haftung für die Richtigkeit, Vollständigkeit oder rechtliche Verwendbarkeit der Ergebnisse.
pip install krypto-steuerberichtDebian/Ubuntu (auch Chromebook-Linux/Crostini): Neuere Debian-Systeme blockieren systemweites pip install (PEP 668). Der empfohlene Weg ist dort pipx:
sudo apt install pipx && pipx ensurepath
pipx install krypto-steuerberichtExporte in einen Ordner upload/ legen (oder per --input angeben) und ausführen:
krypto-steuerbericht --year 2025 --name "Max Mustermann" --street "Musterstraße 1" --city "12345 Musterstadt"
# Mehrere Börsen kombinieren:
krypto-steuerbericht --input bitpanda.csv --input kraken-trades.csv --year 2025Das Format wird automatisch erkannt. Weitere Optionen: --output-dir, --formats csv,xlsx,pdf, siehe krypto-steuerbericht --help. Alternativ ohne Installation: Repo klonen und python main.py ….
| Datei | Inhalt |
|---|---|
steuerreport_kryptogewinne_details.csv |
Master-Datei: alle Tranchen aller Jahre |
Steuerreport_<Jahr>_Detailnachweis.csv/.xlsx |
Detailnachweis je Kauf-Tranche für das Steuerjahr |
Steuererklaerung_<Jahr>_Final.pdf |
Zusammenfassung für die Anlage SO |
Steuerreport_<Jahr>_Pruefnachweis.xlsx |
Vollständiger Prüfnachweis: Zusammenfassung, FIFO-Zuordnung (Jahr + gesamt), alle Original-Transaktionen, Restbestände je Asset |
Der Prüfnachweis ist für den Fall gedacht, dass das Finanzamt Belege anfordert: Er macht die komplette Herleitung vom Original-Export bis zum Ergebnis nachvollziehbar. Zusätzlich empfiehlt es sich, die unveränderten Original-Exporte aufzubewahren.
- FIFO je Asset: Verkäufe verbrauchen die ältesten Käufe zuerst – börsenübergreifend in einem gemeinsamen Bestand.
- Bewertung je Kauf-Tranche: Ein Verkauf, der mehrere Käufe verbraucht, wird in Tranchen aufgeteilt – jede Tranche erhält anteiligen Erlös, eigene Anschaffungskosten und eine eigene Haltedauer.
- Jahresfrist per Datum: Steuerfrei ist eine Tranche, wenn der Verkauf nach Ablauf eines Jahres ab Anschaffung erfolgt (Datumsvergleich, schaltjahrfest).
- Krypto-zu-Krypto-Tausch zählt als Veräußerung der abgegebenen und Anschaffung der erhaltenen Coins.
- EUR-Gebühren erhöhen die Anschaffungskosten (Kauf) bzw. mindern den Erlös (Verkauf).
- Fehlende Kaufhistorie: Verkäufe von Beständen ohne erfasste Käufe werden mit Kostenbasis 0 angesetzt, konservativ als steuerbar behandelt und deutlich markiert (Konsole, Report-Spalte, PDF-Hinweis) – bitte manuell prüfen.
- Freigrenze: Das PDF weist auf die Freigrenze des § 23 EStG hin (600 € bis 2023, 1.000 € ab 2024), wendet sie aber bewusst nicht automatisch an.
- Gebühren in Kryptowährungen (z. B. BEST) werden nicht verrechnet, nur gezählt und gemeldet.
- Staking-Rewards, Lending, Airdrops u. ä. werden nicht gesondert behandelt.
- Kraken: nur EUR-Paare; Trades in anderen Quote-Währungen werden übersprungen und gemeldet.
Alles läuft auf deinem Rechner. Das Tool baut keine Netzwerkverbindungen auf, sendet nichts an Dritte und speichert nichts außerhalb des output/-Ordners. Der upload/- und output/-Inhalt ist per .gitignore vom Versionieren ausgeschlossen, damit keine echten Daten versehentlich in ein Repo geraten.
pip install -e . pytest
python -m pytest tests/Die Testsuite (18 Tests) deckt u. a. ab: Tranchen-Aufteilung über die Jahresfrist, fehlende Kaufhistorie, Schaltjahr-Grenzfälle, Gebühren, Krypto-zu-Krypto-Tausch, Adapter-Erkennung und börsenübergreifendes FIFO. Neue Börsen-Adapter sind der wertvollste Beitrag – die Anleitung steht in CONTRIBUTING.md.
MIT – siehe LICENSE.