Daten abrufen

Mit dem Befehl get smart tap data werden Informationen zur Einrichtung vom Mobilgerät angefordert und Umgebungsinformationen bereitgestellt. Die Umgebungsinformationen werden vom Mobilgerät verwendet, um zu bestimmen, welche Nutzlasten im aktuellen Kontext übertragen werden müssen. Das Terminal verwendet die Antwort vom Mobilgerät, um den nächsten Vorgang vorzubereiten.

Smart-Bonus-Datenbefehl abrufen

Cla INS P1 P2 Lc Daten Le
90 50 00 00 xx Serviceanfrage-NDEF-Eintrag 00

NDEF-Eintrag der Dienstanfrage

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 Dienst-NDND-Header srq NDEF-Header M
6 2 Dienstanfrage-NDEF-Version (0001)   Binär M
8 16 NDEF-Eintrag der Sitzung ses   M
24 Var NDEF-Eintrag des Händlers mer   M
Var NDEF-Eintrag der Dienstliste slr   M
Var Eintrag für POS-Funktionen pcr   O

NDEF-Eintrag des Händlers

Offset Länge Textzeile Eintragtyp Eintrag-ID Nutzlastformat M/O/C
0 6 NDEF-Header des Händlers mer   NDEF-Header M
6 Var Collector-ID NDEF-Eintrag cld   PRIMITISCH M
Var Geschäfts-ID des NDEF-Eintrags lid   PRIMITISCH O
Var Terminal-ID-NDEF-Eintrag tid   PRIMITISCH O
Var Händlername NDEF-Eintrag T mnr RTD_TEXT O
Var Händlerkategorie NDEF-Eintrag mcr   PRIMITISCH O

Die Collector-ID ist eine von Google zugewiesene Nummer. Es ist in der Regel eine achtstellige Nummer.

Die Händlerkategorie ist ein vierstelliger Händlercode, der sich auf die in den Netzwerken definierte Kategorie des Händlers bezieht.

NDEF-Eintragsliste für Dienste

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 NDEF-Header der Dienstliste slr NDEF-Header M
6 Var Servicetypanfrage – NDEF-Eintrag 1 str   M
 
Var Servicetypanfrage – NDEF-Eintrag n str   O
NDEF-Eintragsanfrage für Diensttyp
Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 NDEF-Header der Dienstart str NDEF-Header M
6 1 Servicetyp Byte   Binär M
Diensttyp Byte
Wert Textzeile
0x00 Alle Dienste
0 × 1 Alle Dienste außer PPSE
0x02 PSA
0x03 Treue
0x04 Angebot
0x05 Geschenkkarte
0x06 Private-Label-Karte
0x07 Veranstaltungsticket
0x08 Flug
0x09 Fahrkarten
0x0A-0x0F, RFU Twin
0x10 Cloudbasierte Geldbörse
0 x 11 Zoll Mobile Marketing-Plattform
0x12 Allgemein
0x12-0x3F RFU Twin
0x40 Wallet-Kunde
0x6F Spezifisches RFU-Wallet
0x9F RFU-Händler-spezifisch

POS-Fähigkeiten (NDEF-Eintrag)

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 NDEF-Header für POS-Funktionen pcr NDEF-Header M
6 1 Bitmap für Systemfunktionen   Binär M
7 1 Bitmap für UI-Funktionen   Binär M
8 1 Bitmap für den Bezahlvorgang   Binär M
9 1 CVM-Funktions-Bitmap   Binär M
10 1 Bitmap mit Funktionen antippen   Binär M
Bitmaps für POS-Dienst
  0 × 1 0x02 0x04 0x08 0x10 0x20 0x40 0x80
System Eigenständig Teilweise integriert Unbeaufsichtigt Online Offline MP Zlib-Support Rfu
UI Drucker Druckergrafiken Displaykampagnen Bilder Audio Animation Video Rfu
Bezahlvorgang/Kasse Supportzahlung Digitale Belege unterstützen Ausstellung von Supportdiensten OTA-POS-Daten unterstützen Rfu Rfu Rfu Rfu
CVM Online-PIN CD-PIN Signatur Keine CVM Gerätegenerierter Code Vom Dienstanbieter generierter Code Ausweiserfassung Biometrisches
Step Nur Ticket Nur Zahlung Zahlung ausführen Zahlung weitergeben Rfu Rfu Rfu Rfu

Reaktion auf Smart-Bonus-Daten abrufen

Der Dienst-NDEF-Eintrag in der Antwortnachricht get smart tap data enthält entweder einen NDEF-Eintragseintrag für das Eintrag oder eine Liste mit einem oder mehreren unverschlüsselten und unkomprimierten Dienst-NDEF-Einträgen.

Weitere Informationen dazu, wie Smart-Bonus mehr Antwortnutzlasten als APDU unterstützt, findest du unter Datenaufteilung.

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 Var Serviceanfrage-NDEF-Eintrag srs   M
2 Status nach ISO 7816-4   Binär M

NDEF-Eintrag für Dienstantwort

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 Dienst-Antwort-NDEF-Header srs NDEF-Header M
6 16 NDEF-Eintrag der Sitzung ses   M
22 Var NDEF-Eintrag des Eintrags reb   C
Var Service NDEF Record 1 asv   C
 
Var NDN-Eintrag für Dienst n asv   O

NDEF-Datensatz des Eintrags

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 NDEF-Header reb NDEF-Header M
6 1 Nutzlaststatus-Bitmap   Binär M
7 Var Nutzlast   Binär M
Nutzlaststatus-Bitmap
  0 × 1 0x02 0x04 0x08 0x10 0x20 0x40 0x80
Nutzlaststatus Verschlüsselt Beunruhigt Rfu Rfu Rfu Rfu Rfu Rfu
Verkettete, unverschlüsselte und entpackte Nutzlast

Die Antwortdaten wurden möglicherweise auf mehrere APDUs aufgeteilt. Zuerst sollte das Terminal die Nutzlast im Eintrag reb und die Nutzlast aus einer zusätzlichen Antwort auf Smart-Bonus-Daten (falls vorhanden) abrufen und verketten.

Die verketteten Nutzlasten können verschlüsselt und zlib-komprimiert sein, wie durch die Status-Bitmap im Eintrag reb angegeben. Die Nutzlasten müssen zuerst entschlüsselt werden, falls zutreffend, und dann dekomprimiert. Die Nutzlasten werden nur verschlüsselt, wenn eine erfolgreiche Verhandlung stattgefunden hat. Wenn der Status der Verhandlungsantwort 9500 lautet, wird die Verhandlung trotzdem als erfolgreich betrachtet und die Nutzlasten verschlüsselt. Die Nutzlasten können nur komprimiert werden, wenn die POS-Funktionen des NDEF-Eintrags vorhanden sind. Dies deutet darauf hin, dass die Komprimierung akzeptabel ist, und die Nutzlast reduziert tatsächlich die Nutzlastgröße.

Weitere Informationen zum Entschlüsseln der Nutzlasten finden Sie unter Verschlüsselung.

Wenn die Nutzlasten verkettet, entschlüsselt und dekomprimiert werden, enthalten die Antwortdaten eine Liste der Dienst-NDEF-Einträge.

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 Var Service NDEF Record 1 asv   O
 
Var NDN-Eintrag für Dienst n asv   O

NDEF-Eintrag des Dienstes

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 6 Dienst-NDEF-Header asv NDEF-Header M
6 Var NDEF-Eintrag des Dienstausstellers I PRIMITIVE mit Dienstaussteller-Byte M
Var Serviceobjekt NDEF record 1 variabel   M
Var Serviceobjekt NDEF Record n variabel   M
Byte des Dienstausstellers
Wert Textzeile
0x00 Ohne Angabe
0 × 1 Vom Händler ausgestellt
0x02 Brieftasche ausgestellt
0x03 Vom Hersteller ausgestellt
0x04–0x2F RFU Twin
0 x 30 x 0 x 4F Spezifisches RFU-Wallet
0 x 50–0 x 6F RFU-Händler-spezifisch

Das Byte des Dienstausstellers, das von Google Wallet für einen Kundeneintrag verwendet wird, ist immer 0x02 und die restliche Nutzlast des Dienstausstellers ist immer 0x71797971.

Das Byte des Dienstausstellers, das von Google Wallet für alle anderen derzeit definierten Dienstobjekteinträge verwendet wird, ist immer 0x01. Die restliche Nutzlast des Dienstausstellers ist die Collector-ID des Ausstellers. Konto, das die Karte/Ticket ausgegeben hat, wenn diese Collector-ID vorhanden ist. Andernfalls ist sie auf 0x00000000 gesetzt. Für alle Einlösungsausstellerkonten muss eine Collector-ID definiert sein. Ein Ausstellerkonto, das eine Karte ausstellt, muss jedoch nicht das Konto eines Einlösungsausstellers sein.

Relevante Statuswörter

Kategorie Relevante Statuswörter
90xx 9000, 9001 – Verwendung bei Passthrough-Zahlung
91xx 9100, 9101 – Pass-over und Zahlung, 9102 – Passover
92xx ALLE
93xx ALLE
94xx ALLE
95xx
6xxx A62

9100 gibt an, dass zusätzliche Daten vorhanden sind, sodass das Terminal eine get additional data-Anfrage stellen muss.

9001 gibt an, dass das Terminal mit der Zahlung fortfahren kann, wenn es sich um eine Übernahme der Zahlung handelt. Wenn es sich um eine Nur-Pass-Karte oder eine Fahrkarte-und-Zahlungskarte handelt, hat 9001 dasselbe erwartete Terminalverhalten wie 9000.

9101 und 9102 sind Indikatoren, dass die Zahlung nicht bereit ist und das Terminal nicht mit der Zahlung fortfahren soll.

Weitere Informationen findest du unter Statuswörter.

Zusätzlichen Befehl für Smart-Bonus-Daten abrufen

Cla INS P1 P2 Lc Daten Le
90 C0 00 00     00

Der Befehl „Weitere Smart-Bonus-Daten abrufen“ hat keine Datennutzlast.

Zusätzliche Antwort für Smart-Bonus-Daten

Offset Länge Textzeile Eintragtyp Nutzlastformat M/O/C
0 Var Nutzlast   Binär M
2 Status nach ISO 7816-4   Binär M

Relevante Statuswörter

Kategorie Relevante Statuswörter
90xx 9000
91xx 9100, 9101 – Pass-over und Zahlung, 9102 – Passover
92xx ALLE
93xx ALLE
94xx ALLE
95xx
6xxx A62

9100 gibt an, dass zusätzliche Daten vorhanden sind, sodass das Terminal eine weitere get additional data-Anfrage stellen muss.

9101 und 9102 sind Indikatoren, dass die Zahlung nicht bereit ist und das Terminal nicht mit der Zahlung fortfahren kann.

Weitere Informationen findest du unter Statuswörter.