Warenpost ist ein tolles Produkt – aber leider nutzlos

Normalerweise werfe ich die Werbebriefe der Deutschen Post immer ungelesen weg. Ich will weder Adressen noch überteuertes Büromaterial kaufen, und meine Briefe kann ich immer noch selbst ausdrucken. Diesmal habe ich jedoch einen Blick riskiert und war positiv überrascht. Das angebotene Produkt “Warenpost” ist genau das, was wir brauchen: Warenversand mit Sendungsverfolgung zum kleinen Preis. Super. So können wir endlich auch für kleinere Bestellungen ein Tracking für unsere Kunden anbieten.

Zur Vorbereitung waren die notwendigen Barcodes auf den Adressetiketten schnell erstellt – die Portomarke hat ja schon einen schicken 2D Datamatrix Code drauf. Bevor ich damit begonnen habe, unsere Software anzupassen, habe ich mich dann mal tiefer mit diesem beschäftigt. Also zuerst: Scanner aussuchen und kaufen, dann den 1D Barcode für die Rechnungsnummer testen – funktioniert. Der Datamatrix Code der Post bringt jedoch nur Müll. Mist! Hätte so leicht sein können.

Meine Recherche im Internet hat zuersteinmal im Wesentlichen gar nichts ergeben. Liest denn niemand sonst die 2D Codes der Deutschen Post aus? Nach einer mittleren Odyssee über diverse Hotlines lande ich schließlich bei jemanden, der sich mit dem Thema auskennt. Der erzählt mir was von USB-CDC, der Emulation einer seriellen Schnittstelle, und dass er keine Ahnung von macOS hat. “Kriege ich schon hin”, denke ich mir und forsche weiter. Tagelang. Ergebnislos. Nach weiteren Telefonaten mit dem Support des Scannerherstellers und dem Fachmann von der Deutschen Post, muss ich leider vorerst folgendes Resumée ziehen:

Warenpost ist eine tolle Produktidee – die Umsetzung macht sie jedoch für die Zielgruppe vollkommen nutzlos.

Die technischen Hintergründe für alle, die irgendwann einmal vor demselben Problem stehen:

  1. Der Datamatrix Code enthält keinen Klartext, sondern ein Feld aus hexadezimalen Werten, die alle Informationen zur Freimachung enthalten und von der Deutschen Post verwendet werden, um die Sendung zu bearbeiten.
  2. Wenn ich den Code mit einem als HID Gerät angeschlossenen Scanner lese, also einem Scanner, der eine Tastatur emuliert, werden alle Daten wie Tastendrücke interpretiert und es kommen auch nicht-druckbare Zeichen (ASCII Codes < 32) dabei heraus, die die Applikation und das OS tüchtig durcheinanderbringen können.
  3. Um die nicht-interpretierten Daten auslesen zu können, muss ich den Scanner so umkonfigurieren, dass er eine serielle Schnittstelle (COM Port) emuliert. Das kann mein Scanner zwar, jedoch gibt es für macOS keine geeigneten Treiber – weder vom Scannerhersteller, noch von irgendwem sonst. (Der von Apple mitgelieferte Treiber funktioniert offensichtlich nur mit Modems).
  4. Selbst wenn ich den virtuellen COM Port zum Laufen brächte, bräuchte ich immer noch eine Software/Terminalemulation, die mir die Daten entgegennimmt, interpretiert und weiterreicht. Diese gibt es zwar für Windows, jedoch nicht für macOS.
  5. Wäre ich so verzweifelt, mir einen Windows Rechner nur für das Einscannen der Warenpost Sendungen hinzustellen (würg), müsste ich, nachdem ich den USB-CDC Treiber (die COM Port Emulation) installiert habe, eine kleine Software der Deutschen Post nutzen, die sich “Matrixcode Checker” nennt, um die Daten auslesen und interpretieren zu können.
  6. Der “Matrixcode Checker” hat zwei die Möglichkeit, die gescannten Daten über die virtuelle serielle Schnittstelle entgegenzunehmen und die Sendungsnummer über den Tastaturpuffer weiterzureichen, jedoch muss dazu die empfangende Software den Fokus haben – nicht sehr elegant und sehr fehleranfällig.

Wenn ich meine Odyssee in einem Satz zusammenfassen müsste, würde ich sagen: Note 1 für die Idee, Note 6 für die Umsetzung. An diesem Beispiel kann man perfekt sehen, wie ein Projekt vollkommen an der Zielgruppe vorbeischießt.

Warenpost ist nichts, was Konzerne mit eigener IT und einer Herde Programmierer verwenden werden. Das Produkt ist prädestiniert für kleine Versandhändler, die für einen fairen Preis den Luxus einer Sendungsverfolgung haben wollen. Um jedoch per Barcode Scanner an die Daten zu kommen, muss man sich drei Beine brechen, ganz zu schweigen von der Tatsache, dass man auf Windoof angewiesen ist.

Mein Traum von “mal eben zwei Barcodes einscannen” und den Kunden eine Sendungsverfolgung anzubieten ist damit vorerst geplatzt. Jetzt bleibt mir nur noch, die Kundenbestellungen händisch (also per Kuli) den Sendungsnummern zuzuordnen, aber davon haben die Kunden nichts. Oder ich bastle irgendetwas drumrum, was aber immer die manuelle Erfassung der Sendungsnummer im Rechner beinhaltet, da ja der tolle 2D Datamatrix Code für mich vorerst nutzlos ist. Herzlich willkommen in der künstlich erzwungenen IT Steinzeit 🙁

Kleine Nachbemerkung: Deswegen liebe ich Apple so sehr. Die sind zwar auch Banditen und weit davon entfernt, perfekt zu sein. Aber wenn sie Produkte entwickeln, dann denken sie sie zumindest zu 99 % durch, so dass sie am Ende auch benutzbar sind. Beim Projekt “Warenpost” haben die Verantwortlichen der Deutschen Post leider nur zu geschätzen 50 % zuende gedacht. Schade.