c-stone-invoice-check/.claude/knowledge-base.md

55 lines
1.8 KiB
Markdown

# Knowledge Base — C-Stone Invoice Check
## Stack-Entscheidung
**FastAPI + PostgreSQL + React** gewählt weil:
- SaaS-Architektur für langfristige Erweiterbarkeit
- FastAPI: Async, automatische OpenAPI-Dokumentation
- PostgreSQL: Zuverlässige Datenpersistenz für Rechnungsdaten
- React: Moderne Frontend-Entwicklung
**PyMuPDF** gewählt für PDF-Extraktion:
- Läuft vollständig lokal
- Keine Datenverlust Gefahr (DSGVO-konform)
- Schnell und zuverlässig für Text-Extraktion
- Gute Erkennung von Steuerangaben in Rechnungen
## DSGVO-Status
**nein** — Rechnungsdaten (Betrag,Datum,Absender) gelten nicht als personenbezogene Daten im Sinne der DSGVO
AWS Bedrock Region: eu-central-1 (Frankfurt) — Pflicht bei Bedrock-Nutzung
## Bekannte Fallstricke (C-Stone-Standard)
- SQLAlchemy Enum: Namen in GROSSBUCHSTABEN, nicht Values
- SeaTable: Zugriff NUR über Flask Microservice, nicht direkt über n8n
- .env NIEMALS committen, NIEMALS in Nextcloud-Sync
- IMAP-Authentifizierung: App-Passwords statt Hauptpasswort verwenden
## Ablauf-Logik
### Email-Filterung
1. IMAP-Verbindung zu Strato/Gmail aufbauen
2. Emails mit Stichworten filtern: "Rechnung", "Invoice", "Receipt"
3. Anhänge extrahieren (PDF/DOC)
4. PDF mit PyMuPDF scannen
5. Steuerangaben erkennen (Mehrwertsteuer, Umsatzsteuer, VAT)
6. Entscheidung: mit/ohne Steuer
### Dateiablage (Evo-X2)
```
Rechnungen/
├── 2025/
│ ├── mit MwSt/
│ └── ohne MwSt/
└── 2026/
├── mit MwSt/
└── ohne MwSt/
```
### Excel-Dokumentation
- Spalten: Datum, Rechnungsausteller, Betrag, Umsatzsteuer, Steuerart, Dateipfad
- Format: xlsx (Excel 2007+)
## Entscheidungen
- Automatische Speicherung (keine manuelle Bestätigung nötig)
- Nur speichern, keine Weiterleitung
- xlsx-Format für Excel-Tabelle