07. Belege und Lager kontrolliert anbinden
Übertragen Sie Belege, Positionen und Lagerbewegungen in fachlich richtiger Reihenfolge und respektieren Sie X-ERP-Geschäftsaktionen statt sie durch rohe Statusänderungen zu ersetzen.
Bei Stammdaten ist ein Fehler unangenehm. Bei Belegen und Bestand kann derselbe Fehler Geld, Ware und Nachweis gleichzeitig verschieben.
Die Schnittstelle als Produkt
Belegkopf und Positionen bilden eine Einheit; Lagertransfer und Transferpositionen ebenso. Eindeutige externe Vorgangs-ID, Reihenfolge, Mengen-/Einheitenprüfung und ein genau-einmal wirkender Abschluss sind zentral.
So wird die Anbindung robust
- Definieren Sie Vorgangstyp, externe ID, Partner, Währung, Datum und Statusgrenze.
- Erstellen oder finden Sie den Belegkopf idempotent.
- Übertragen Sie Positionen mit stabilen Positionsschlüsseln, Einheit, Menge, Preis und Steuerlogik.
- Validieren Sie Summen und Verfügbarkeit, bevor eine freigegebene Geschäftsaktion folgt.
- Führen Sie Lagertransfer und Positionen als zusammengehörigen Vorgang.
- Speichern Sie X-ERP-ID, Ergebnis und fachlichen Abschlusszeitpunkt.
Produktionsreife nachweisen
- Kopf, Positionen und Summen stimmen zusammen.
- Doppeltes Ereignis erzeugt keinen zweiten Beleg oder Bestandseffekt.
- Teilfehler bleibt sichtbar und fortsetzbar.
- Buchungs-/Lagerstatus entsteht nur über freigegebene Aktion.
Fehler, die erst im Betrieb teuer werden
- Retry nach Timeout erzeugt zweiten Auftrag.
- Positionen werden geschrieben, aber Kopfstatus signalisiert fälschlich Vollständigkeit.
- Bestandszahl wird direkt korrigiert statt Bewegung auszulösen.
Das nehmen Sie mit
Geschäftsvorgänge überqueren die Systemgrenze genau einmal, vollständig und mit nachvollziehbarer Wirkung.
Weiterführende Themen
- Für Integrationsspezialisten – APIs und externe Systeme anbinden › 06. Artikel und Partner synchronisieren
- Für Integrationsspezialisten – APIs und externe Systeme anbinden › 08. Schreiben, Idempotenz und Parallelität
- Für Integrationsspezialisten – APIs und externe Systeme anbinden › 09. Fehlerdiagnose, Logging und Wiederanlauf
Häufige Fragen
**Darf ich den Belegstatus direkt setzen?**
Nur wenn die API dies ausdrücklich als unterstützten Weg dokumentiert. Fachliche Aktionen dürfen nicht durch rohe Feldänderungen imitiert werden.
**Was tun bei Timeout nach POST?**
Nicht blind wiederholen. Suchen Sie zuerst über die idempotente externe ID, ob der Vorgang bereits angelegt oder abgeschlossen wurde.