ID TECH
Kontakt
Alle technischen Beiträge

Technischer Beitrag

Tools for Payment Device Integration: UDemo

Entwickler von Zahlungsanwendungen, die die Integration von ID TECH Kartenlesern in ihre POS- (oder andere) Systeme beschleunigen möchten, können mit dem Universal SDK von ID TECH schnell Fortschritte erzielen. Das SDK stellt Bibliotheken (sowie ein gemeinsames API) zur Verfügung, um alle aktuell produzierten Kartenleser von ID TECH zu steuern – darunter Chip-Karten-Leser (EMV), Magnetstreifenleser (MSR) und kontaktlose Leser – und unterstützt dabei verschiedene Programmiersprachen (wie C# für Windows, Java für Android, Swift für iOS und C für Linux).

Um das zugehörige Demoprogramm auszuführen, müssen Sie das SDK jedoch nicht installieren. Bei diesem eigenständigen Programm handelt es sich um das sogenannte Universal Demo bzw. kurz UDemo. Die eigenständige Windows-Version des UDemo erhalten Sie unter hier.

Wir empfehlen allen unseren Entwicklerkunden, sich mit der UDemo-App vertraut zu machen. Sie veranschaulicht detailliert, wie die Rohdaten von Anfragen und Antworten (an das Gerät und vom Gerät) aussehen, ermöglicht die Konfiguration eines Geräts mit bestimmten Einstellungen und bietet eine Testumgebung, in der Entwickler verschiedene Befehle mit unterschiedlichen Argumentwerten in Echtzeit ausprobieren können. UDemo eignet sich zudem hervorragend, um mehr über EMV zu erfahren.

Starten Sie nach der Ausführung des UDemo-Installationsprogramms die App. Es erscheint ein Fenster ähnlich dem folgenden:

Bitte beachten Sie: Sie können jederzeit einen unterstützten ID TECH Kartenleser an den USB-Anschluss Ihres Computers anschließen – er wird automatisch von UDemo erkannt. Nach der Geräteerkennung wird der Befehlsbaum (siehe „COMMANDS" oben) mit gerätespezifischen Befehlen befüllt. So erscheint beispielsweise eine Gruppe „CTLS", wenn das Gerät kontaktlose Transaktionen unterstützt, oder „EMV", wenn es kontaktbehaftete EMV-Chipkartentransaktionen unterstützt, und so weiter.

Die grundlegende Vorgehensweise lautet:

  1. Schließen Sie ein Gerät an.
  2. Navigieren Sie im Befehlsbaum, bis Sie einen gewünschten Befehl gefunden haben.
  3. Doppelklicken Sie auf den Befehl im Baum ODER klicken Sie einmal auf die grüne Schaltfläche Execute Command Schaltfläche am unteren Rand des Fensters.
  4. Prüfen Sie den Log-Bereich, um die gesendeten Anfragen und empfangenen Antworten einzusehen. (An das Gerät gesendete Werte sind mit „OUT" gekennzeichnet, vom Gerät empfangene Werte mit „IN".)
  5. Prüfen Sie den Results -Bereich (auf der rechten Seite), um eine verständliche Erklärung der Vorgänge zu erhalten.

Im obigen Screenshot wurde der Befehl „Start EMV Transaction" (gegen einen ID TECH VP3300 Kartenleser) mit dem Standard-Transaktionsbetrag von 1,00 $ ausgeführt. Der tatsächlich ausgeführte Befehl wird oben im Log angezeigt. Vom Gerät wurden vier „IN"-Antworten empfangen. Die erste Antwort war ein ACK, die nächsten beiden „IN"-Antworten enthalten Statusinformationen in Form von LCD-Meldungen (wie „Processing…"), die während der Transaktion möglicherweise an einem POS-System angezeigt werden müssen. Die vierte und letzte „IN"-Antwort enthält einen Block mit TLV-Daten (Tag-Länge-Wert), die vom Leser zurückgegeben wurden. Einige der TLV-Auswertungen werden im Result-Bereich angezeigt.

UDemo-Tipps

UDemo ist ein äußerst interaktives Tool, das sich am besten durch praktische Anwendung erlernen lässt. Um den Einstieg etwas zu erleichtern, sollten Sie folgende Hinweise beachten:

  1. Viele Befehle erfordern Argumentwerte oder lassen sich vor der Ausführung konfigurieren. Klicken Sie einfach einmal auf einen Befehl in der Befehlsliste. Falls der betreffende Befehl zusätzliche Werte akzeptiert, erscheinen automatisch entsprechende Eingabefelder direkt oberhalb des Log-Bereichs. Geben Sie alle erforderlichen Werte ein und führen Sie den Befehl anschließend durch einen Doppelklick mit diesen Werten aus.
  2. Die virtuelle Tastatur oben rechts wird aktiv, wenn die im Leser eingelegte Karte eine PIN-Eingabe als eine ihrer Karteninhaberveri­fikationsmethoden erfordert.
  3. Direkt oberhalb der Befehlsliste befindet sich eine Schaltfläche mit der Bezeichnung Decryption. Klicken Sie auf diese Schaltfläche, um ein Dialogfeld zu öffnen, mit dem Sie Transaktionsdaten entschlüsseln können.
  4. Unterhalb des Log-Bereichs finden Sie eine Schaltfläche Start Capture to Disk (sowie eine Schaltfläche Clear Logs und eine Schaltfläche Email Logs to Support). Die Schaltfläche „Start Capture" ist nützlich, wenn Sie die Daten einer Sitzung für eine spätere Analyse aufzeichnen möchten. Sie können uns Ihre Ergebnisse sogar per E-Mail zusenden (über die Schaltfläche „Email Logs"), falls Sie einen technischen Support-Fall eröffnen möchten.

Vor der Durchführung einer EMV-Transaktion

UDemo ist selbstverständlich nur ein Testwerkzeug und nicht in der Lage, eine echte Transaktion über eine Kreditkarte abzurechnen. Es simuliert jedoch alle drei Phasen (Start, Authentifizierung und Abschluss) einer Kontakt-EMV-Sitzung. Bevor Sie Transaktionsbefehle ausführen können, muss das Kartenlesegerät jedoch mindestens einige Konfigurationen durchlaufen. (Andernfalls schlägt die Simulation fehl.)

Sie können ein Gerät schnell mit sinnvollen Standardeinstellungen konfigurieren, indem Sie drei Befehle ausführen:

  1. Suchen Sie zunächst im Befehlsbaum unter dem AID-Knoten den Eintrag „Load Default AID" und führen Sie ihn aus. Dabei handelt es sich um einen Stapelvorgang, der ein halbes Dutzend gängige AIDs in das Gerät lädt. Rechnen Sie mit etwa zehn Sekunden Wartezeit.
  2. Suchen Sie anschließend im Befehlsbaum unter dem CAPK-Knoten den Befehl „Load Default CAPK" und führen Sie ihn aus. Auch dies ist ein Batch-Befehl, dessen Ausführung einige Sekunden in Anspruch nimmt. Er lädt öffentliche Schlüssel für verschiedene Kartenmarken, die zur Validierung der kryptografischen Daten verwendet werden, die eine Chipkarte während einer Transaktion erzeugt. (ACHTUNG: Die Schlüssel dienen ausschließlich Testzwecken und sind nicht für den Produktiveinsatz bestimmt. Produktivschlüssel erhalten Sie von Ihrem Gateway- oder Zahlungsabwicklungsanbieter.)
  3. Suchen Sie abschließend im Befehlsbaum unter dem Knoten „Terminal Config" den Befehl „Save Terminal Data" und führen Sie ihn aus. Dieser lädt sinnvolle Standard-TLVs für das Lesegerät, um verschiedene Terminalfunktionen zu unterstützen.

Nachdem Sie diese Befehle ausgeführt haben, enthält das Kartenlesegerät die erforderlichen Standarddaten, und Befehle wie „Start Transaction" sollten fehlerfrei funktionieren.

Weitere Informationen

Die UDemo-App bietet selbstverständlich einen sehr großen Funktionsumfang, der hier nicht vollständig beschrieben werden kann. Den schnellsten Weg zu weiteren Informationen finden Sie in der unteren linken Ecke des UDemo-Bildschirms (siehe Abbildung oben): dort befindet sich die rosa Schaltfläche Dokumentation Wenn Sie auf diese Schaltfläche klicken, öffnet sich ein PDF im Acrobat Reader (sofern auf Ihrem Rechner installiert) mit dem Schnellstartleitfaden für UDemo.

Um die Bedeutung der in UDemo angezeigten Hex-Bytes zu verstehen, empfiehlt es sich, das Low-Level-(Firmware-)API-Handbuch für Ihr Lesegerät zu beschaffen. Dieses ist in der Regel direkt im Bereich Downloads unserer öffentlichen Wissensdatenbank verfügbar (keine Registrierung erforderlich). Einige Dokumente sind jedoch nur auf Anfrage erhältlich – in diesem Fall wenden Sie sich bitte an Ihren ID TECH-Ansprechpartner, der Ihnen die entsprechenden Unterlagen kostenlos zur Verfügung stellt.

Haben Sie Fragen zum Universal SDK oder zu den Produkten von ID TECH? Kontaktieren Sie unsere Experten unter 1-800-984-1010!