Iscrizione al programma fedeltà per gli utenti e upgrade dei pass

La funzionalità di registrazione e accesso al programma fedeltà consente agli utenti di cercare il tuo programma fedeltà e di aderire o accedere al proprio account direttamente da Google Wallet. Gli utenti verranno indirizzati al tuo sito web ottimizzato per il mobile per completare la procedura, dopodiché potranno aggiungere la loro carta ufficiale a Google Wallet.

L'implementazione di questa funzionalità è il prerequisito per convertire le tessere "statiche" aggiunte dagli utenti in tessere "dinamiche" collegate all'API. Questa guida fornisce una panoramica dei vantaggi e dei passaggi di implementazione necessari per attivare il programma fedeltà per la registrazione, l'accesso e gli upgrade delle tessere.

Panoramica

Per iniziare, assicurati di aver configurato in precedenza il progetto e di avere accesso all'API Google Wallet.

Per implementare la funzionalità, devi seguire questi quattro passaggi:

  1. Configura una classe di test:configura Google Wallet per testare i tuoi flussi.
  2. Sviluppa pagine:crea pagine di registrazione/accesso utilizzando Google Wallet SharedDataType.
  3. Implementa il push back: invia la carta fedeltà a Google Wallet dopo l'azione.
  4. Richiedi la verifica:invia la richiesta per la revisione e l'attivazione dell'upgrade.

Perché implementare la registrazione al programma fedeltà?

Per comprendere il valore di questa integrazione, è importante distinguere tra i due tipi di tessere esistenti in Google Wallet: L1 (aggiunta dall'utente) e L2 (emessa dal partner).

Differenza tra L1 e L2

Funzionalità L1 Pass (aggiunto dall'utente) L2 Pass (emesso dal partner)
Origine Creato quando un utente scansiona manualmente una carta fisica o digita un numero. Creato e inviato utilizzando l'API Wallet dopo che un utente si registra o accede utilizzando il tuo flusso.
Controllo Statico. Il partner non ha visibilità o controllo su questa tessera. Dinamico. Il partner ha il pieno controllo tramite l'API.
Funzionalità Un'immagine statica di un codice a barre. Impossibile aggiornare. Può aggiornare i saldi punti, lo stato del livello, mostrare offerte personalizzate e ricevere notifiche.

Percorsi di upgrade: il "ponte" verso il tuo programma

Creando il flusso di registrazione al programma fedeltà (la "destinazione"), consenti a Google di creare un "ponte" che esegue l'upgrade degli utenti dalle tessere L1 statiche alle tue tessere L2 ufficiali. Esistono due trigger di upgrade principali:

  1. Upgrade della tessera da L1 a L2:se un utente ha aggiunto manualmente la tua carta (L1), Google Wallet può invitarlo a visitare il nuovo flusso di accesso per eseguire l'upgrade alla tessera dinamica ufficiale (L2).
  2. Aggiornamenti delle tessere importate da Gmail:se Google Wallet rileva una carta fedeltà che utilizza l'account Gmail di un utente, può chiedere all'utente di visitare il tuo flusso e autenticarsi per ricevere la tessera L2 ufficiale.

Passaggio 1: configura una tessera di test in Google Wallet

Determina gli URL di registrazione e accesso, il logo del programma e i campi utente scelti. Poi, utilizza i campi nidificati discoverableProgram in loyaltyclass per impostare i valori appropriati.

Imposta i valori in discoverableProgram per creare una bozza del programma fedeltà con registrazione/accesso abilitati. Per assicurarti che sia visibile ai tester, verifica che questi abbiano accesso alla console Google Pay e Wallet. Per informazioni dettagliate su come condividere l'accesso a Google Pay e Wallet Console con altre persone, consulta la pagina Informazioni sulla pagina Utenti.

Per completare la verifica della funzionalità della tua implementazione durante la procedura di sviluppo, contattaci utilizzando il widget Contatta l'assistenza nella console Google Pay e Google Wallet. Nella console, seleziona API Google Wallet nell'argomento e Accesso/registrazione al programma fedeltà nel sottoargomento.

Passaggio 2: sviluppa le pagine di registrazione e accesso

Quando un utente sceglie di accedere o registrarsi al tuo programma fedeltà, viene indirizzato a una pagina personalizzata sul tuo sito web per completare la registrazione o la procedura di accesso. Se un utente sceglie di registrarsi, Google Wallet gli chiederà di approvare la condivisione dei suoi dati utente con te.

Devi fornire una delle due pagine o entrambe che consentano agli utenti di completare queste azioni:

  1. Un URL di accesso in cui un utente può accedere a un account esistente.
  2. Un URL di registrazione in cui un utente può creare un nuovo account.

Le pagine di accesso e registrazione devono soddisfare i seguenti requisiti:

  • Offri un'esperienza utente ottimizzata per il mobile.
  • Riduci al minimo il numero di campi obbligatori durante la procedura di registrazione.
  • Consente all'utente di completare l'accesso o la registrazione in un'unica pagina.
  • Utilizza la crittografia HTTPS con un certificato valido per garantire la trasmissione sicura dei dati utente.
  • Garantisci un uptime di almeno il 99,9% delle pagine di accesso e registrazione.

Oltre a questi requisiti, ti consigliamo di consentire agli utenti di registrarsi al tuo programma fedeltà senza compilare alcun modulo o di limitare la pagina all'accettazione dei termini di servizio.

  • Sfruttando i dati utente forniti nel SharedDataType, puoi creare un account e inviare immediatamente la tessera fedeltà.
  • Successivamente, puoi inviare all'utente una password monouso o un link per configurare la password e i dettagli dell'account facoltativi.
  • In questo modo, si riduce la possibilità che gli utenti abbandonino la procedura di registrazione, poiché ogni passaggio aggiuntivo può portare a un ulteriore abbandono.

Quando viene visualizzata la pagina di accesso o registrazione, Google Wallet crea una WebView di Android e viene inviata una richiesta POST all'URL che hai fornito. I dati utente vengono forniti nel parametro SharedDataType, incluso nella richiesta POST con un Content-Type di application/x-www-form-urlencoded e codifica UTF-8. Il valore del parametro SharedDataType è un oggetto JSON con codifica Base64.

A seconda dell'azione scelta dall'utente e dei campi che hai specificato da richiedere all'utente, l'oggetto JSON può contenere i seguenti campi.

Campo Registrazione
email
firstName
lastName
addressLine [1-3]
city
stato
codice postale
country
telefono

Per un esempio decodificato di oggetto JSON contenuto in SharedDataType, consulta quanto segue.

Risorsa

{
  "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"
}

Passaggio 3: implementa il push immediato a Google Wallet

Una volta autenticata (accesso) o dopo la creazione dell'account (registrazione), la pagina deve inviare immediatamente la carta fedeltà dell'utente a Google Wallet.

Puoi reinserire la carta fedeltà in Google Wallet reindirizzando a un link che segue la struttura riportata di seguito.

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

La lunghezza sicura per un URL è di 2000 caratteri. I tuoi link non devono superare questo limite. Gli oggetti codificati nei JWT devono essere piccoli e contenere solo dati specifici dell'utente. Cerca di conservare la maggior parte dei dati nella classe dell'oggetto, creandola prima di generare il JWT. Per gli oggetti più grandi che non rientrano nel limite, valuta la possibilità di creare prima l'oggetto nell'API Google Wallet e di inviare solo l'ID oggetto nel JWT.

Flusso di comunicazione tipico

Il flusso di comunicazione per un utente che completa la registrazione o l'accesso è illustrato nell'immagine seguente. È tua responsabilità implementare tutte le azioni tra "Il tuo server".

Flussi di accesso alla registrazione

Passaggio 4: richiedi la verifica e l'attivazione

Dopo aver completato il lavoro di sviluppo e testato i flussi di registrazione/accesso, devi inviare una richiesta per far esaminare e attivare completamente l'implementazione.

  1. Vai a Google Pay & Wallet Console.
  2. Utilizza il widget Contatta l'assistenza.
  3. Comunica al team di assistenza che hai completato l'integrazione della registrazione al programma fedeltà.

Dopo una revisione completa dell'implementazione che confermi la corretta funzionalità in combinazione con l'app Google Wallet, la funzionalità di registrazione/accesso al programma fedeltà verrà lanciata pubblicamente per il tuo programma fedeltà.

Per garantire un'esperienza utente ottimale, verranno eseguiti controlli periodici dell'implementazione della registrazione/dell'accesso per garantire la conformità continua ai requisiti della funzionalità. In caso di discrepanze, riceverai una notifica e la funzionalità di accesso/registrazione potrebbe essere disattivata finché il problema non viene risolto.

Domande frequenti

  • Esistono requisiti per le immagini utilizzate nel mio programma fedeltà? Sì, le immagini devono essere ospitate in una posizione HTTPS, altrimenti non saranno visibili in Google Wallet.

  • Esistono strumenti che semplificano l'implementazione e il debug dei JWT? Sì, piattaforme come www.jwt.io ti consentono di decodificare ed eseguire il debug dei token durante il processo di sviluppo, permettendoti di verificare i contenuti che invii. Tieni presente che Google non ha alcuna affiliazione e non consiglia in modo specifico nessuna di queste terze parti.

  • Come gestiamo correttamente i dati SharedDataType codificati in Base64? Assicurati di utilizzare la codifica UTF-8 durante l'intero processo. La stringa JSON viene prima codificata in UTF-8 e successivamente codificata utilizzando android.util.Base64 con le opzioni NO_WRAP e URL_SAFE. Ciò corrisponde alla sezione 4 dell'RFC 3548.