JTI HOP · Ploom Bonusprogramm

Der eigene
Track-&-Trace-Scanner

Die technische Seite — von der gemieteten Blackbox zum lizenzfreien Eigenbau, der jede Packung prüft.

Micha03.07.2026intern

Die eine Botschaft

Aus gemietet wird selbst gebaut.

Ein eigener Scanner, der jede einzelne Packung prüft, keine Lizenz kostet und sowohl EVO als auch das neue LYO versteht.

Ausgangslage

Bisher: ein Taxi, kein eigenes Auto

  • Fremdes „Fenster im Fenster" (iFrame) von Sensory Minds
  • Laufende Lizenzkosten (kommerzielles Barkoder-SDK darunter)
  • Keine eigene Kontrolle über Verhalten & Aussehen
  • Bruch im Händler-Ablauf — raus aus unserer App in einen fremden Scanner
Bildlich gesprochen

Es war wie ein Taxi, das wir jedes Mal bezahlen mussten — statt ein eigenes Auto zu besitzen.

Händler-Ablauf

Ein Scanner für alles — kein Werkzeugwechsel

An der Kasse muss es flüssig gehen. Kunden-QR und jede Packung laufen im selben durchgehenden Fluss — kein Springen zwischen verschiedenen Scannern.

Bildlich gesprochen

Wie an der Supermarktkasse, wo Kundenkarte und alle Produkte über dasselbe Kassenband laufen — niemand wechselt dazwischen ans andere Gerät.

Neue Anforderung von JTI

Betrug muss nachweisbar werden

Auslöser: Händler fälschten Registrierungen oder gaben die Packungen nie aus — kassierten aber die Vergütung.

Vorher nur Kunden-QR → jetzt jede Packung einzeln scannen & live prüfen

Damit ist jede Packung einzeln nachgewiesen — man kann nicht mehr behaupten, Ware ausgegeben zu haben, ohne sie in der Hand gehabt zu haben.

01 Warum es schwer ist

Kleingedrucktes lesen — hinter Glanzfolie, im Gegenlicht

  • Winziger Punkte-Code (DataMatrix)
  • Spiegelung der glänzenden Folie
  • Fokus sitzt auf der Folie, nicht auf den Punkten
  • Code füllt nur einen Bruchteil des Bildes
Bildlich gesprochen

Eine Fußnote im Kleingedruckten vorlesen — hinter einer glänzenden Hülle, im Gegenlicht, ohne die Brille.

Echte LYO-Packung: Produktionscode unter glänzender Folie
Echte LYO-Packung: der winzige Produktionscode BCF20C05 unter glänzender, spiegelnder Folie — genau das muss die Kamera bei jedem Licht zuverlässig lesen.

02 Warum es schwer ist

Wenn das Handy „D" als „S" liest

BDD10D03 echter Code
BDD10S03 falsch gelesen — trotzdem gültiges Format
D ≠ S

Beide Varianten sind formal gültig, also fällt der Fehler nicht auf: eine falsche Packung wird als echt verbucht (Datenintegritätsfehler).

Lösung: Vier-Augen-Prinzip — ein Code zählt erst, wenn er mehrfach gleich gelesen wurde

Unsere Lab-Entwicklung

Wir haben nicht geraten — wir haben gemessen

Automatisches Testlabor: 1440 Einstellungs-Kombinationen (Auflösung, Zoom, Licht …) laufen automatisch gegen ein echtes Handy, das eine EVO-Packung scannt — bis ein Durchlauf den Code knackt (✓ erkannt).
Punkte · scharf
nicht lesbar
verwischt
Flächen → lesbar

Das Ergebnis der Messungen: verkleinern & leicht verwischen lässt die einzelnen Druckpunkte zu lesbaren Flächen verschmelzen.

Warum das funktioniert · zum Anfassen

Aus Punkten wird ein Bild

Ein Pointillismus-Gemälde besteht aus tausenden einzelnen Farbtupfern. Ganz nah sieht man nur Punkte — erst beim Herauszoomen verschmelzen sie zu einem erkennbaren Bild.

Genau dieser Effekt macht den gepunkteten Code lesbar: Verkleinern lässt die einzelnen Druckpunkte zu Flächen zusammenfließen.

Unsere Eigenentwicklung · Multipass

Ein Bild, viele Wege — gleichzeitig

Statt sich auf eine Bildaufbereitung zu verlassen, jagt unser Scanner jedes Kamerabild parallel durch viele Verarbeitungs-Durchläufe — Kontrast, Graustufe, Weichzeichnen, Invertieren und Kombinationen davon. Es gewinnt der Durchlauf, der den Code knackt. Wir nennen unser Verfahren „Multipass".

MULTI PASS – Szene aus „Das fünfte Element“
»Multipass.« — Namens-Augenzwinkern an „Das fünfte Element" (1997).
Echte Durchläufe aus unserem Scanner: jede Kachel ist ein anderer Filter-Pass (Kontrast ×2,7, Graustufe, Blur r0.9, Invertierung, Voll-Kombi …) — sobald irgendein Pass den Code lesbar macht, ist er dekodiert.

Das Ergebnis der Optimierung

Von „klappt oft nicht" zu „kurz draufhalten, fertig"

Trefferquote
~80 %0 %
aus „oft" wird „immer"
Zeit bis Treffer
~3,4 s0 s
≈ 27× schneller — Bruchteil einer Sekunde

Keine fertige Lösung

Das löst bis heute keine kostenlose Bibliothek

Gepunktete DataMatrix-Codes unter glänzender Folie sind ein Sonderfall: Zahlreiche Nutzer der freien Standard-Tools beschreiben in den Foren exakt unser Problem — die Codes werden schlicht nicht erkannt. Wir mussten den Weg selbst finden.

Bildlich gesprochen

Es gab kein Rezept zum Nachkochen. Alle frei verfügbaren „Kochbücher" hörten genau an der schwierigen Stelle auf — das Rezept haben wir selbst entwickelt.

Echter EVO-Track-&-Trace-Code als gepunkteter DataMatrix unter Folie
Ein echter Track-&-Trace-Code auf einer EVO-Packung — als gepunkteter DataMatrix unter glänzender Folie. Genau diese Bauform lesen die freien Bibliotheken bis heute nicht.

Die LYO-Überraschung

Ein Produkt ohne Code

LYO-Packung mit Produktionsnummer BCF20C05
Packung A — nur eine Produktionsnummer: BCF20C05
LYO-Packung mit Produktionsnummer BCF21B05
Packung B — nur eine Produktionsnummer: BCF21B05
Der Grund

Track & Trace ist nur für nikotinhaltige Tabakware vorgeschrieben. LYO enthält keinen Tabak → fällt nicht unter die Pflicht → es gibt schlicht keinen eindeutigen Code.

Produktionsnummer = mehrdeutig (mehrere Packungen, gleiche Nummer)
Unsere Lösung

Eine Übersetzungsschicht baut die fehlende Eindeutigkeit selbst nach und gibt jeder Packung eine eindeutige „Platznummer".

OCR-Nummer → Charge → Produkt → eindeutiger Code

Für den Händler gedacht

Neu im Handling — Demo-Modus zum Üben

Der Scanner funktioniert komplett anders als alles zuvor. Damit kein Händler unter Druck an echten Buchungen üben muss, gibt es einen Demo-Modus — gefahrloses Trainieren, bis der Ablauf sitzt.

  • Großer Rahmen — der gepunktete DataMatrix (EVO)
  • Kleiner Kasten — der 8-stellige Code (LYO, per Texterkennung)
  • Demo-Modus — üben ohne Folgen, bis es sitzt
Scanner im Demo-Modus mit zwei sichtbaren Scanbereichen
Echter Scanner im Demo-Modus: der große Rahmen erfasst den gepunkteten DataMatrix, der kleine Kasten darunter den 8-stelligen Aufdruck.

Grundsätzliche Lösung · gebaut

Unser eigener Track-&-Trace-Generator

Statt eine mehrdeutige Nummer mühsam auszulesen, erzeugen wir für jede LYO-Packung selbst einen echten, eindeutigen DataMatrix-Code.

  • Nach offiziellem Format gebaut (inkl. HMAC-Prüfsumme) — scannt wie ein echter
  • Garantiert kollisionsfrei — kann nie mit realen T&T-Codes zusammenfallen
  • Riesiger Code-Raum: ≈ 3,5 Billionen mögliche Codes je Produkt — Kollisionen praktisch ausgeschlossen
● gebaut & für die Produktion vorbereitet · Ende Juni 2026
Track-&-Trace-Generator-Portal: MDC eingeben, Codes erzeugen, exportieren
Unser Generator-Portal: MDC + GTIN eingeben → eindeutige, fälschungssichere DataMatrix-Codes → Export als CSV/PNG/PDF und direkt an Sensory Minds. (Die 1 Mio im Portal ist nur das Maximum pro Lauf — technisch möglich sind ≈ 3,5 Billionen je Produkt.)
Bildlich gesprochen

Wie eigene Kfz-Kennzeichen in einem reservierten Nummernkreis — sehen aus wie echte, funktionieren wie echte, überschneiden sich per Definition nie mit einem offiziellen.

Was wir jetzt haben

Das Ergebnis

  • Kein iFrame, keine Miete — Teil unserer eigenen App
  • Ein nahtloser Ablauf — Kunden-QR + alle Packungen in einem Scanner
  • Keine Lizenzkosten — selbst gebaute, lokale Technik
  • Betrug nachweisbar — jede Packung live geprüft & protokolliert
  • Zwei Produktwelten — EVO & LYO im selben Scanner
  • Optimiert, nicht geraten — 100 % Trefferquote, ~0,125 s
  • Echte Eigenleistung — löst keine kostenlose Bibliothek
  • Volle Kontrolle — jede JTI-Anforderung selbst umsetzbar
Backend-Registry mit eindeutigen Track-&-Trace-Codes und SM-Export
Im Backend: jeder erzeugte Code eindeutig protokolliert — 1000 Codes pro Lauf, bereit für den Export an Sensory Minds.
Voller Scan-Test aus der Entwicklung (kompletter Durchlauf) — noch nicht der finale Scanner.

Fazit

Aus einer Blackbox wurde unser Werkzeug.

Eigen, messbar besser, kostenfrei, zukunftssicher — und flexibel genug für ein Produkt, das dafür gar nicht vorgesehen war.

Danke.Fragen?

Anhang · Zeitleiste

Vom Proof-of-Concept bis zur Produktion

13.01.2026Erster Proof-of-Concept (Machbarkeitsnachweis) — DataMatrix-Erkennung; Folien-/Fokusproblem sofort sichtbar
21.01.2026Erster Repo-Commit des neuen Scanners
12.03.2026Scanner-Neustart: weg vom Barkoder-lizenzierten SM-Scanner → Eigenbau auf freier Technik
07.04.2026Voll ausgestatteter Codechecker-Mobil-Scanner + Backend-Sync
20.05.2026DPM-Erkennung + OCR-Fallback aktiviert → getunte Erkennung (100 %, ~125 ms)
27.–29.05.OCR-Tempo + iOS-Kamera-Stabilität
08.06.2026OCR-Konsens erzwungen (D↔S-Fix) + Sofort-Rückmeldung (WebSocket) + Mehrfachzählung
09.06.2026Prod-Config-Pipeline: Debug opt-in, Live-Umschalter
11.06.2026Ploom In-App-Pack-Scanner mit Prüfung pro Scan
16.–17.06.LYO auf MDC kanonisiert; Ploom-Optik; Kopfsteh-Erkennung (180°)
23.06.2026Gated Rollout; Vergütung erst nach vollständigem Scan
26.–27.06.LYO-Übersetzungsschicht + eigener T&T-Generator (HMAC-Prüfsumme, SM-Export)
03.07.2026SM-„approve-clerk" angebunden; QR als UUID/JSON parsen
Presenter-Notiz

Navigation: · Referent P · Notizen N · Theme T
BLITZEN 1 / 15