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

1.8 KiB

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