ESL Binding API Tutorial: Tags mit Artikeln verbinden
Sie halten ein elektronisches Regaletikett (ESL-Tag) in der Hand und haben einen Artikel in Ihrem Katalog. Dieses Tag soll den richtigen Preis, den Produktnamen und zusätzliche Daten anzeigen – ohne den Umweg über einen proprietären Handheld-Workflow. Dieses Tutorial zeigt, wie Sie die ESL Binding API im Next Generation Label Printing System(LPSNG) nutzen, um ein ESL-Tag über einen einfachen HTTPS-Aufruf mit einem Artikel zu verbinden.
Am Ende werden Sie in der Lage sein, ein Tag programmgesteuert aus einem externen System wie einem Mobile-Data-Entry-Gerät (MDE) zu binden, die Bindung zu verifizieren und ein Tag zu entbinden oder neu zu binden, wenn es einem anderen Artikel zugewiesen wird.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Ein LPSNG-Konto mit Zugriff auf die ESL Binding API. Die Binding API ist Teil der Kernfunktionalität von LPSNG und in allen Editionen verfügbar.
- Kompatible ESL-Hardware, die die Bindungsschnittstelle unterstützt, zum Beispiel CATIC-ESL-Geräte.
- Eine mit Strom versorgte ESL-Basisstation, in deren Reichweite sich die zu bindenden Tags befinden.
- Grundlegende Vertrautheit mit REST-APIs und JSON.
- Die Basis-URL für Ihren LPSNG-Webservice, wie in Ihrer Kontokonfiguration angegeben.
- OAuth2-Client-Anmeldedaten für die Authentifizierung. Falls Sie noch kein externes System registriert haben, folgen Sie zuerst der OAuth2-Dokumentation.
Sie müssen nicht direkt mit einem herstellerspezifischen Basisstationsprotokoll kommunizieren. Der schwierige Weg wäre, die Low-Level-Kommunikation Ihrer ESL-Hardware per Reverse Engineering zu entschlüsseln. Der unterstützte Weg besteht darin, den LPSNG Managed Service diese Übersetzung übernehmen zu lassen, während Sie eine einzige HTTPS-API verwenden.
Schritt für Schritt: Ein ESL-Tag mit einem Artikel verbinden
Schritt 1: OAuth2-Access-Token beziehen
LPSNG verwendet ein vereinfachtes OAuth2-Registrierungsprotokoll für externe Systeme. Sobald Ihre Integration registriert ist, fordern Sie ein Access-Token von Ihrem Tenant-Token-Endpunkt an und fügen es in jeden API-Aufruf ein.
Der genaue Endpunkt und der Registrierungsablauf hängen von Ihrem Konto ab. In den meisten Setups sieht eine Client-Credentials-Anfrage so aus:
curl -s -X POST "https://<IHRE-LPSNG-BASIS>/oauth2/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-u "<CLIENT_ID>:<CLIENT_SECRET>" \
-d "grant_type=client_credentials"
Eine erfolgreiche Antwort enthält ein Bearer-Token:
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 3600
}
Verwenden Sie den Wert von access_token im Authorization-Header für die Bindungsanfrage. Lesen Sie den OAuth2-Leitfaden, falls Ihr Tenant eine andere Form der Token-Anfrage verwendet.
Schritt 2: Artikel und Tag identifizieren
Sie benötigen zwei Kennungen, bevor Sie etwas binden können:
- Artikelkennung: In der Regel die SKU, EAN oder interne Materialnummer, die bereits in Ihrer LPSNG-Datenquelle vorhanden ist.
- Tag-Kennung: Die eindeutige ESL-Tag-ID. Diese ist oft auf dem Tag selbst aufgedruckt oder wird durch Scannen des Tags mit einem MDE-Gerät erfasst.
Ein Artikel könnte beispielsweise als EAN-4001234567890 identifiziert werden, ein Tag als CATIC-001234. Halten Sie beide Werte für den JSON-Payload bereit.
Schritt 3: Die Bindungsanfrage erstellen
Eine Bindungsanfrage ist ein JSON-Objekt, das an den Bindungsendpunkt gesendet wird. Die erforderlichen Felder sind die Artikelkennung und die Tag-Kennung. Abhängig von Ihrem Etikettenlayout und Ihrer ESL-Konfiguration können Sie auch optionale Felder wie price oder ein labelData-Objekt senden.
{
"itemId": "EAN-4001234567890",
"tagId": "CATIC-001234",
"price": "19.90",
"labelData": {
"name": "Organic Oat Milk 1L",
"unit": "L"
}
}
Nicht alle Installationen verwenden price und labelData. Wenn Ihre Etiketten vollständig über die Artikelstammdaten in LPSNG gesteuert werden, können Sie nur itemId und tagId senden. Prüfen Sie Ihr Etikettenlayout, um zu sehen, welche zusätzlichen Felder das Tag anzeigen soll.
Schritt 4: POST-Anfrage an den Bindungsendpunkt senden
Für dieses Tutorial verwenden wir /api/esl/bind als Bindungsendpunkt. Ihre LPSNG-Installation kann denselben Pfad oder einen tenant-spezifischen Pfad bereitstellen. Bestätigen Sie daher den genauen Endpunkt in der ESL Binding API-Dokumentation für Ihre Umgebung.
Speichern Sie den Payload in einer Datei, damit der curl-Befehl lesbar bleibt:
{
"itemId": "EAN-4001234567890",
"tagId": "CATIC-001234",
"price": "19.90",
"labelData": {
"name": "Organic Oat Milk 1L",
"unit": "L"
}
}
Senden Sie dann die Anfrage:
curl -s -X POST "https://<IHRE-LPSNG-BASIS>/api/esl/bind" \
-H "Authorization: Bearer <ACCESS_TOKEN>" \
-H "Content-Type: application/json" \
--data @binding-payload.json
LPSNG empfängt die Anfrage, löst die Artikeldaten in Ihrer Datenquelle auf und weist die ESL-Basisstation an, das Tag zu aktualisieren.
Schritt 5: Die Antwort verarbeiten
Eine erfolgreiche Bindung liefert in der Regel eine 200 OK-Antwort mit einem Statusobjekt:
{
"status": "bound",
"tagId": "CATIC-001234",
"itemId": "EAN-4001234567890",
"updatedAt": "2026-09-21T10:15:00Z"
}
Häufige Fehlerantworten sind:
400bei ungültigen Daten, etwa einem fehlerhaften JSON-Body oder einem fehlenden Pflichtfeld.401bei Authentifizierungsfehlern, zum Beispiel einem abgelaufenen oder fehlenden Access-Token.
Prüfen Sie den Antwort-Body auf eine Fehlermeldung, die erklärt, welches Feld fehlgeschlagen ist. Wenn die API einen anderen 4xx-Status zurückgibt, prüfen Sie, ob das Tag oder der Artikel unbekannt ist oder ob das Tag bereits anderweitig gebunden ist.
Schritt 6: Die Bindung durch Abfrage des Tag-Status verifizieren
Wenn Ihre Installation einen Tag-Status-Endpunkt bereitstellt, können Sie die aktuelle Bindung abfragen. Der genaue Endpunkt kann variieren; das Folgende ist eine Beispielform:
curl -s "https://<IHRE-LPSNG-BASIS>/api/esl/status/CATIC-001234" \
-H "Authorization: Bearer <ACCESS_TOKEN>"
Eine Antwort ähnlich dieser bestätigt, dass das Tag mit dem erwarteten Artikel verbunden ist:
{
"tagId": "CATIC-001234",
"boundItemId": "EAN-4001234567890",
"lastSeen": "2026-09-21T10:15:00Z"
}
Wenn Ihr Tenant keinen Status-Endpunkt bereitstellt, verwenden Sie das ESL-Verwaltungs-Dashboard in LPSNG, um den Tag-Status einzusehen.
Schritt 7: Optional — Tag entbinden oder neu binden
Wenn ein Artikel an einen neuen Standort wechselt oder ein Tag wiederverwendet wird, müssen Sie es entbinden oder neu binden. Die genaue Methode hängt von Ihrem LPSNG-Bindungsendpunkt ab.
Eine übliche Entbindungsanfrage verwendet DELETE:
curl -s -X DELETE "https://<IHRE-LPSNG-BASIS>/api/esl/bind/CATIC-001234" \
-H "Authorization: Bearer <ACCESS_TOKEN>"
Um dasselbe Tag mit einem anderen Artikel neu zu binden, senden Sie eine PUT-Anfrage:
curl -s -X PUT "https://<IHRE-LPSNG-BASIS>/api/esl/bind/CATIC-001234" \
-H "Authorization: Bearer <ACCESS_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"itemId":"EAN-4001234567891"}'
Prüfen Sie die ESL Binding API-Dokumentation für das genaue Entbindungs- und Neubindungsverhalten in Ihrer Installation.
Die Bindung verifizieren
Nachdem der API-Aufruf Erfolg gemeldet hat, bestätigen Sie die Bindung auf mehr als eine Weise:
- Prüfen Sie das ESL-Display physisch — das Tag sollte jetzt den Preis und den Namen des Artikels anzeigen. Wenn das Display noch leer ist oder alte Daten zeigt, warten Sie einige Sekunden und prüfen Sie erneut.
- Fragen Sie den Tag-Status über die ESL-Schnittstelle ab, sofern Ihre Installation eine solche bereitstellt. Die Statusantwort sollte die erwartete
boundItemIdzeigen. - Öffnen Sie das ESL-Verwaltungs-Dashboard in LPSNG und suchen Sie das Tag. Sein Status sollte von „ungebunden“ oder dem vorherigen Artikel auf den neuen Artikel wechseln.
- Testen Sie mit einem anderen Artikel und binden Sie dasselbe Tag neu. Wenn sich das Display korrekt aktualisiert, funktioniert Ihre Integration Ende zu Ende.
Fehlerbehebung bei häufigen Problemen
Authentifizierungsfehler
Überprüfen Sie Ihre OAuth2-Client-ID und Ihr Client-Secret. Access-Tokens laufen ab. Erneuern Sie daher das Token, wenn Sie nach einiger Zeit eine 401-Antwort erhalten.
Tag nicht gefunden
Stellen Sie sicher, dass die Tag-ID exakt korrekt ist, einschließlich aller Präfixe oder führenden Nullen. Bestätigen Sie außerdem, dass das Tag eingeschaltet und in Reichweite der ESL-Basisstation ist. Ein Tag, das sich kürzlich nicht gemeldet hat, ist möglicherweise nicht für die Bindung verfügbar.
Artikel nicht gefunden
Überprüfen Sie, ob die Artikelkennung in Ihrer LPSNG-Datenquelle vorhanden ist. Die Binding API löst gegen dieselben Daten auf, die Ihre Etiketten verwenden. Ein Tippfehler in der EAN oder SKU verhindert daher die Bindung.
Bindungskonflikt
Das Tag ist möglicherweise bereits mit einem anderen Artikel verbunden. Entbinden Sie das Tag zuerst und senden Sie dann eine neue Bindungsanfrage. Einige Installationen lehnen eine direkte Neubindung ohne expliziten Entbindungsschritt ab.
Netzwerkprobleme
Wenn die Anfrage eine Zeitüberschreitung verursacht, prüfen Sie die Verbindung zwischen Ihrem Client, dem LPSNG-Webservice und der ESL-Basisstation. Die Basisstation muss von LPSNG aus erreichbar sein, nicht direkt von Ihrem Client.
FAQ
Was ist die ESL Binding API?
Die ESL Binding API ist ein Webservice des Next Generation Label Printing System (LPSNG), der es externen Systemen wie Mobile-Data-Entry-Geräten ermöglicht, elektronische Regaletiketten mit bestimmten Artikeln zu verbinden. Sie verwendet eine einfache JSON-Anfrage über HTTPS.
Kann ich mehrere Tags mit einem Artikel verbinden?
In der Regel ist ein Tag mit einem Artikel verbunden. Abhängig von Ihrer ESL-Hardware und LPSNG-Konfiguration können Sie jedoch möglicherweise mehrere Tags mit demselben Artikel verbinden — etwa für Redundanz oder unterschiedliche Anzeigepositionen. Prüfen Sie Ihre Hardware-Dokumentation.
Wie entbinde ich ein Tag?
Um ein Tag zu entbinden, können Sie eine Anfrage an den Bindungsendpunkt mit einer leeren oder null Artikelkennung senden oder eine dedizierte Entbindungsmethode verwenden, sofern verfügbar. Die genauen Details zu Endpunkt und Payload finden Sie in der API-Dokumentation.
Ist die Binding API in allen LPSNG-Editionen verfügbar?
Ja, die ESL Binding API ist Teil der Kernfunktionalität von LPSNG und in allen Editionen verfügbar, einschließlich der Cloud-Lösung und der Embedded Edition. Sie benötigen jedoch kompatible ESL-Hardware, um sie zu nutzen.
Fazit
Der Bindungsworkflow ist eine kleine Schleife: authentifizieren, Artikel- und Tag-IDs erfassen, die Bindungsanfrage senden und das Display verifizieren. Sobald diese Schleife funktioniert, können Sie sie von einem MDE-Gerät, einem Fulfillment-Prozess oder jedem anderen externen System aus aufrufen, das ESL-Tags Artikeln zuweisen muss.
Die ESL Binding API ist nur ein Teil der umfassenderen LPSNG-ESL-Lösung. LPSNG bietet außerdem das herstellerneutrale ESL Interface für die Aktualisierung von Displays, den OAuth2-Leitfaden für die Authentifizierung und den LPSNG Player für kommandozeilenbasierte ESL-Ausgabeworkflows.
Wenn Sie ESL-Hardware zum ersten Mal integrieren, beginnen Sie mit der ESL Binding API-Dokumentation und testen Sie mit einem Ersatztag, bevor Sie in den Produktivbetrieb gehen.
Verwandte Beiträge
- Was ist eine Label Printing API? Ein Leitfaden für Einsteiger
- Barcode-Etiketten im Browser erstellen: Schritt für Schritt
- Kundenspezifische Etiketten in Ihrem Fulfillment-Prozess automatisieren
