Suborder Bestellungen automatisch im Store drucken

Nachdem viele Subway® Franchise-Owner gerade mit leeren Stores da stehen, ist Suborder von Pro Image (Christof Drescher) eine tolle Idee, um unseren treuen Kunden die Möglichkeit von Internet-Bestellungen zu geben.

Auf Suborder selbst möchte ich hier gar nicht eingehen. Wessen Subway® Store dort noch nicht gelistet ist, registriert den Store einfach hier, konfiguriert sein Angebot und seine Preise und aktiviert die Shop-Funktion.

Umständlich war bis jetzt nur das Handling im Store – die E-Mail mit der Bestellung kommt, muss dann irgendwo ausgedruckt werden, dann den Zettel in den Store bringen, usw. Dazu kommt, dass die Bestellungen von Suborder die vom Kunden gewünschten Zutaten nicht in der optimalen Reihenfolge zum Herstellen der Subs zeigen.

Aus diesem Grund habe ich ein kleines Python-Programm entwickelt, welches die Bestellungen im Store automatisch per E-Mail empfängt, die Zutaten grob in die richtige Reihenfolge sortiert und dann auf dem bei Subway® üblichen EPSON Kassenbon-Drucker ausdruckt.

So wie hier sieht dann der Ausdruck aus, wenn das Programm eine Bestellung erhalten hat.

Zunächst sollte der EPSON TM-T88V Kassenbon-Drucker so umgestellt werden, dass er deutsche Umlaute wie ÄÖÜ richtig druckt. Das ist leider in der Werkseinstellungen nochmal nicht der Fall.

Und das funktioniert so:

  1. Drucker ausschalten
  2. Die [Feed] Taste drücken und festhalten, und gleichzeitig den Drucker wieder einschalten – der Drucker landet im Konfigurationsmodus und druckt die Anweisungen aus.
  3. Jetzt bitte folgende Punkte auswählen:
    • 3: Customize Value Settings
    • 8: Default Character
    • 2: International Character Set
    • 1: The Americas, Europe
    • 3: Germany
  4. Anschließend kann man den Drucker nochmals aus und wieder ein schalten.

Jetzt benötigt man einen IMAP4 E-Mail Account und in diesem Account einige IMAP-Ordner. Ich verwende 1&1 bzw. Ionos, deshalb hier ein Screen-Shot aus dem Ionos Webmailer mit den fertig eingerichteten IMAP-Ordnern:

1&1 bzw. Ionos Web-Mailer mit den passenden IMAP-Ordnern

Zum einen muss jeweils ein Order mit der Subway®-Store-Nummer (z.B. „12345“) angelegt werden. Hat man mehrere Stores, kann man alle Ordner in einem Account anlegen – kein Problem, wie man im obigen Bild sieht.

Zum anderen muss ein Ordner „Archive“ angelegt werden – hier landen die jeweils ausgedruckten E-Mails von allen Stores.

Im nächsten Schritt muss Python auf der Kasse installiert werden. Also einfach auf https://www.python.org/downloads/ die aktuelle Version auf der Kasse herunterladen und installieren.

Bei der Installation bitte unbedingt die beiden Haken bei „Install Launcher“ und „Add Python to PATH“ setzen:

Da ab Python 3.8 wohl das Windows-Drucker-Paket nicht mehr mit Python ausgeliefert wird, müssen wir dieses kurz noch installieren:

C:\> python -m pip install --upgrade pip
C:\> python -m pip install win32printing
der Python Paketmanager PIP in Aktion

Nächster Schritt – das Python-Programm herunterladen und z.B. auf dem Desktop ablegen:

Das Programm ist als ZIP-Datei komprimiert – nicht weil es so groß ist, sondern damit es sich einfach runterladen lässt. Also entpacken und die Datei „Suborder_Printer.py“ auf dem Desktop ablegen.

Anschließend die Datei mit IDLE öffnen:

Entpacktes Python Programm mit IDLE öffnen

IDLE ist die Entwicklungsumgebung für Python – hier können wir die notwendigen Änderungen im Programm vornehmen. Also den Abschnitt „CONFIGURATION SECTION“ im Programm suchen:

Die „CONFIGURATION SECTION“ vor den Änderungen

Angepasst werden müssen in jedem Fall:

  • IMAP_SEVER
  • EMAIL_ACCOUNT
  • PASSWORD

Die drei Punkte sind relativ selbsterklärend. Der IMAP-Account sollte ein „normaler“ Account sein – Google-Mail macht erfahrungsgemäß einiges anders, und deshalb meist Schwierigkeiten.

Die anderen Punkte PRINTER, STORE und ARCHIVE können im Regelfall so bleiben. Es sei denn der EPSON Kassenbon-Drucker hat einen anderen Namen unter Windows, oder man möchte spezielle Anpassungen an den verwendeten IMAP Ordnern vornehmen.

Die Store-Nummer ermittelt das Programm normal automatisch, da bei Subway® alle Kassen nach dem Schema „SUBxx-12345-0-1“ benannt sind. Wobei „xx“ für das Land (bei uns normal „DE“) und „12345“ für die Store-Nummer steht. Sollte das NICHT so sein, muss die Store-Nummer leider direkt im Programm eingetragen werden.

Jetzt das geänderte Programm mit File – Save speichern.

Das sollte auch schon alles gewesen sein – ein Doppelklick auf das Programm „Suborder_Printer.py“ startet es:

Das Programm kann nun im Hintergrund weiter laufen, bis eine E-Mail mit einer Bestellung im jeweiligen Ordern mit der Store-Nummer (im Screen-Shot also „51704“) landet.

Hier muss jeder selbst entscheiden – nachdem eine Mail eingeht lieber erstmal den Kunden zurückrufen zur Bestätigung, und dann manuell in den Ordner legen – oder gleich ein paar Mail-Regeln im Account hinterlegen und die Mails automatisch in den jeweiligen Store-Ordner ablegen. Das ist wirklich Geschmackssache.

Alternativ: Wenn man sich den Unterordner mit der Store-Nummer ganz sparen möchte, dann kann man in der Konfiguration auch folgendes eintragen:

STORE         = 'INBOX'

Da es derzeit für alle Subway® Franchise Owner schwierig ist, verlange ich nichts für das Programm. Also ladet es runter und verwendet es. Ich kann aber auch keine Garantie dafür geben, dass es läuft und nicht eure Kassen zerstört und eure Ernte auf den Felder vertrocknen lässt. Also absolut KEINE Garantie und auch absolut KEINE Haftung meinerseits.

Für Support stehe ich gerne per E-Mail zur Verfügung – ggf. wird man sich da bestimmt einig.

Grüße aus Franken und bleibt bitte alle Gesund!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert