# Abgleich mit Bestell- und Angebotsdaten

Workist kann Dokumente mit Daten aus Ihrem System abgleichen: Bestellungen mit Ihren **Angeboten**, Rechnungen und Auftragsbestätigungen mit Ihren **Bestellungen**. Stimmt alles überein, kann das Dokument automatisch durchlaufen. Weicht etwas ab, geht es in die Assistenz, und die Abweichung ist am Feld markiert.

Dieselben Daten nutzt Workist auch, um leere Dokumente mit Positionen vorzubefüllen und um Bestellungen den richtigen Kunden zuzuordnen.

| Dokumenttyp | Abgleich mit | Referenz im Dokument | Stammdaten | Validierungsprüfung |
| --- | --- | --- | --- | --- |
| Bestellung | Angebot | Angebotsnummer | [Angebote](/docs/master-data/quotes.md) | **Angebotsabgleich** |
| Rechnung | Bestellung | Bestellnummer | [Abzugleichende Bestellungen](/docs/master-data/orders-to-be-matched.md) | **Bestellabgleich** |
| Auftragsbestätigung | Bestellung | Bestellnummer | [Abzugleichende Bestellungen](/docs/master-data/orders-to-be-matched.md) | **Bestellabgleich** |

## Voraussetzungen

- Die Stammdaten (Angebote bzw. abzugleichende Bestellungen) sind importiert und im Kanal unter **Stammdaten** im Block **Stammdatenabgleich** als **Angebotsabgleich-Lookup-ID** bzw. **Bestellabgleich-Lookup-ID** hinterlegt.
- Die Validierungsprüfung **Angebotsabgleich** bzw. **Bestellabgleich** ist unter [Dokument → Validierung](/docs/channel-configuration/document-processing/document.md#schritt-6--validierung) eingeschaltet.
- Die Felder, die verglichen werden sollen, sind als [Kopffelder](/docs/channel-configuration/document-processing/header-fields.md) bzw. [Positionzeilenfelder](/docs/channel-configuration/document-processing/line-item-fields.md) im Kanal konfiguriert. Nicht konfigurierte Felder vergleicht Workist nicht.

Welche Felder verglichen werden und welche Abweichungen erlaubt sind, legt Workist bei der Einrichtung gemeinsam mit Ihnen fest.

## Was verglichen wird

Workist sucht den Datensatz mit der Nummer aus dem Dokument (Angebots- bzw. Bestellnummer) und vergleicht die Felder des Dokuments mit den Spalten dieses Datensatzes. Ohne besondere Einrichtung gilt:

- Verglichen werden die Felder mit „Ja“ in der Spalte *Standardmäßig verglichen*.
- Ein Feld wird nur verglichen, wenn die Stammdaten dafür einen Wert enthalten. Leere Spalten übergeht Workist.
- Die Werte müssen genau übereinstimmen.

Je nach Einrichtung kann Workist auch weitere Felder vergleichen, Abweichungen innerhalb einer Toleranz akzeptieren (absolut, in Prozent, in Kalender- oder Werktagen oder als Textähnlichkeit) und Werte vor dem Vergleich bereinigen (z. B. Groß-/Kleinschreibung, Leerzeichen, Zahlenformat).

<!-- generated by .claude/tasks/docs-audit/scripts/matching_fields_table.py (de, offer) -->
**Bestellung ↔ Angebot**

| Ebene | Feld im Dokument | Spalte in den Stammdaten | Standardmäßig verglichen |
| --- | --- | --- | --- |
| Kopf | Angebotsreferenz | `offer_number` | Ja |
| Kopf | Kunde | `partition_id` | Ja |
| Position | Position | `position_number` | Nein |
| Position | Artikelnummer | `article_id1` | Ja |
| Position | Artikelnummer 2 | `article_id2` | Nein |
| Position | Artikelnummer 3 | `article_id3` | Nein |
| Position | Menge | `quantity` | Nein |
| Position | Einheit | `unit` | Nein |
| Position | Artikelbeschreibung | `article_description` | Nein |

<!-- generated by .claude/tasks/docs-audit/scripts/matching_fields_table.py (de, invoice) -->
**Rechnung ↔ Bestellung**

| Ebene | Feld im Dokument | Spalte in den Stammdaten | Standardmäßig verglichen |
| --- | --- | --- | --- |
| Kopf | Bestellnummer | `order_number` | Ja |
| Kopf | Absender / Lieferant | `partition_id` | Ja |
| Kopf | Rechnungsdatum | `order_date` | Ja |
| Kopf | Empfängeradresse | `delivery_address` | Ja |
| Kopf | Kundennummer des Empfängers | `receiver_number` | Ja |
| Kopf | IBAN | `iban` | Ja |
| Kopf | BIC | `swift` | Ja |
| Kopf | Verwendungszweck | `account` | Ja |
| Kopf | Skonto | `payment_terms_discount` | Ja |
| Kopf | Zahlungsziel (Tage) | `payment_terms_due_days` | Ja |
| Kopf | Zahlungsbedingungsart | `payment_terms_type` | Ja |
| Kopf | Zahlungsbedingungen | `payment_terms_type` | Ja |
| Position | Position | `position_number` | Ja |
| Position | Artikelnummer | `article_id1` | Ja |
| Position | Kundenspezifische Artikelnummer | `article_id2` | Ja |
| Position | Artikelnummer 3 | `article_id3` | Ja |
| Position | Einzelpreis | `article_price` | Ja |
| Position | Preiseinheit | `price_unit` | Ja |
| Position | Menge | `quantity` | Ja |
| Position | Gesamtpreis | `total_price` | Ja |
| Position | Einheit | `unit` | Ja |

<!-- generated by .claude/tasks/docs-audit/scripts/matching_fields_table.py (de, oc) -->
**Auftragsbestätigung ↔ Bestellung**

| Ebene | Feld im Dokument | Spalte in den Stammdaten | Standardmäßig verglichen |
| --- | --- | --- | --- |
| Kopf | Bestellnummer | `order_number` | Ja |
| Kopf | Zulieferer | `partition_id` | Ja |
| Kopf | Lieferdatum | `delivery_date` | Ja |
| Kopf | Lieferadresse | `delivery_address` | Ja |
| Kopf | Käufer | `receiver_number` | Ja |
| Kopf | Gesamtbetrag (netto) | `order_total_price` | Ja |
| Position | Position | `position_number` | Ja |
| Position | Artikelnummer | `article_id1` | Ja |
| Position | Artikelnummer 2 | `article_id2` | Ja |
| Position | Artikelnummer 3 | `article_id3` | Ja |
| Position | Einzelpreis | `article_price` | Ja |
| Position | Preiseinheit | `price_unit` | Ja |
| Position | Menge | `quantity` | Ja |
| Position | Gesamtpreis | `total_price` | Ja |
| Position | Lieferdatum | `delivery_date` | Ja |
| Position | Einheit | `unit` | Ja |
| Position | Artikelbeschreibung | `article_description` | Nein |

Bei Kunde, Lieferant und Käufer vergleicht Workist die Kunden- bzw. Lieferantennummer, bei Adressen die Adressnummer.

### Zuordnung der Positionen

Bei Bestellungen und Auftragsbestätigungen ordnet Workist jede Position des Dokuments der am besten passenden Position aus den Stammdaten zu. Dafür nutzt es die verglichenen Felder und die Artikelbeschreibung. Bei Auftragsbestätigungen ordnet zusätzlich ein Sprachmodell Positionen zu, die danach noch übrig sind, etwa weil der Lieferant eigene Bezeichnungen verwendet. Unsichere Vorschläge verwirft Workist; die Position bleibt dann ohne Zuordnung.

Sind zwei oder mehr Positionen einer Auftragsbestätigung in allen verglichenen Feldern identisch, kann Workist sie nicht eindeutig zuordnen. Das Dokument geht mit dem Hinweis auf mehrdeutige Positionen in die Assistenz.

### Anzahl der Positionen

| Dokumenttyp | Hinweis, wenn … |
| --- | --- |
| Bestellung | die Bestellung **weniger** Positionen hat als das Angebot. Mehr Positionen sind erlaubt. |
| Rechnung | die Anzahl der Positionen von der Bestellung abweicht. |
| Auftragsbestätigung | die Auftragsbestätigung **mehr** Positionen hat als die Bestellung – außer die Zahl der Positionen mit eigenem Preis stimmt (Fracht, kostenlose Positionen und Unterpositionen zählen dann nicht mit). **Weniger** Positionen führen zum Hinweis, außer die Option **Order matching: Partial confirmations** ist unter *Validierungsprüfungen* eingeschaltet. |

## Ergebnis des Abgleichs

**Übereinstimmung:** Das Feld erhält eine Konfidenz von 100 %. In der Assistenz zeigt die Erklärung am Feld, dass der Wert zu Ihren Bestell- bzw. Angebotsdaten passt, und wann diese zuletzt aktualisiert wurden.

**Abweichung:** Das Dokument geht in die Assistenz. Am abweichenden Feld zeigt die Workbench den erwarteten Wert aus den Stammdaten. Bearbeiter:innen

- korrigieren den Wert, oder
- bestätigen den Wert aus dem Dokument mit **Abweichung akzeptieren**, oder
- schalten für eine einzelne Position den Abgleich mit **Abgleich ignorieren** ab (rückgängig mit **Abgleich wiederherstellen**).

Erst dann lässt sich das Dokument abschließen. In Analytics erscheint die Abweichung als Assistenzgrund „… weicht von der Bestellung ab“ (siehe [Validierungsprüfungen und Assistenzgründe](/docs/channel-configuration/document-processing/validation-checks.md#assistenzgründe-in-analytics)).

**Nummer nicht gefunden:** Steht die Angebots- bzw. Bestellnummer nicht in den Stammdaten, ist das Nummernfeld markiert, und alle verglichenen Felder zeigen „keine Daten gefunden“. Das Dokument geht in die Assistenz. Korrigiert eine Bearbeiter:in die Nummer, läuft der Abgleich erneut.

:::note Gültigkeit von Angeboten
Die Spalten `valid_from` und `valid_until` der Angebots-Stammdaten wertet Workist beim Abgleich nicht aus. Auch abgelaufene Angebote werden gefunden. Importieren Sie nur gültige Angebote oder filtern Sie abgelaufene beim Import heraus (siehe [Transformer-Konfiguration](/docs/master-data/transformer-configuration.md)).
:::

## Bestellungen: Kunde und Positionsdaten aus dem Angebot

Ist der Angebotsabgleich aktiv und gehört das Angebot genau einem Kunden (`partition_id`), übernimmt Workist diesen Kunden in die Bestellung:

- Wurde kein Kunde erkannt, setzt Workist den Kunden aus dem Angebot ein.
- Wurde ein anderer Kunde erkannt, ersetzt Workist ihn durch den Kunden aus dem Angebot und markiert das Feld *Kunde*. Eine Bearbeiter:in bestätigt, welcher Kunde stimmt.

Nach dem Abgleich übernimmt Workist für jede zugeordnete Position die Angebotsnummer und die Positionsnummer aus dem Angebot. So kann Ihr ERP jede Bestellposition der Angebotsposition zuordnen.

## Leere Dokumente vorbefüllen

Enthält ein Dokument eine Nummer, aber **keine Positionen**, übernimmt Workist die Positionen aus den Stammdaten (höchstens 100). Das ist z. B. bei Bestellungen der Fall, die nur auf ein Angebot verweisen, oder bei Sammel-Auftragsbestätigungen, die Bestellungen nur per Nummer bestätigen.

| Dokument | Voraussetzung | Übernommene Werte |
| --- | --- | --- |
| Bestellung | Angebotsnummer vorhanden, Angebotsabgleich aktiv | Artikelnummer, Menge, Einheit, Positionsnummer, Angebotsnummer, Artikelbeschreibung |
| Auftragsbestätigung | Bestellnummer vorhanden, Bestellabgleich aktiv | Artikelnummern 1–3, Positionsnummer, Bestellnummer, Menge, Einzelpreis, Gesamtpreis, Einheit, Preiseinheit, Lieferdatum, Artikelbeschreibung |

- Workist übernimmt nur Positionen, die dem erkannten Kunden bzw. Lieferanten zugeordnet sind oder keinem Partner zugeordnet sind.
- Bei Angeboten übernimmt Workist von Set-Artikeln nur den Hauptartikel. Set-Bestandteile erkennt es am Eintrag `higher_level_position` in den Zusatzdaten (`extra_data`) der Angebotsposition.
- Anschließend ergänzt Workist die Positionen aus den Artikel-Stammdaten und rechnet Einheiten um.
- Vorbefüllte Werte stammen aus Ihren Stammdaten und haben eine Konfidenz von 100 %.
- Das Vorbefüllen passiert auch, wenn eine Bearbeiter:in die Nummer in der Assistenz einträgt oder ändert, solange das Dokument noch keine Positionen hat.

Rechnungen werden nicht vorbefüllt.

## Erneuter Abgleich nach einem Stammdatenimport

Bestelldaten kommen oft später in Workist an als die Auftragsbestätigung. Deshalb gleicht Workist Auftragsbestätigungen nach jedem erfolgreichen Import der Bestelldaten erneut ab. Betroffen sind Auftragsbestätigungen aller Kanäle, die diese Bestelldaten nutzen, wenn sie

- in den letzten 3 Tagen eingegangen sind,
- in der Assistenz warten und noch nicht bearbeitet wurden,
- eine Bestellnummer enthalten und
- deren Bestellung beim letzten Abgleich nicht gefunden wurde.

Findet Workist die Bestellung jetzt, aktualisiert es die Abgleichsergebnisse am Dokument. Das Dokument bleibt in der Assistenz. Rechnungen und Bestellungen werden nicht erneut abgeglichen.

## Benutzerzuweisung über Abgleichsdaten

Für Bestellungen, Rechnungen und Auftragsbestätigungen kann die [Benutzerzuweisung](/docs/channel-configuration/document-processing/document.md#schritt-3--benutzerzuweisung) die verantwortliche Person aus dem abgeglichenen Angebot bzw. der abgeglichenen Bestellung lesen. Workist liest sie aus den Zusatzdaten (`extra_data`) des Datensatzes.

## Häufige Fragen

**Warum wird ein Feld nicht verglichen, obwohl die Spalte in den Stammdaten gefüllt ist?**
Das Feld ist im Kanal nicht als Kopf- oder Positionzeilenfeld konfiguriert, oder es gehört nicht zu den Feldern, die für Ihren Kanal verglichen werden. Sprechen Sie Ihre Ansprechperson bei Workist an.

**Die Bestellung war beim Eingang der Auftragsbestätigung noch nicht in den Stammdaten. Muss ich etwas tun?**
Nein, sofern die Bestelldaten innerhalb von 3 Tagen importiert werden und die Auftragsbestätigung noch unbearbeitet in der Assistenz liegt. Workist gleicht sie dann automatisch erneut ab. Andernfalls verarbeiten Sie das Dokument erneut; dabei gehen manuelle Änderungen am Dokument verloren.
