Registrierung für das Nutzer-Treuepunkteprogramm und Pass-Upgrades

Mit der Funktion zum Registrieren und Anmelden für das Treuepunkteprogramm können Nutzer nach Ihrem Treuepunkteprogramm suchen und sich direkt über Google Wallet bei ihrem Konto anmelden oder sich für das Programm registrieren. Nutzer werden auf die für Mobilgeräte optimierte Website weitergeleitet, um den Vorgang abzuschließen. Anschließend können sie ihre offizielle Karte zu Google Wallet hinzufügen.

Die Implementierung dieser Funktion ist die Voraussetzung für die Umwandlung von „statischen“ von Nutzern hinzugefügten Karten/Tickets in „dynamische“ API-verknüpfte Karten/Tickets. In dieser Anleitung finden Sie einen Überblick über die Vorteile und die Implementierungsschritte, die erforderlich sind, um Ihr Treuepunkteprogramm für die Registrierung, die Anmeldung und das Upgrade von Karten zu aktivieren.

Übersicht

Vergewissern Sie sich zuerst, dass Sie bereits ein Projekt eingerichtet und Zugriff auf die Google Wallet API haben.

Führen Sie die folgenden vier Schritte aus, um die Funktion zu implementieren:

  1. Testklasse einrichten:Konfigurieren Sie Google Wallet, um Ihre Abläufe zu testen.
  2. Seiten entwickeln:Erstellen Sie Registrierungs-/Anmeldeseiten mit Google Wallet SharedDataType.
  3. Ausstellung einbinden:Senden Sie die Kundenkarte nach der Aktion an Google Wallet.
  4. Überprüfung anfordern:Reichen Sie die Überprüfung ein und fordern Sie die Aktivierung des Upgrades an.

Warum sollten Sie die Registrierung für das Treueprogramm implementieren?

Um den Wert dieser Integration zu verstehen, ist es wichtig, zwischen den beiden Arten von Karten zu unterscheiden, die in Google Wallet vorhanden sind: L1 (vom Nutzer hinzugefügt) und L2 (vom Partner ausgestellt).

Der Unterschied zwischen L1 und L2

Funktion L1-Pass (vom Nutzer hinzugefügt) L2-Bestanden (vom Partner ausgestellt)
Ursprung Wird erstellt, wenn ein Nutzer eine physische Karte manuell scannt oder eine Nummer eingibt. Erstellt und übertragen über die Wallet API, nachdem sich ein Nutzer über Ihren Ablauf registriert oder angemeldet hat.
Kontrollgruppe Statisch: Der Partner hat keinen Einblick in diese Karte/dieses Ticket und kann sie auch nicht steuern. Dynamisch: Der Partner hat mit der API die volle Kontrolle.
Funktionen Ein statisches Bild eines Barcodes. Aktualisierung nicht möglich. Sie können Punkteguthaben und Stufenstatus aktualisieren, personalisierte Angebote anzeigen und Benachrichtigungen erhalten.

Die Upgrade-Pfade: Die „Brücke“ zu Ihrem Programm

Wenn Sie den Registrierungsablauf für das Treuepunkteprogramm (das „Ziel“) erstellen, kann Google eine „Brücke“ bauen, mit der Nutzer von statischen L1-Karten auf Ihre offiziellen L2-Karten umgestellt werden. Es gibt zwei primäre Upgrade-Trigger:

  1. L1-zu-L2-Ticket-Upgrades:Wenn ein Nutzer Ihre Karte (L1) zuvor manuell hinzugefügt hat, kann er in Google Wallet aufgefordert werden, Ihren neuen Anmeldevorgang aufzurufen, um ein Upgrade auf das offizielle, dynamische Ticket (L2) durchzuführen.
  2. Upgrade von in Gmail importierten Karten:Wenn Google Wallet eine Kundenkarte über das Gmail-Konto eines Nutzers erkennt, kann der Nutzer aufgefordert werden, Ihren Ablauf aufzurufen und sich zu authentifizieren, um die offizielle Karte der Stufe 2 zu erhalten.

Schritt 1: Testklasse in Google Wallet einrichten

Bestimme die Registrierungs- und Anmelde-URLs, das Programmlogo und die ausgewählten Nutzerfelder. Verwenden Sie dann die verschachtelten discoverableProgram-Felder in der loyaltyclass, um die entsprechenden Werte festzulegen.

Legen Sie die Werte im discoverableProgram fest, um einen Entwurf der Registrierung/Anmeldung für das Treuepunkteprogramm zu erstellen. Prüfen Sie, ob die Tester Zugriff auf die Google Pay and Wallet Console haben, damit der Entwurf für Tester sichtbar ist. Weitere Informationen dazu, wie Sie anderen Nutzern Zugriff auf die Google Pay & Wallet Console geben, finden Sie unter Weitere Informationen zur Seite „Nutzer“.

Um die Überprüfung der Funktionsweise der Implementierung während des Entwicklungsprozesses abzuschließen, kontaktieren Sie uns über das Support-Widget in der Google Pay and Wallet Console. Wähle in der Console als Thema Google Wallet API und dann als untergeordnetes Thema Registrierung/Anmeldung für Treuepunkte aus.

Schritt 2: Registrierungs- und Anmeldeseiten entwickeln

Wenn sich ein Nutzer für Ihr Treuepunkteprogramm registriert oder anmeldet, wird er auf eine speziell dafür vorgesehene Seite Ihrer Website weitergeleitet, auf der er den Registrierungs- oder Anmeldevorgang abschließen kann. Wenn sich ein Nutzer registrieren möchte, fordert ihn Google Wallet auf, der Weitergabe seiner Daten an dich zuzustimmen.

Sie müssen eine der beiden Seiten oder beide Seiten bereitstellen, über die Nutzer diese Aktionen ausführen können:

  1. Eine Anmelde-URL, unter der sich ein Nutzer mit einem bestehenden Konto anmelden kann.
  2. Eine Registrierungs-URL, unter der ein neues Konto erstellt werden kann.

Ihre Anmelde- und Registrierungsseiten müssen die folgenden Anforderungen erfüllen:

  • Sie bieten eine für Mobilgeräte optimierte Nutzererfahrung.
  • Die Anzahl der Pflichtfelder während der Registrierung beschränkt sich auf ein Mindestmaß.
  • Der Nutzer kann sich auf einer einzigen Seite anmelden oder registrieren.
  • Verwenden Sie die HTTPS-Verschlüsselung mit einem gültigen Zertifikat, damit die Nutzerdaten sicher übertragen werden.
  • Sorgen Sie dafür, dass die Anmelde- und Registrierungsseiten zu mindestens 99,9% verfügbar sind.

Zusätzlich zu diesen Anforderungen empfehlen wir Ihnen, dass Nutzer sich für Ihr Treuepunkteprogramm anmelden können, ohne ein Formular ausfüllen oder die Nutzungsbedingungen der Seite akzeptieren zu müssen.

  • Durch Verwendung der in SharedDataType bereitgestellten Nutzerdaten können Sie ein Konto erstellen und sofort eine Kundenkarte ausstellen.
  • Anschließend können Sie dem Nutzer per E-Mail ein Einmalpasswort oder einen Link senden, über den er sein Passwort und optional seine Kontodetails konfigurieren kann.
  • Dadurch verringert sich die Wahrscheinlichkeit, dass Nutzer den Registrierungsvorgang abbrechen, denn jeder zusätzliche Schritt bietet eine weitere Gelegenheit für einen Abbruch.

Für die Präsentation der Anmelde- oder Registrierungsseite erstellt Google Wallet ein Android-WebView und es wird eine POST-Anfrage an die angegebene URL gesendet. Nutzerdaten werden im Parameter SharedDataType bereitgestellt, der in der POST-Anfrage mit einem Content-Type von application/x-www-form-urlencoded und UTF-8-Codierung enthalten ist. Der Wert des Parameters SharedDataType ist ein Base64-codiertes JSON-Objekt.

Je nach der vom Nutzer ausgewählten Aktion und den von Ihnen angegebenen Feldern, die abgefragt werden, kann das JSON-Objekt die folgenden Felder enthalten.

Feld Registrierung
E-Mail
firstName
lastName
addressLine [1-3]
Ort
Bundesstaat
Postleitzahl
country
Telefon

Unten finden Sie als Beispiel ein decodiertes JSON-Objekt, das in SharedDataType enthalten ist.

Ressource

{
  "firstName": "Jane",
  "lastName": "Doe",
  "addressLine1": "1600 Amphitheatre Pkwy",
  "addressLine2": "Apt 123",
  "addressLine3": "Attn:Jane",
  "city": "Mountain View",
  "state": "CA",
  "zipcode": "94043",
  "country": "US",
  "email": "jane.doe@example.com",
  "phone": "555-555-5555"
}

Schritt 3: Sofortige Ausstellung in Google Wallet implementieren

Nach der Authentifizierung (Anmeldung) oder nach der Kontoerstellung (Registrierung) sollte Ihre Seite die Kundenkarte des Nutzers sofort an Google Wallet zurückgeben.

Sie können die Kundenkarte an Google Wallet senden, indem Sie eine Weiterleitung zu einem Link mit folgender Struktur einrichten.

https://pay.google.com/gp/v/save/{jwt_generated}

Die sichere Länge für eine URL sind 2.000 Zeichen. Ihre Links sollten dieses Limit nicht überschreiten. In JWTs codierte Objekte sollten klein sein und nur Daten enthalten, die für den Nutzer spezifisch sind. Die meisten Daten sollten in der Klasse des Objekts verbleiben, das vor dem JWT erstellt wird. Bei größeren Objekten, die das Limit überschreiten, sollte das Objekt zuerst in der Google Wallet API erstellt und im JWT nur die Objekt-ID gesendet werden.

Typischer Kommunikationsablauf

Der Kommunikationsablauf für einen Nutzer, der eine Registrierung oder Anmeldung durchführt, ist in der folgenden Abbildung dargestellt. Sie sind für alle Aktionen unter „Ihr Server“ verantwortlich.

Abläufe für die Registrierung/Anmeldung

Schritt 4: Überprüfung und Aktivierung anfordern

Nachdem Sie die Entwicklungsarbeit abgeschlossen und Ihre Registrierungs-/Anmeldeabläufe getestet haben, müssen Sie eine Anfrage einreichen, damit Ihre Implementierung überprüft und vollständig aktiviert wird.

  1. Öffnen Sie die Google Pay & Wallet Console.
  2. Verwenden Sie das Widget Support kontaktieren.
  3. Teilen Sie dem Supportteam mit, dass Sie die Integration der Registrierung für Treuepunkte abgeschlossen haben.

Nach einer vollständigen Überprüfung Ihrer Implementierung, mit der die korrekte Funktionsweise in Verbindung mit der Google Wallet App bestätigt wird, erfolgt die offizielle Einführung der Registrierungs-/Anmeldefunktion für Ihr Treuepunkteprogramm.

Ihre Registrierungs-/Anmeldeimplementierungen werden immer wieder überprüft, um die fortlaufende Einhaltung der Funktionsanforderungen sicherzustellen. So wird für eine optimale Nutzererfahrung gesorgt. Bei Abweichungen werden Sie entsprechend benachrichtigt. Die Anmelde-/Registrierungsfunktion wird möglicherweise deaktiviert, bis das Problem behoben ist.

Häufig gestellte Fragen

  • Gibt es Anforderungen an die in meinem Treuepunkteprogramm verwendeten Bilder? Ja, Ihre Bilder sollten an einem HTTPS-Standort gehostet werden, da sie ansonsten in Google Wallet nicht sichtbar sind.

  • Gibt es Tools für eine einfachere Implementierung und Fehlerbehebung von JWTs? Ja, auf Plattformen wie www.jwt.io kannst du deine Tokens während des Entwicklungsprozesses decodieren und debuggen. So lassen sich die von dir eingereichten Inhalte überprüfen. Beachte, dass Google nicht mit solchen Drittanbietern in Verbindung steht und diesbezüglich keine ausdrückliche Empfehlung abgibt.

  • Wie werden die Base64-codierten SharedDataType-Daten richtig verarbeitet? Verwenden Sie während des gesamten Prozesses die UTF-8-Codierung. Der JSON-String wird zuerst mit UTF‑8 und anschließend mit android.util.Base64 mit den Optionen NO_WRAP und URL_SAFE codiert. Dies entspricht Abschnitt 4 von RFC 3548.