# Validierungsprüfungen und Assistenzgründe

Diese Seite beschreibt, wann Workist ein Dokument ohne Assistenz abschließt, welche Prüfungen ein Dokument in die Assistenz schicken und welche Gründe dafür in Analytics erscheinen. Die auswählbaren Prüfungen schalten Sie im Kanal unter [Dokument → Validierung](/docs/channel-configuration/document-processing/document.md#schritt-6--validierung) ein.

## Wann wird automatisiert?

Workist schließt ein Dokument nur dann automatisch ab und übergibt es an Ihr Zielsystem, wenn **alle** folgenden Bedingungen erfüllt sind. Ist eine davon nicht erfüllt, geht das Dokument in die Assistenz.

1. **Automatisierung aktiviert** ist im Block *Automatisierung* der Seite [Dokument](/docs/channel-configuration/document-processing/document.md#schritt-2--automatisierung) eingeschaltet.
2. **Jedes Kopffeld** erreicht den **Konfidenzschwellenwert der Kopfdaten (%)**, **jedes Positionsfeld in jeder Position** den **Konfidenzschwellenwert der Positionzeilen (%)**. Workist prüft jedes Feld einzeln (Konfidenz ≥ Schwellenwert); es gibt keinen Durchschnitt.
   - **Erforderliche** Felder müssen befüllt sein und den Schwellenwert erreichen.
   - **Optionale** Felder dürfen leer sein. Enthalten sie einen Wert, muss auch dieser den Schwellenwert erreichen.
   - Bei Feldern mit **Feld sollte die Automatisierung nicht blockieren, wenn unterhalb des Schwellenwerts** prüft Workist die Konfidenz nicht. Ein erforderliches Feld muss trotzdem befüllt sein.
3. Das Dokument hat mindestens eine Position, sofern mindestens ein Positionsfeld erforderlich ist.
4. **Keine Validierungsprüfung ist angeschlagen** – weder eine blockierende noch eine nicht blockierende.
5. Bei aktivem Bestell- oder Angebotsabgleich weicht kein verglichenes Feld von den Stammdaten ab (siehe [Abgleich](/docs/channel-configuration/document-processing/matching.md)).
6. Das Dokument enthält keine Unterpositionen. Unterpositionen entstehen nur durch strukturelle Positions-Operationen der [agentischen Positionsextraktion](/docs/channel-configuration/document-processing/agentic-extraction.md#besonderheiten-der-positionsextraktion).

:::note Schwellenwerte ohne gespeicherten Wert
Ist für einen Kanal kein Schwellenwert gespeichert, gilt **100 %**. Dann wird nur automatisiert, wenn jedes geprüfte Feld vollständig sicher ist. Einen eigenen Schwellenwert pro Feld gibt es nicht.
:::

### Blockierend und nicht blockierend

Jede angeschlagene Prüfung verhindert die Automatisierung – auch eine nicht blockierende. Der Unterschied zeigt sich erst in der Assistenz:

- **Nicht blockierend:** Die Prüfung ist ein Hinweis. Bearbeiter:innen können das Dokument abschließen, ohne etwas zu ändern.
- **Blockierend:** Das Dokument lässt sich erst abschließen, wenn der betroffene Wert korrigiert ist.

### Was zum Abschließen in der Assistenz nötig ist

In der Assistenz spielt die Konfidenz keine Rolle mehr. Ein Dokument lässt sich abschließen, sobald

- alle erforderlichen Felder befüllt und gültig sind,
- keine blockierende Prüfung mehr anschlägt,
- jedes abweichende Feld aus dem Bestell- oder Angebotsabgleich korrigiert oder mit **Abweichung akzeptieren** bestätigt ist.

Einige Prüfungen laufen erneut, wenn Bearbeiter:innen ein betroffenes Feld ändern (z. B. Mindestmenge, Artikelstatus, Einzelpreis, Belegnummer). Der Hinweis verschwindet dann, sobald der Wert passt.

## Prüfungen

Die Prüfungen sind in drei Gruppen eingeteilt:

- **Auswählbare Prüfungen** schalten Sie unter *Dokument → Validierung → Validierungsprüfungen* ein oder aus. Welche angeboten werden, hängt vom Dokumenttyp des Kanals ab.
- **Immer aktive Prüfungen** laufen für jedes Dokument des jeweiligen Typs. Ihr Verhalten steuern Sie über Feldoptionen oder Schlüsselwörter.
- **Automatische Prüfungen** entstehen durch Feldoptionen, Stammdaten oder andere Funktionen des Kanals.

Die Spalte *Hinweis an* zeigt, wo die Workbench den Hinweis in der Assistenz anzeigt. Prüfungen ohne deutsche Bezeichnung erscheinen in der Workbench mit dem englischen Namen.

### Auswählbare Prüfungen

<!-- generated by .claude/tasks/docs-audit/scripts/validation_checks_table.py (de) -->
| Prüfung | Dokumenttypen | Schlägt an, wenn … | Hinweis an | Blockierend |
| --- | --- | --- | --- | --- |
| **Gesamtbetrag** | Bestellung, Rechnung, Auftragsbestätigung, Lieferschein | Der Nettogesamtbetrag weicht um mehr als 0,10 von der Summe der Positionsgesamtpreise ab. Fehlen der Gesamtbetrag oder alle Positionsgesamtpreise, wird nicht geprüft. | Gesamtbetrag (netto) | Nein |
| **Position Summe** | Bestellung, Auftragsbestätigung, Lieferschein | Menge × Einzelpreis weicht vom Positionsgesamtpreis ab (Toleranz 1 Cent oder 0,25 %). Rabatte werden nicht berücksichtigt. Die Konfidenz der Menge sinkt auf 0. | Menge der Position | Nein |
| **Positionsnummer** | Bestellung, Auftragsbestätigung, Lieferschein | Die Spanne der Positionsnummern passt nicht zur Anzahl erkannter Positionen (z. B. Positionen 1–5, aber nur 4 erkannt). Schrittweiten wie 10, 20, 30 werden erkannt. | Dokument | Nein |
| **Vergessene Posten** | alle | Auf einer Seite stehen mehr als zwei positionstypische Angaben (Artikelnummer, Menge, Preis …) außerhalb der erkannten Positionen. Bei neuen Kanälen aktiv. | Dokument | Nein |
| **Unvollständige Posten** | alle | Artikelnummer, Menge oder Positionsnummer ist nur bei einem Teil der Positionen vorhanden. Bei nur einer Position: solche Angaben stehen auf der Seite außerhalb dieser Position. | Dokument | Nein |
| **Maximale Menge** | Bestellung, Preisanfrage | Eine Menge liegt über dem **Maximalwert** des Positionsfelds *Menge* (Standard 999). Die Konfidenz der Menge sinkt auf 30 %. | Menge | Nein |
| **Min quantity** | Bestellung, Preisanfrage | Eine Menge unterschreitet die Mindestmenge oder ist kein Vielfaches der Verpackungseinheit, die in den Zusatzdaten des Artikels steht. Siehe [Mindestmengen-Regeln](#mindestmengen-regeln). | Menge bzw. umgerechnete Menge | Je Regel (Standard: ja) |
| **Massenbestellzusammenfassung entfernen** | Bestellung | Workist entfernt die letzten Positionen, wenn sie eine Zusammenfassung sind (für jeden Artikel ist die letzte Menge die Summe der vorherigen). Findet Workist keine solche Zusammenfassung, schlägt die Prüfung an – auch bei gewöhnlichen Bestellungen. | Dokument | Nein |
| **Repeated positions (e.g. appended summary or order confirmation)** | Bestellung, Preisanfrage | Die letzten Positionen wiederholen frühere Positionen (gleiche Artikelnummer, Artikelnummer 2 und Menge), z. B. durch eine angehängte Zusammenfassung oder Auftragsbestätigung. | Artikelnummer der wiederholten Positionen | Nein |
| **Kundeninterne Notiz** | alle | Für den erkannten Kunden bzw. Lieferanten steht in den Stammdaten eine interne Notiz (`internal_note`). Der Dokumenttext wird nicht ausgewertet. | Dokument | Nein |
| **ERP-Sperre** | Bestellung | Die Bestellung ist bei der Verarbeitung bereits als „für die Weiterverarbeitung gesperrt“ markiert. Das geschieht nur durch eine kundenspezifische Anpassung. | Dokument | Nein |
| **Mehrere Vertriebsorganisationen** | Bestellung | Für den Artikel einer Position gibt es in den Stammdaten mehr als eine Vertriebsorganisation. Eine Bearbeiter:in wählt die passende aus. | Vertriebsorganisation der Position | Nein |
| **Tausendertrennzeichen bei Mengen** | alle | Menge und Preise verwenden unterschiedliche Trennzeichen, und Menge × 1.000 bzw. Menge ÷ 1.000 passt zu Gesamtpreis ÷ Einzelpreis. Eine Schreibweise wie `1.000` allein löst die Prüfung nicht aus. Bei neuen Kanälen aktiv. | Menge | Nein |
| **Abgleich von Artikelbeschreibungen (experimentell)** | Bestellung, Preisanfrage | Ein Sprachmodell bewertet, ob die Artikelbeschreibung aus dem Dokument und die aus den Stammdaten denselben Artikel meinen. Unter 50 % Wahrscheinlichkeit schlägt die Prüfung an. | Artikelbeschreibung | Nein |
| **Article status** | Bestellung, Preisanfrage | Der zugeordnete Artikel hat in den Stammdaten (`article_status`) einen Status, der in einer Artikelstatus-Regel steht. Siehe [Artikelstatus-Regeln](#artikelstatus-regeln). | Artikelnummer | Je Regel (Standard: ja) |
| **Angebotsabgleich** | Bestellung | Die Bestellung nennt eine Angebotsnummer, und Werte weichen vom Angebot ab, die Angebotsnummer ist unbekannt, oder die Bestellung hat weniger Positionen als das Angebot. Siehe [Abgleich](/docs/channel-configuration/document-processing/matching.md). | Abweichende Felder | Bis korrigiert oder akzeptiert |
| **Offene Angebotsprüfung (nur wenn Angebotsabgleich aktiviert ist)** | Bestellung | Die Bestellung enthält keine Angebotsnummer, aber für den Kunden gibt es Angebote in den [Angebots-Stammdaten](/docs/master-data/quotes.md). | Angebotsnummer | Nein |
| **Unique document number** | alle | Im selben Kanal gibt es aus den letzten 30 Tagen ein Dokument mit derselben Belegnummer und derselben Kunden- bzw. Lieferantennummer. Verworfene, abgelehnte und gelöschte Dokumente zählen nicht. Fehlt eine der beiden Nummern, wird nicht geprüft. | Belegnummer | Nein |
| **Unit price / gross price mismatch check** | Bestellung | Der Einzelpreis einer Position ist nicht genau der Preis des Artikels aus den Stammdaten (`gross_price`), oder der Artikel hat dort keinen Preis. | Einzelpreis | Ja |
| **Bestellabgleich** | Rechnung, Auftragsbestätigung | Werte weichen von der Bestellung in den Bestelldaten ab, oder die Bestellnummer ist dort unbekannt. Siehe [Abgleich](/docs/channel-configuration/document-processing/matching.md). | Abweichende Felder | Bis korrigiert oder akzeptiert |
| **Order matching: Partial confirmations** | Auftragsbestätigung | Keine eigene Prüfung: erlaubt Auftragsbestätigungen mit weniger Positionen als die Bestellung. Ohne diese Option schlägt der Bestellabgleich dann an. | – | – |

:::warning Massenbestellzusammenfassung entfernen
Diese Prüfung schlägt bei jeder Bestellung an, die **keine** Zusammenfassung am Ende enthält. Schalten Sie sie nur für Kanäle ein, deren Bestellungen immer eine solche Zusammenfassung haben.
:::

:::tip Einzelpreis aus dem Katalog übernehmen
Ist am Positionsfeld *Einzelpreis* die Option **Allow overriding unit price with catalog price (via button)** aktiv, übernehmen Bearbeiter:innen bei der Prüfung *Unit price / gross price mismatch check* den Preis aus den Stammdaten mit der Schaltfläche **Use catalog price**.
:::

### Immer aktive Prüfungen

| Prüfung | Dokumenttypen | Schlägt an, wenn … | Hinweis an | Blockierend |
| --- | --- | --- | --- | --- |
| **Schlüsselwörter zur Unterstützung** | alle | Ein Begriff aus **Schlüsselwörter zur Unterstützung** steht im Dokument oder im E-Mail-Text. | Dokument | Nein |
| Feldlänge | alle | Ein Wert ist länger als die **Maximale Feldlänge** des Felds. Ist **Automatisierung blockieren, wenn die maximale Feldlänge überschritten wird** aus, kürzt Workist den Wert; der Hinweis bleibt. | Betroffenes Feld | Je Feld |
| **Bestelldatum** | Bestellung | Ein Lieferdatum (Kopf oder Position) liegt vor dem Bestelldatum. Nur wenn das Bestelldatum und ein Lieferdatumsfeld konfiguriert sind; entfällt mit der Option für vergangene Lieferdaten am Kopffeld Lieferdatum. | Lieferdatum | Nein |
| Kunde aus Angebot | Bestellung | Nur mit Angebotsabgleich: Das Angebot gehört zu einem anderen Kunden als dem erkannten. Workist hat den Kunden aus dem Angebot übernommen; eine Bearbeiter:in bestätigt, welcher stimmt. | Kunde | Nein |

Schlüsselwörter vergleicht Workist wortweise, ohne Groß-/Kleinschreibung und ohne Satzzeichen. Begriffe aus mehreren Wörtern müssen in dieser Reihenfolge direkt hintereinander stehen.

### Automatische Prüfungen

| Prüfung | Dokumenttypen | Schlägt an, wenn … | Hinweis an | Blockierend |
| --- | --- | --- | --- | --- |
| **Assigned user not found** | alle | Die [Benutzerzuweisung](/docs/channel-configuration/document-processing/document.md#schritt-3--benutzerzuweisung) ist aktiv, aber die verantwortliche Person aus den Stammdaten (bzw. die Standard-E-Mail) ist kein aktiver Workbench-Benutzer. | Dokument | Nein |
| Dezimalmenge | alle | Eine Menge hat Nachkommastellen, obwohl **Dezimalmengen erlauben** am Positionsfeld *Menge* aus ist. | Menge | Ja |
| Nullmenge | alle | Eine Menge ist 0, obwohl **Nullmengen erlauben** am Positionsfeld *Menge* aus ist (Standard: an; bei Preisanfragen nicht einstellbar) – oder die Einheitenumrechnung hat eine positive Menge auf 0 gerundet (immer). | Menge | Ja |
| USt-IdNr. | Bestellung, Preisanfrage | Nur wenn das Kopffeld USt-IdNr. konfiguriert ist und der Kunde aus einem EU-Land außer Deutschland kommt: Es gibt keine USt-IdNr. im Dokument oder in den Kundenstammdaten, das Format ist ungültig, oder die Online-Prüfung bestätigt Nummer, Name und Adresse nicht. Die Konfidenz des Felds sinkt auf 0. | USt-IdNr. | Nein |
| Nummer in Abgleichsdaten | Bestellung, Rechnung, Auftragsbestätigung | Nur mit Bestell- oder Angebotsabgleich: Die Nummer steht nicht in den Abgleichsdaten. | Bestell- bzw. Angebotsnummer | Nein |
| Positionsanzahl Angebot | Bestellung | Nur mit Angebotsabgleich: Die Bestellung hat weniger Positionen als das Angebot. | Dokument | Nein |
| Positionsanzahl Bestellung | Rechnung, Auftragsbestätigung | Nur mit Bestellabgleich: Die Anzahl der Positionen weicht von der Bestellung ab (Regeln siehe [Abgleich](/docs/channel-configuration/document-processing/matching.md#anzahl-der-positionen)). | Dokument | Nein |
| Mehrdeutige Positionen | Auftragsbestätigung | Nur mit Bestellabgleich: Zwei oder mehr Positionen sind in allen Abgleichsfeldern identisch und lassen sich keiner Bestellposition eindeutig zuordnen. | Dokument | Nein |
| Agentische Extraktion fehlgeschlagen | alle | Eine [agentische Konfiguration](/docs/channel-configuration/document-processing/agentic-extraction.md) konnte technisch nicht ausgeführt werden. Die Werte der Standardextraktion bleiben; ihre Konfidenz sinkt auf 0. Der Hinweis allein verhindert die Automatisierung nicht. | Dokument | Nein |
| Wissensdatei zu groß | alle | Eine Wissensdatei einer agentischen Konfiguration ist zu groß (über 200.000 Tokens); die Konfiguration läuft nicht. Wirkung wie oben. | Dokument | Nein |

### Mindestmengen-Regeln

Ist die Prüfung **Min quantity** eingeschaltet, erscheint im Block *Validierung* der Regel-Editor **Min quantity rules**. Jede Regel vergleicht die Menge jeder Position mit einem Wert aus den Zusatzdaten (`extra_data`) des zugeordneten Artikels in den [Artikel-Stammdaten](/docs/master-data/articles.md). Die Einstellungen der Regeln sind in der Workbench derzeit nur auf Englisch beschriftet.

| Einstellung | Bedeutung |
| --- | --- |
| **Extra data field** | Pflicht. Name des Felds in den Zusatzdaten des Artikels, das den Wert enthält, z. B. `min_quantity`. |
| **Check type** | **Minimum**: Die Menge muss mindestens dem Wert entsprechen. **Multiple**: Die Menge muss ein ganzzahliges Vielfaches des Werts sein (z. B. eine Verpackungseinheit); damit ist der Wert zugleich die Mindestmenge. |
| **Quantity to check** | **Quantity** (Menge aus dem Dokument) oder **Converted quantity** (Menge nach der Einheitenumrechnung). |
| **Number format in master data** | Wie der Wert in den Stammdaten geschrieben ist: **English (1,000.5)** (Standard; `10.500` ist 10,5) oder **German (1.000,5)** (`10.500` ist 10.500). |
| **Blocking** | Standard: an. Eine unterschrittene Menge muss vor dem Abschließen korrigiert werden. Aus: nur ein Hinweis. |
| **Article list (lookup definition ID)** | Optional. Liest den Wert aus dieser Artikelliste statt aus dem zugeordneten Artikel. Ein kundenspezifischer Eintrag hat Vorrang vor dem allgemeinen. |

Workist prüft alle Regeln. Verletzt eine Position mehrere Regeln, zeigt die Workbench die erste in der Reihenfolge des Editors. Artikel ohne Wert im angegebenen Feld, mit dem Wert 0 oder mit einem nicht lesbaren Wert werden nicht geprüft. Der Hinweis erscheint am Feld *Menge* und nennt die Menge, die geforderte Menge und die Artikelnummer.

### Artikelstatus-Regeln

Ist die Prüfung **Article status** eingeschaltet, erscheint im Block *Validierung* der Regel-Editor **Article status rules**. Grundlage ist die Spalte `article_status` der [Artikel-Stammdaten](/docs/master-data/articles.md), z. B. „gesperrt“, „ausgelaufen“ oder „Gefahrgut“. Die Einstellungen sind in der Workbench derzeit nur auf Englisch beschriftet.

| Einstellung | Bedeutung |
| --- | --- |
| **Article statuses** | Pflicht. Ein oder mehrere Status, jeweils mit Tab oder Enter bestätigen. Groß-/Kleinschreibung spielt keine Rolle. |
| **Blocking** | Standard: an. Der Artikel muss vor dem Abschließen getauscht werden. Aus: nur ein Hinweis. |

Workist prüft die Regeln der Reihe nach; es gilt die erste Regel, die den Status des Artikels enthält. So können Sie z. B. „gesperrt“ blockierend und „Auslaufartikel“ nur als Hinweis einstellen. Artikel ohne Status oder mit einem Status, den keine Regel nennt, werden nicht geprüft. Der Hinweis erscheint an der Artikelnummer der Position.

## Assistenzgründe in Analytics

Für jedes Dokument, das in die Assistenz geht, speichert Workist die Gründe. Die häufigsten zeigt [Analytics](/docs/administration/analytics.md) unter **Top 5 Gründe für Unterstützung**. Ein Dokument kann mehrere Gründe haben.

| Grund in Analytics | Bedeutung |
| --- | --- |
| „Ungültiges Feld …“ | Ein erforderliches Feld (oder Unterfeld) ist leer, oder eine blockierende Prüfung an diesem Feld ist angeschlagen. |
| „Unsicheres Feld …“ | Die Konfidenz des Felds liegt unter dem Schwellenwert – bei einem erforderlichen Feld oder bei einem optionalen Feld mit Wert. |
| „Validierungsprüfung … fehlgeschlagen“ | Eine Validierungsprüfung ist angeschlagen, blockierend oder nicht. Der Name der Prüfung wird angezeigt. |
| „Keine Positionen“ | Es wurde keine Position erkannt, obwohl mindestens ein Positionsfeld erforderlich ist. |
| „… weicht von der Bestellung ab“ | Ein abgeglichenes Feld weicht von den Bestell- bzw. Angebotsdaten ab (siehe [Abgleich](/docs/channel-configuration/document-processing/matching.md)). |
| Unterpositionen vorhanden | Das Dokument enthält Unterpositionen. Sie entstehen nur durch strukturelle Positions-Operationen der agentischen Positionsextraktion. Solche Dokumente werden nie automatisch abgeschlossen. |

:::tip Mit den Gründen nachsteuern
- Viele **unsichere Felder** desselben Typs: Prüfen Sie, ob das Feld wirklich erforderlich ist, ob die Stammdaten den Wert enthalten oder ob **Feld sollte die Automatisierung nicht blockieren, wenn unterhalb des Schwellenwerts** passt.
- Viele **fehlgeschlagene Validierungsprüfungen** desselben Namens: Prüfen Sie, ob die Prüfung für den Kanal nötig ist. Nicht blockierende Prüfungen verhindern die Automatisierung ebenfalls.
:::

## Häufige Fragen

**Alle Felder waren sicher, trotzdem ging das Dokument in die Assistenz. Warum?**
Meist hat eine nicht blockierende Prüfung angeschlagen, z. B. *Vergessene Posten* oder *Unique document number*. Der Hinweis steht oben im Dokument bzw. am betroffenen Feld. Auch ein befülltes optionales Feld mit niedriger Konfidenz verhindert die Automatisierung.

**Kann ich eine Prüfung nur als Hinweis verwenden, ohne die Automatisierung zu stoppen?**
Nein. Jede angeschlagene Prüfung schickt das Dokument in die Assistenz. „Nicht blockierend“ bedeutet nur, dass Bearbeiter:innen das Dokument ohne Änderung abschließen können.

**Gibt es einen Konfidenzschwellenwert pro Feld?**
Nein. Es gibt einen Schwellenwert für alle Kopffelder und einen für alle Positionsfelder. Pro Feld können Sie die Konfidenzprüfung nur ganz abschalten (**Feld sollte die Automatisierung nicht blockieren, wenn unterhalb des Schwellenwerts**).
