WorkmateOS Finanz- & Rechnungserstellung - Schnellreferenz
Aktueller Implementierungsstatus
Vollständig implementierte Features
Rechnungserstellung mit Positionen
Automatische Rechnungsnummerierung (RE-2025-0001 Format)
Zahlungsverfolgung & -erfassung
Rechnungsstatus-Verwaltung (draft, sent, paid, partial, overdue, cancelled)
Auto-Status-Updates bei Zahlungseingängen
Professionelle PDF-Generierung mit SEPA QR-Codes
Ausgabenverfolgung mit Kategorien
Finanz-KPIs (Summen, Aufschlüsselung nach Kategorien)
Vollständige REST API mit Pagination & Filtern
Datenbank-Validierung & Constraints
Kunden- & Projekt-Integration
Mehrere Dokumenttypen (invoice, quote, credit_note, order_confirmation)
Zahlungsmethoden-Tracking (cash, bank_transfer, credit_card, etc.)
Decimal-Arithmetik für finanzielle Genauigkeit
Noch nicht implementiert
Wichtige API-Pfade
Rechnungen
1
2
3
4
5
6
7
8
GET /api/backoffice/invoices/
POST /api/backoffice/invoices/
GET /api/backoffice/invoices/statistics
GET /api/backoffice/invoices/{invoice_id}
GET /api/backoffice/invoices/{invoice_id}/pdf
PATCH /api/backoffice/invoices/{invoice_id}
DELETE /api/backoffice/invoices/{invoice_id}
POST /api/backoffice/invoices/{invoice_id}/payments
Finanzen
1
2
3
GET /api/backoffice/finance/expenses
POST /api/backoffice/finance/expenses
GET /api/backoffice/finance/kpis/expenses
Datenbank-Modelle (Entity-Beziehungen)
1
2
3
4
5
6
7
Kunde ─────────→ Rechnung ──────────→ Rechnungsposition
↓
Zahlung
Projekt ───→ Rechnung
↓
Ausgabe ──→ Rechnung (optional)
Rechnungsnummern-Format: PREFIX-JAHR-LAUFNUMMER (z.B. RE-2025-0001)
Präfixe nach Typ:
RE = Rechnung (Invoice)
AN = Angebot (Quote)
GS = Gutschrift (Credit Note)
ST = Stornierung (Cancellation)
MwSt. Standard: 19%
Pagination Max: 500 Einträge pro Anfrage
Unterstützte Zahlungsmethoden: 7 (cash, bank_transfer, credit_card, debit_card, paypal, sepa, other)
Dateistandorte
Komponente
Pfad
Rechnungsmodelle
backend/app/modules/backoffice/invoices/models.py
Rechnungs-API
backend/app/modules/backoffice/invoices/routes.py
Rechnungs-CRUD
backend/app/modules/backoffice/invoices/crud.py
Zahlungs-CRUD
backend/app/modules/backoffice/invoices/payments_crud.py
PDF-Generator
backend/app/modules/backoffice/invoices/pdf_generator.py
Finanzmodelle
backend/app/modules/backoffice/finance/models.py
Finanz-API
backend/app/modules/backoffice/finance/router.py
Finanz-CRUD
backend/app/modules/backoffice/finance/crud.py
Schemas
backend/app/modules/backoffice/{invoices,finance}/schemas.py
Migrationen
backend/alembic/versions/* (3 Migrationsdateien)
Rechnungs-Objekt-Eigenschaften (Berechnet)
1
2
3
4
5
6
rechnung . paid_amount # Summe aller Zahlungen
rechnung . outstanding_amount # Total - paid_amount
rechnung . is_paid # Boolean: outstanding_amount == 0
rechnung . is_overdue # Boolean: heute > due_date und nicht bezahlt
rechnung . payment_rate # Bezahlter Prozentsatz (0-100)
rechnung . days_until_due # Verbleibende Tage (-N wenn überfällig)
Positionsberechnungen
1
2
3
4
5
zwischensumme = menge × einzelpreis
rabatt_betrag = zwischensumme × (rabatt_prozent / 100)
zwischensumme_nach_rabatt = zwischensumme - rabatt_betrag
steuer_betrag = zwischensumme_nach_rabatt × (steuer_satz / 100)
positions_gesamt = zwischensumme_nach_rabatt + steuer_betrag
Rechnungsstatus-Ablauf
1
ENTWURF → VERSENDET → { BEZAHLT | TEILBEZAHLT | ÜBERFÄLLIG } | STORNIERT
Status wird automatisch aktualisiert wenn:
Zahlung erstellt: kann BEZAHLT oder TEILBEZAHLT werden
Zahlung aktualisiert: Status neu berechnet
Zahlung gelöscht: Status neu berechnet
Firmendetails (Fest kodiert im PDF)
Name: K.I.T. Solutions
Inhaber: Joshua Phu Kuhrau
Adresse: Dietzstr. 1, 56073 Koblenz, Germany
E-Mail: info@kit-it-koblenz.de
Telefon: Tel. 0162 / 2654262
Website: https://kit-it-koblenz.de
IBAN: DE94100110012706471170
BIC: NTSBDEB1XX
Letzte Änderungen (aus Git-Commits)
2025-10-24 : Erstes Rechnungs- & Zahlungsmodul mit PDF-Generierung
2025-11-19 : document_type Feld hinzugefügt (Multi-Dokument-Unterstützung)
2025-12-16 : Erweitert mit Finanzmodul & Ausgabenverfolgung
2025-12-19 : Nextcloud-Speicher-Integration für Dokumente
Tests
Testdatei: backend/tests/test_invoice.py
Manueller Integrationstest gegen Live-API. Testet:
Rechnungserstellung mit Positionen
PDF-Generierung & Download
Zahlungsablauf
Status-Updates
Ausführen mit: python tests/test_invoice.py
Nächste Prioritäten
UI-Modul - Vue.3/Vite-Komponenten für Rechnungs-/Finanzverwaltung erstellen
Payment-Gateway - Stripe/PayPal-Integration mit Webhooks
Erweiterte Berichte - GuV, Steuer, Cashflow, Profitabilitäts-Analyse
Buchhaltung - Kontenplan, Journal-Einträge, Hauptbuch-Ansichten
Finanzanalyse - Dashboards, Trend-Analyse, Forecasting