Abrufprozess für Artikellisten
Der Artikellisten-Editor kann die aktuelle Artikelliste von einer Restaurantkasse anfordern. Dies ist ein asynchroner Prozess: Der Browser fordert das Backend auf, einen Abrufbefehl zu erstellen, die Restaurantintegration verarbeitet diesen Befehl und das Backend führt die Antwort in die ausgewählte Konfiguration zusammen.
::: note Verwendung: Admin → Artikellisten-Editor → Konfiguration abrufen. :::
Prozess
- Wählen Sie den Restaurantstandort in der Komponente Konfiguration abrufen aus.
- Klicken Sie auf Konfiguration abrufen.
- Das Backend erstellt einen
FETCH_REMOTE_MENU-Befehl für diesen Standort und die aktuelle Konfiguration. - Die Restaurantintegration empfängt den Befehl als bestellähnliche Nachricht mit
exportMainDataauftruegesetzt. - Die Restaurantintegration ruft Stammdaten von der Kasse ab.
- Die Integration sendet die abgerufenen JSON-Daten an den Befehlsantwort-Endpunkt des Backends zurück.
- Das Backend konvertiert die Antwort in Referenzdaten, führt die Artikel in die ausgewählte Konfiguration zusammen und benachrichtigt offene Sitzungen über die geänderte Konfiguration.
An die Restaurantintegration gesendeter Befehl
Der Abrufbefehl wird der Integration als externe Bestellung mit exportMainData auf true gesetzt zur Verfügung gestellt.
{
"number": 12345,
"orderTime": "12:00:00",
"state": "PLACED",
"exportMainData": true
}Erwartetes Antwortformat
Die Integration sollte eine JSON-Antwort mit Stammdaten senden, die items, paymentTypes und optional users und timestamp enthält.
{
"items": [
{
"itemNumber": "101",
"name": "Tomato Soup",
"numberOfItems": 1,
"price": 6.5,
"station": "KITCHEN",
"displayName": "Tomato soup with basil",
"itemGroup": 10
}
],
"paymentTypes": [
{
"id": "1",
"name": "Cash"
}
],
"users": [
{
"number": "1",
"name": "Service",
"password": "1234"
}
],
"timestamp": "2026-05-25T12:00:00"
}Antwortfelder
| Feld | Erforderlich | Beschreibung |
|---|---|---|
items | Ja | Array von Kassenartikeln. |
items[].itemNumber | Ja | Kassenartikelnummer. Wird zur internen Artikelnummer. |
items[].name | Ja | Artikelname. |
items[].displayName | Nein | Anzeigetext von der Kasse. Wird zur internen Artikelbeschreibung. |
items[].price | Nein | Dezimaler Artikelpreis, mit Punkt als Dezimaltrennzeichen. |
items[].numberOfItems | Nein | Mengenfaktor für den Artikel. Standardmäßig 1, wenn nicht angegeben. |
items[].station | Nein | Kassenstation. Wird zur internen Druckergruppe. |
items[].itemGroup | Nein | Wird vom Antwortparser akzeptiert, aber derzeit nicht auf den internen Artikel abgebildet. |
paymentTypes | Ja | Array von Zahlungsartenobjekten. |
paymentTypes[].id | Ja | Kassenkennung der Zahlungsart. |
paymentTypes[].name | Ja | Name der Zahlungsart. Das Backend speichert Zahlungsarten als name zu id. |
users | Nein | Wird vom Antwortparser akzeptiert. Die aktuelle Artikelzusammenführung verwendet Artikel- und Zahlungsartendaten. |
timestamp | Nein | Zeitstempel von der Integration. |
WARNING
Wichtig: Die abgerufenen Daten werden in die ausgewählte Konfiguration eingefügt. Vorhandene Artikel mit übereinstimmenden Nummern werden aktualisiert, neue Artikelnummern werden hinzugefügt und Zahlungsarten werden aus der Antwort aktualisiert.