Gutschriften Phase 2a: Kleinunternehmer-Flag am Kunden + USt-Default

Kunden-Feld vatExempt (Kleinunternehmer/USt-befreit §19) + Migration
(ADD COLUMN IF NOT EXISTS). Checkbox im Kundenformular nur fuer
Firmenkunden.

Gutschrift-Vorbelegung vatRelevant wird aus dem Kunden abgeleitet:
Firmenkunde ohne USt-Befreiung -> USt-relevant an (Netto), sonst aus
(wie Privat). Jede Gutschrift speichert ihren eigenen Snapshot, ein
spaeterer Statuswechsel des Kunden aendert bestehende Gutschriften
nicht.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-06 10:10:13 +02:00
co-authored by Claude Opus 4.8
parent f1c37a7d25
commit 3580c51cb1
9 changed files with 54 additions and 8 deletions
+6 -1
View File
@@ -116,7 +116,12 @@ isolierte Instanz (keine Multi-Tenancy im Code), Provisioning + Abrechnung
`GET/PUT/DELETE /credit-notes/:id`, `GET/PUT /credit-notes/number-range`.
Portal-Token explizit geblockt (interner Bereich), CREATE/UPDATE/DELETE
auditiert.
- **Offen:** Phase 2 (Vertrag-UI + Beleg-Upload + Nummernkreis-UI),
- **Phase 2a (erledigt):** Kunden-Feld `vatExempt` (Kleinunternehmer §19,
Checkbox nur für Firmenkunden) + Migration. Gutschrift-Default `vatRelevant`
wird abgeleitet: Firmenkunde ohne USt-Befreiung → USt-relevant an, sonst
aus. Jede Gutschrift speichert ihren Snapshot → späterer Statuswechsel
ändert bestehende Gutschriften nicht. USt-Default „aus Kundentyp ableiten".
- **Offen:** Phase 2b (Vertrag-Tab „Gutschriften" + Beleg-Upload + Nummernkreis-UI),
Phase 3 (PDF + ZUGFeRD/PDF-A3, muss gegen ZUGFeRD-Validator geprüft
werden). USt-Einordnung (Vermittlung vs. Abschlussbonus) mit Steuerberater
klären Modell deckt beide über `vatRelevant` ab.