Einführung
Grundlegendes
Die Schnittstelle konnektiert das Logistiksystem mit dem ERP System. Ziel ist der vollautomatische Datenaustausch zwischen beiden Systemen. Die Schnittstelle ist für weitere Anwendungsfälle erweiterbar zu gestalten.
Technische Realisierung
Die Schnittstelle ist als RESTful Webservice realisiert. Die Daten werden im JSON Format ausgetauscht. Hierfür werden von beiden Seiten entsprechende Dienstendpunkte bereitgestellt.
Verantwortlichkeiten
Der Datenbereitsteller ist dafür verantwortlich seine Daten an das Fremdsystem über die Vereinbarte API zu übergeben. Das Fremdsystem stellt hierfür einen Dienstendpunkt bereit. Falls die Daten nicht erfolgreich übermittelt werden können, wird der Datenbereitsteller diese nach einer Fehlerwartezeit erneut versuchen zu übermitteln. Dies wird solange wiederholt, bis die Daten erfolgreich übertragen werden konnten. Jeder Datenbereitsteller überwacht seinen Dienstendpunkt eigenverantwortlich auf Funktion und Verfügbarkeit.
Prozessbeschreibung
Warenausgang / Lieferauftrag
Wareneingang
Lagerbestandsabgleich
Retouren
Dienstendpunkte
Allgemein
Der Dienstendpunkt ist über einen definierten Hostnamen erreichbar. Dieser Hostname sollte auf eine IPv4 und optional auf eine IPv6 Adresse auflösen.
Sicherheit
Die Transportsicherung erfolgt durch TLS Verschlüsselung (https). Hierfür ist ein gültiges Zertifikat zu verwenden. Falls erforderlich kann die ausstellende Zertifizierungsstelle in den Trusted Store der Laufzeitumgebung aufgenommen werden. Sofern diese nicht bereits bekannt ist.
Eine Inhaltsverschlüsselung erfolgt nicht. Optional ist es möglich den Zugriff auf die Dienstendpunkte auf bestimmte IPv4 und IPv6 Adressen einzuschränken. Der Zugriff wird durch Authentisierung, Authentifizierung sowie Autorisierung gesichert.
Authentifizierung
Für jeden Aufruf einer API Funktion wird der Request mit einem HTTP Basic Authentication Header versehen. Hierfür werden Benutzername und Passwort festegelt, mit denen sich der Client gegenüber dem Dienst authentifiziert. Ein Rollenbasiertes Modell ist nicht vorgesehen.
Versionierung
EIne Versionierung (/v1) des Dienstendpunktes ist nicht vorgesehen.
API
Funktion1
xxx