PACMAN - Privacy-first Automated Calculation & Management of Numbers. Local-first tax automation for freelancers and landlords.
Project description
PACMAN
Privacy-first Automated Calculation & Management of Numbers
Lokales Steuer-Framework für alle Unternehmensklassen in Deutschland. 100% offline. Deine Daten verlassen niemals dein Gerät.
Features
- 100% Offline - Keine Cloud, keine Telemetrie, keine externen APIs
- Alle Unternehmensformen - Freiberufler, Einzelunternehmer, GmbH, UG, Vermietung
- Bank-Import - Deutsche Bank, Sparkasse, ING, N26, DKB (+ generisches CSV)
- Automatische Kategorisierung - YAML-basierte Regeln, individuell anpassbar
- ELSTER-ready Export - Excel/CSV für EÜR, Anlage G, S, V und mehr
- Erweiterbar - Eigene Profile und Regeln für jeden Use Case
- Dashboard - Streamlit-basierte visuelle Übersicht
Unterstützte Banken
| Bank | Format | Status |
|---|---|---|
| Deutsche Bank | CSV (Semikolon) | ✅ Stabil |
| Sparkasse | CSV | ✅ Stabil |
| ING-DiBa | CSV | ✅ Stabil |
| N26 | CSV | ✅ Stabil |
| DKB | CSV | ✅ Stabil |
| Generic CSV | Konfigurierbar | ✅ Stabil |
Profile & Steuerformulare
Basis-Profile (Rechtsform)
| Profil | Beschreibung | Formulare |
|---|---|---|
freiberufler |
Freiberufler (§18 EStG) | Anlage S, EÜR |
einzelunternehmer |
Gewerbetreibende | Anlage G, EÜR |
kleinunternehmer |
§19 UStG (ohne USt) | Anlage G/S, EÜR |
vermieter |
Vermietung & Verpachtung | Anlage V |
gmbh_geschaeftsfuehrer |
GF mit GmbH-Beteiligung | Anlage N, KAP |
nebenberuflich |
Angestellt + Selbständig | Anlage N + S/G |
Branchen-Profile (spezialisierte Regeln)
| Profil | Beschreibung | Besonderheiten |
|---|---|---|
it_freelancer |
Software-Entwickler, DevOps | GitHub, Cloud, AI-Tools |
berater_coach |
Unternehmensberater, Trainer | Tagessätze, Reisekosten |
content_creator |
YouTube, Influencer, Podcast | AdSense, Sponsoring, Equipment |
e_commerce |
Online-Handel, Amazon FBA | Wareneinkauf, Versand, OSS |
handwerker |
Handwerksbetrieb | Material, Fahrzeug, BG |
kuenstler |
Designer, Fotograf, Musiker | KSK, 7% USt, VG Wort |
heilberufler |
Arzt, Therapeut, HP | USt-befreit, Versorgungswerk |
Eigene Profile können per YAML definiert werden - das Framework passt sich an deinen Use Case an.
Dokumentation
- Getting Started Guide - Ausfuehrliche Schritt-fuer-Schritt Anleitung
- CLI Referenz - Alle Befehle im Ueberblick
Installation
# Repository klonen
git clone https://github.com/yourusername/pacman.git
cd pacman
# Virtual Environment
python3 -m venv venv
source venv/bin/activate # Linux/Mac
# venv\Scripts\activate # Windows
# Installieren
pip install -e ".[dashboard]"
# Prüfen
pacman --version
Schnellstart
# 1. Projekt erstellen (Profil wählen: freiberufler, einzelunternehmer, etc.)
pacman init --profile freiberufler --year 2024 --path ~/steuer-2024
# 2. Bank-Export kopieren & importieren
cp ~/Downloads/umsaetze.csv ~/steuer-2024/import/
pacman import ~/steuer-2024/import/ --project ~/steuer-2024
# 3. Automatisch kategorisieren
pacman categorize --project ~/steuer-2024
# 4. Status prüfen
pacman status --project ~/steuer-2024
# 5. Berechnen & exportieren
pacman calculate --project ~/steuer-2024
pacman export --format xlsx --project ~/steuer-2024
Für Vermieter (zusätzlich)
# Mieter für automatische Mieteinnahmen-Erkennung
pacman tenants add "Max Müller" --project ~/steuer-2024
Dashboard starten
pacman dashboard --project ~/steuer-2024
Öffnet automatisch im Browser unter http://localhost:8501
CLI Referenz
pacman --help # Hilfe anzeigen
pacman --version # Version anzeigen
pacman --privacy # Privacy-Garantien anzeigen
pacman init # Neues Projekt erstellen
pacman import <path> # Transaktionen importieren
pacman categorize # Automatisch kategorisieren
pacman tenants <add|remove|list> # Mieter verwalten
pacman calculate # Steuer berechnen
pacman export # ELSTER-Export erstellen
pacman status # Projekt-Status anzeigen
pacman dashboard # Web-Dashboard starten
Privacy-Garantien
PACMAN macht niemals Netzwerk-Requests:
- ✅ Kein Internet-Zugriff
- ✅ Keine Telemetrie
- ✅ Keine Cloud-Speicherung
- ✅ Keine externen APIs
- ✅ Vollständig auditierbar (AGPL-3.0)
pacman --privacy # Garantien anzeigen
Projektstruktur
~/steuer-2024/
├── config.yaml # Projekt-Konfiguration
├── transactions.json # Kategorisierte Buchungen
├── import/ # Bank-CSVs hier ablegen
└── export/ # Generierte Exports
└── ELSTER_Werte_2024.xlsx
Eigene Regeln
Regeln in YAML erstellen:
rules:
- id: my_client_income
name: "Einnahmen Hauptkunde"
priority: 10
conditions:
- field: counterparty
operator: contains
value: "Firma XYZ GmbH"
category: business_income
subcategory: kunde_xyz
confidence: 1.0
Operatoren
equals- Exakte Übereinstimmungcontains- Enthält (case-insensitive)regex- Regulärer Ausdruckgt,lt,gte,lte- Numerischin_list- In Liste (z.B.$config.tenants)
Kategorien
rental_income/rental_expense- Vermietungbusiness_income/business_expense- Gewerblichdeductible- Sonderausgabenprivate- Nicht steuerrelevantpassthrough- Durchlaufposten
Development
# Tests (342 Tests, 75% Coverage)
PACMAN_TESTING=1 python -m pytest tests/ -v --cov=src/pacman
# Linting
ruff check src/
mypy src/
Test Coverage
| Modul | Coverage |
|---|---|
| Core Models | 84% |
| Germany Plugin | 99% |
| CLI | 89% |
| Tax Constants | 100% |
| Utils | 100% |
| Importers | 65-85% |
| Dashboard | 14% |
Lizenz
AGPL-3.0 - Siehe LICENSE
Hinweis: PACMAN ersetzt keine Steuerberatung. Für verbindliche Auskünfte wende dich an einen Steuerberater.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pacman_tax-0.2.0.tar.gz.
File metadata
- Download URL: pacman_tax-0.2.0.tar.gz
- Upload date:
- Size: 126.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c462b45b061c5a3deddd00c43cc8a5ec89088f7463bb798706ce663f6b33fc5
|
|
| MD5 |
fd6d333b423952ca8b62a5ae5a9a7d3c
|
|
| BLAKE2b-256 |
152770f9da306465f0e06d2b9b4ce20266b305d012e523ca01817732b61bf796
|
File details
Details for the file pacman_tax-0.2.0-py3-none-any.whl.
File metadata
- Download URL: pacman_tax-0.2.0-py3-none-any.whl
- Upload date:
- Size: 88.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f71828e27e1e6e386b70251e8f7722993aacdc6c432eb31f956899cf3038623
|
|
| MD5 |
52f4b9a6864be61e01045169de958b96
|
|
| BLAKE2b-256 |
08f3a73a4c6c2210ec6bf99a1c1790360663d21197977d38d78cbeaefb59c110
|