1. EDI des Kunden
Das eigene Format und der eigene Transportweg des Kunden: SFTP, API, Push oder Pull. Die Eigenheiten bleiben hier, im eigenen Profil des Kunden.
Constellation Cold Logistics Denmark betreibt in Dänemark Kühlhäuser für Lebensmittelhersteller, bei denen jedes Packstück rückverfolgbar sein muss. Die EDI-Dateien der Kunden wurden direkt in die Datenbanken des Lagersystems geschrieben, Kunde für Kunde. SublimTech hat die Landschaft mit einer Lobster-Integration und einem kanonischen Datenmodell neu aufgebaut, sodass für einen neuen Kunden ein Mapping genügt und das Lagersystem gewechselt werden kann, ohne die Kundenverbindungen anzufassen.
Die Lösung wurde von Jonatan Augustsson, Head of Consultants bei SublimTech, entworfen und gebaut und ist heute in Betrieb. Hier zeigen wir den Weg vom Ausgangspunkt bis zum Plan.

Quelle: Eigenes Projektmaterial von SublimTech zu Constellation Cold Logistics Denmark. Die Onboarding-Zahl ist das Ziel des Projekts für neue Kundenverbindungen, kein ermittelter Durchschnitt.
Constellation Cold Logistics Denmark hieß bis 2025 Agri-Norcold. Das Unternehmen wurde 1964 im dänischen Hobro als Schlachthof und Kühlhaus gegründet und wuchs auf zehn Standorte in Dänemark, die zusammen rund ein Drittel der gesamten Gefrierkapazität des Landes ausmachen. Die Anlage im dänischen Vejen ist das größte Kühlhaus Nordeuropas. 2024 wurde das Unternehmen Teil von Constellation, dem drittgrößten Kühllagerbetreiber Europas, der in vier Jahren zehn Zukäufe in neun Ländern getätigt hat.
Die Kunden sind Lebensmittelhersteller, von Tiefkühlware bis zu gekühlter Milch, und viele von ihnen liefern Fleisch. Fleisch unterliegt behördlicher Kontrolle, daher sind Rückverfolgungsdaten für jedes einzelne Packstück kein Wunsch, sondern Pflicht. Das ist der Rahmen, in dem die Integration funktionieren muss: viele Kunden, viele Formate und Daten, die sich bis zur Quelle zurückverfolgen lassen müssen.
Ausgangspunkt war eine gemeinsame SFTP-Dateifreigabe auf einem lokalen, an AS/400 gebundenen Server. Alle Kunden lieferten ihre Dateien am selben Ort ab, und die Dateien wurden abgeholt und direkt in die Datenbanktabellen geschrieben, Nachricht für Nachricht. Es gab keine gemeinsame Schicht und keine gemeinsame Struktur. Die Eigenheiten jedes Kunden steckten in dem Code, der seine Dateien in die Tabellen schrieb, und für einen neuen Kunden wurde alles noch einmal gebaut. Einige Kunden nutzten gar kein EDI.
Nicht nur das Datenmodell war undokumentiert. Die Leitungen dahinter waren es auch.
Das ist, als würde man ein Haus ohne Baupläne erben, in dem die Hälfte der Rohre in den Wänden steckt. Bevor man neue Rohre verlegen kann, muss man herausfinden, wo die alten tatsächlich verlaufen.
Das Projekt konnte nicht mit einem Design beginnen. Es musste mit Fragen beginnen.
Echte Produktionsdateien jedes Kunden wurden direkt in ein Lobster-Profil eingelesen. Damit wurde die Struktur der Nachricht sofort sichtbar, und das Mapping ließ sich laufend anpassen, ohne dass etwas deployt werden musste, um eine Theorie zu testen. EDI ist nur dem Namen nach ein Standard. Jeder Kunde setzt ihn auf seine eigene Weise um, meist undokumentiert, sodass die Daten selbst die einzige verlässliche Quelle waren.
Kern der Lösung ist ein kanonisches Datenmodell, auf Englisch Canonical Data Model oder CDM, für jeden Nachrichtentyp: Aufträge, Versandavise, Wareneingänge, Bestandskorrekturen und weitere. Es ist ein standardisiertes internes Format, über das Constellation selbst die volle Kontrolle hat. Das Modell wurde aus großen Mengen echter Produktionsdaten über alle Kunden hinweg abgeleitet und mithilfe von KI analysiert, damit es für alle trägt und nicht nach den Eigenheiten eines einzelnen Kunden geformt ist. Es legt die Felder fest, die mindestens vorhanden sein müssen, damit ein Kunde überhaupt angebunden werden kann.
Stellen Sie es sich wie eine gemeinsame Arbeitssprache in der Diplomatie vor. Statt dass jedes Land einen Dolmetscher für jedes andere Land braucht, hat jedes Land einen Dolmetscher: aus der eigenen Sprache in die gemeinsame und zurück. Kommt ein neues Land hinzu, kommt ein Dolmetscher hinzu. Die anderen bleiben, wie sie sind.
| Ebene | Felder |
|---|---|
| Kopfdaten | Auftragsnummer, Kunden-ID, Lager-ID, Auftragsdatum, gewünschtes Lieferdatum |
| Positionen | Positionsnummer, Artikelnummer, Paletten-ID, Menge, Einheit, Losnummer, Mindesthaltbarkeitsdatum |
| Packstücke | Pro Palette, wenn beim Kunden auf Packstückebene rückverfolgt wird: Packstück-ID, Menge, Losnummer, Mindesthaltbarkeitsdatum, Rückverfolgungsreferenz |
| Metadaten | Quellsystem, Modellversion, Status, angelegt am |
Zwei Ebenen in den Positionen, Palette und darunter Packstück, sorgen dafür, dass die Rückverfolgbarkeit auf der Ebene ansetzen kann, die der einzelne Kunde für die Rückverfolgung nutzt. Onboarding heißt genau das, und zwar einmalig: die Felder des Kunden auf das Modell abbilden, eingehend und ausgehend. Alle nachgelagerten Schritte gibt es bereits.
Position 1: Artikelnummer 4408, 120 Kartons, 3 Paletten
Position 2: Artikelnummer 9120, 1.800 kg, gemischte Paletten
Die Struktur unterscheidet sich von Kunde zu Kunde. Selten gibt es eine Position pro Palette, und jeder Kunde hat seine eigene Logik.
Position 1: Artikelnummer 4408, Palette PAL-04007, 36 Packstücke CTN-0001 bis CTN-0036, jeweils mit Los und Mindesthaltbarkeit
Position 2: Artikelnummer 4408, Palette PAL-04014, 36 Packstücke CTN-0037 bis CTN-0072
Eine Position pro Palette, und jede Palette kann viele Packstücke enthalten, die einzeln verfolgt werden. Weil das Modell Constellation gehört, werden beide Ebenen an einer Stelle zentral durchgesetzt.
Jedes Glied der Kette ist ein eigenes Lobster-Profil, entkoppelt von den anderen. Ausgehende Nachrichten folgen derselben Kette in umgekehrter Richtung. Für einen neuen Kunden entsteht ein Mapping, das anschließend in den bestehenden Prozess eingehängt wird. Dieselbe Flexibilität gibt es auf der anderen Seite: beim Wechsel des Lagersystems oder bei einem zusätzlichen Lagersystem, das mit einem Zukauf hinzukommt.
Das eigene Format und der eigene Transportweg des Kunden: SFTP, API, Push oder Pull. Die Eigenheiten bleiben hier, im eigenen Profil des Kunden.
Ein internes Modell pro Nachrichtentyp, das SublimTech und Constellation selbst definieren und besitzen. Alle folgenden Schritte kennen nur dieses Modell.
Das Modell wird in das übersetzt, was das Lagersystem erwartet. Wird das Lagersystem gewechselt, ändert sich nur dieses Mapping.
Das Lagersystem empfängt die Nachrichten in seinem eigenen Format. Ausgehende Nachrichten folgen derselben Kette in umgekehrter Richtung.
Protokollierung und Rückverfolgungsfelder sind gemeinsame Objekte in Lobster, auf die alle Profile verweisen, statt in jedem Profil neu gebaut zu werden. Die Protokollierung erfasst dieselben Details in denselben Spalten über alle Flows hinweg, sodass der Support jeden beliebigen Flow lesen kann, ohne ihn erst kennenzulernen. Eine Änderung an Protokollierung oder Rückverfolgbarkeit erfolgt einmal, nicht zwanzigmal.
Jede Nachricht im Modell trägt ihre eigenen Metadaten: Quellsystem, Modellversion, Status und Zeitstempel. Geht etwas schief, etwa durch fehlerhafte Daten von einem Kunden, ein fehlendes Feld oder eine fehlgeschlagene Lieferung, lässt es sich genau auf die Nachricht, den Kunden und die Stelle in der Kette zurückführen. Dass sich nachweisen und nachverfolgen lässt, was mit den Daten geschehen ist, statt sie nur zu bewegen, war einer der wichtigsten Gründe, warum sich Constellation für Lobster als Zwischenschicht entschieden hat.
Früher bedeutete das Onboarding eines einzelnen Kunden monatelanges Hin und Her, typischerweise sechs bis acht Monate. Mit dem Modell liegt das Ziel für eine neue Verbindung bei rund zwei Monaten, und der erste Kunde wird derzeit nach dem neuen Modell angebunden. Geplant sind weitere dänische Kundenverbindungen und danach die anderen Länder des Konzerns. Das erste Lager soll laut Plan im November 2026 auf Infor WMS in Betrieb gehen, und nach monatelangen Tests funktionieren sowohl die Standardprozesse als auch die Ausnahmen drumherum.
Jeder Kunde ist anders angebunden, vor allem in dem, was er auf der EDI-Seite kann und was nicht; deshalb gibt es immer Sonderfälle und individuelle Berichte. Solange sich die Logik erklären lässt und das Lagersystem Rohdaten an Lobster liefern kann, erstellt und liefert Lobster den Bericht.
Bestandslisten als Excel-Dateien, aufgeschlüsselt nach Palette, Artikel und mehr, je nach Bedarf in unterschiedlichen Vorlagen. Das Lagersystem kann nur eine Bestandskorrektur auf einmal senden, sodass eine Korrektur über viele Paletten 40 bis 50 Einzelnachrichten auslöst. Lobster sammelt sie in einer Datenbank, und ein zeitgesteuertes Profil sendet einen Sammelbericht pro Kunde und Lager, zeitlich so abgestimmt, dass der Kunde ihn verarbeiten kann.
Lobster ruft die Strompreise Stunde für Stunde online ab. Abhängig vom Preis lassen sich Gefrieranlagen automatisch ab- und zuschalten, sodass der Betrieb in Echtzeit auf Preisschwankungen reagiert.
Angefangen hat es mit der Lösung eines einzelnen Kollegen: ausgefüllte PDFs statt handgestempelter Papierzertifikate mit Wasserzeichen. Heute erzeugt Lobster Zertifikatsdaten als JSON für einen Partner, der sie digital an Fødevarestyrelsen meldet, die dänische Lebensmittelbehörde. Nur noch zwei bis drei Zertifikatstypen laufen auf Papier.
Alles bisher Beschriebene ist gebaut und in Betrieb. Das Folgende zeigt die Richtung, nicht den Lieferumfang.
Die Lösung war von Anfang an für mehrere Lager und mehrere Länder gedacht; die Trennung pro Kunde ist Teil der Struktur und kein nachträglicher Zusatz. Jeder Zukauf im Konzern bringt seine eigenen Systeme und seine eigene Version von AS/400 mit, genau wie damals Dänemark. Das hier entwickelte Muster ist keine dänische Lösung, sondern eine wiederverwendbare Blaupause für den nächsten Zukauf.
Haben Sie eine ähnliche Landschaft mit vielen Kunden, vielen Formaten und Wissen, das bei wenigen Personen liegt? Dann ist ein gemeinsames Datenmodell oft der erste Schritt.
Ihre Integrationen besprechenEin gemeinsames internes Format pro Nachrichtentyp, zum Beispiel eine bestimmte Art, einen Auftrag zu beschreiben, in die alle Kundenformate übersetzt werden und aus der dann das Format des Lagersystems erzeugt wird. Es legt die Felder fest, die mindestens vorhanden sein müssen, damit ein Kunde überhaupt angebunden werden kann. Der Vorteil ist, dass jeder Kunde nur einmal gemappt werden muss und kein nachgelagerter Schritt die Eigenheiten des einzelnen Kunden kennen muss. Auf Englisch heißt das Canonical Data Model, abgekürzt CDM. Nicht zu verwechseln mit dem Common Data Model von Microsoft, das etwas anderes bezeichnet.
Weil die Zahl der Verbindungen dann mit jeder Kombination aus Kunde und System wächst und weil die Eigenheiten jedes Kunden in dem Code landen, der ins Lagersystem schreibt. Genau das war der Ausgangspunkt bei Constellation: Für jeden neuen Kunden wurde alles noch einmal gebaut. Mit dem Modell dazwischen braucht ein neuer Kunde nur ein Mapping, und ein Wechsel des Lagersystems berührt die Kunden nicht.
Ja. Das Muster ist dasselbe, ob an einem Ende ein Lager, ein ERP-System oder ein Webshop steht: Kundenformat, gemeinsames Modell, Systemformat. Das Besondere an Kühlhäusern und Lebensmitteln ist die Rückverfolgbarkeit auf Paletten- und Packstückebene, und die steckt als wiederverwendbare Felder im Modell statt als Regeln in jedem einzelnen Flow.
Nichts. Die Kunden kommunizieren nur mit dem kanonischen Modell. Ein neues Lagersystem bedeutet deshalb ein neues Mapping vom Modell zum neuen System, und alle Kundenverbindungen bleiben unberührt. Ein zusätzliches Lagersystem, etwa aus einem Zukauf, ist eine Ergänzung, keine Migration.
Wir zeigen Ihnen gern, wie ein kanonisches Datenmodell bei Ihnen aussehen würde und was es für das Onboarding neuer Partner bedeutet.