Zum Hauptinhalt springen

Zahlungsbedingungen

Zweck

Zahlungsbedingungen (PaymentTarget) sind Stammdaten-Vorlagen für Faelligkeit und Skonto. Sie werden auf Belegen (SalesDocument.paymentTargetId, PurchaseDocument.paymentTargetId) und Kunden-Stammdaten referenziert. Standard-Set wird über Setup-Wizard Schritt 8 angelegt — kann hier nachgepflegt werden.

Voraussetzungen

- Berechtigung `create:PaymentTarget`.

Berechtigungen (CASL)

ActionSubjectWirkungKeycloak-Rolle
viewFE_PaymentTarget, PaymentTargetListe/Details aufrufbar
create/update/deletePaymentTargetPflegenAPP_SPEAMCORE_CREATE/UPDATE/DELETE_PAYMENT_TARGET

Schritt-für-Schritt-Anleitung

Zahlungsbedingung anlegen

  1. Zahlungsbedingungen (/payment-targets) → + Neu.
  2. Name vergeben (z. B. „14 Tage 2 % Skonto, 30 Tage netto").
  3. Werte für paymentTermDays, discountDays, discountPercentage setzen.
  4. Änderungen werden automatisch gespeichert (formik.handleSubmit() on change).

Zahlungsziele-Liste mit Demo-Datensaetzen 30 Tage netto / 10 Tage 2% Skonto, 30 Tage netto / 14 Tage netto / Sofort faellig. Spalten: Name, Skonto Tage, Skonto in %, Zahlungsziel in Tagen, DATEV-Zahlungsbedingung. Loeschen-Icon pro Zeile.

Zahlungsziel-Detail mit Feldern Name, Skonto Tage, Skonto in %, Zahlungsziel in Tagen, DATEV-Zahlungsbedingung mit Hilfe-Icon. Custom-Field-Buttons unten.

Toolbar (Detail-Seite)

Schlanke Toolbar oben rechts:

IconAktion (aria-label)CASLWirkung
ZurückgehenZurück zur Liste.
🏠Zur Startseite gehenSpringt auf das Dashboard / /.
⏮/◀/▶/⏭PaginationNavigation durch die gefilterte Liste — Massen-Bearbeitung ohne Liste-Sprung.

Wie auf jeder Detail-Seite verfuegbar — siehe Floating-Quickbar:

  • KAL. (Mini-Kalender)
  • ZEIT (Persoenliche Wochen-Arbeitszeit)
  • ARBEIT (Eigene bevorstehende Aufträge)

UI-Elemente

Button: „+ Neu"

Listenseite. Erfordert create:PaymentTarget. Erzeugt leeren Datensatz und navigiert auf Details.

Button: „FinancialAccountInfoButton"

Detail-Seite, neben financialAccount. Öffnet ein Info-Panel zur verbundenen Finanzbuchhaltungs-Verknuepfung.

Felder und Eingaben

FeldnamePflichtDatentypBeschreibungWirkung beim AusfuellenVoraussetzung
namejaStringBezeichnung der Zahlungsbedingung.Erscheint in Auswahl-Selects auf Belegen und Kundenstamm.
paymentTermDaysneinIntegerStandard-Zahlungsfrist in Tagen.Bestimmt dueDate auf Belegen: documentDate + paymentTermDays.
discountDaysneinIntegerTage, innerhalb derer Skonto gewährt wird.Wenn der Beleg innerhalb dieser Frist bezahlt wird, wird discountPercentage als Nachlass gewährt.
discountPercentageneinFloatProzentualer Nachlass bei Skonto-Zahlung.Reduziert die Zahlungssumme bei rechtzeitigem Eingang.Wert zwischen 0 und ca. 5 % marktueblich.
financialAccountString (read-only)Verknuepfung zur Finanzbuchhaltung.Wird im FE als Text-Input gerendert, ist aber disabled.

Validierung im Live-Walkthrough getestet: keine FE-Validierung. Beim Demo-Eintrag „10 Tage 2 % Skonto, 30 Tage netto" wurde discountDays testweise auf 50 gesetzt (größer als paymentTermDays 30) — Form akzeptiert den Wert ohne Fehler oder Warnung. Auch keine Validierung von discountPercentage auf 0–100. Wenn ihr dort harte Plausibilitaetspruefung wollt, muss sie im Frontend (paymentTargetFieldsConfig.ts oder Formik-Validation) ergaenzt werden — der Backend-Service hat ebenfalls keine Range-Prüfung.

Workflows und Zustaende

PaymentTargets haben kein Status-Feld — Aktivität über paranoid Soft-Delete.

Verknuepfungen zu anderen Modulen

  • VerkaufsbelegeSalesDocument.paymentTargetId. Pflicht ausser bei creditNote.
  • BestellbelegePurchaseDocument.paymentTargetId. Pflicht ausser bei priceRequest.
  • Kunden — Default-Zahlungsbedingung pro Kunde möglich.
  • OP-ListedueDate-Berechnung haengt von paymentTermDays ab.
  • Setup-Wizard Schritt 8 — Standard-Set wird dort angelegt (Sofort, 14 Tage netto, 10/2 30 netto, 30 Tage netto).

API/Schnittstellen

MethodeEndpointZweckCASL
GET/api/payment-targetsListeview PaymentTarget
GET/api/payment-targets/:idDetailview PaymentTarget
POST/api/payment-targetsAnlegencreate PaymentTarget
PUT/api/payment-targets/:idÄndernupdate PaymentTarget
DELETE/api/payment-targets/:idSoft-Deletedelete PaymentTarget

Versionshinweise

  • 2026-04-29: Initiale Veroeffentlichung.