Inscription de l'utilisateur au programme de fidélité

La fonctionnalité d'inscription et de connexion au programme de fidélité permet aux utilisateurs de rechercher vos programme de fidélité, et s'inscrire ou se connecter à son compte depuis Google Wallet. Les utilisateurs seront redirigés vers votre site Web adapté aux mobiles afin d'effectuer la après quoi ils pourront ajouter leur carte à Google Wallet.

Ce guide présente les étapes d'implémentation requises pour activer cette fonctionnalité dans votre programme de fidélité.

Présentation

Pour commencer, assurez-vous d'avoir configuré votre projet au préalable et d'avoir accès à API Google Wallet.

Suivez ces quatre étapes pour implémenter la fonctionnalité d'enregistrement et de connexion pour votre programme de fidélité:

  1. Configurez une classe de test dans Google Wallet pour tester vos flux d'inscription/de connexion.
  2. Développez des pages d'inscription et de connexion qui utilisent Google Wallet SharedDataType.
  3. Implémentez le transfert des informations de la carte de fidélité dans Google Wallet après l'inscription ou la connexion.
  4. Demandez la vérification et l'activation.

Configurer une classe de test dans Google Wallet

Déterminez les URL d'inscription et de connexion, le logo de votre programme et les champs utilisateur sélectionnés. Ensuite, utilisez les champs imbriqués discoverableProgram dans la loyaltyclass pour définir les valeurs appropriées.

Définissez les valeurs dans le discoverableProgram pour créer une version brouillon de votre programme de fidélité avec inscription/connexion activée. Pour vous assurer que cela est visible par les testeurs, vérifiez que les testeurs ont accès à Google Pay & Wallet Console. Pour savoir comment partager vos l'accès de Google Pay and Wallet Console à d'autres personnes, consultez En savoir plus sur la page "Utilisateurs"

Pour terminer la vérification des fonctionnalités de votre implémentation pendant le développement contactez-nous à l'aide du widget d'assistance disponible dans Google Pay & Wallet Console. À l'intérieur la console, sélectionnez le thème API Google Wallet, puis Connexion/Inscription au programme de fidélité dans le sous-sujet.

Développer des pages d'inscription et de connexion qui utilisent les données utilisateur de Google Wallet

Lorsqu'un utilisateur choisit de s'inscrire à votre programme de fidélité ou de s'y inscrire, il est redirigé vers une page personnalisée de votre site Web afin de terminer le processus d'inscription ou de connexion. Si un utilisateur choisit de s'inscrire, Google Wallet demandera à l'utilisateur d'approuver le partage de ses données avec vous.

Vous devez fournir au moins l'une des deux pages qui permettent aux utilisateurs d'effectuer ces actions.

  1. URL de connexion permettant à l'utilisateur de se connecter à un compte existant.
  2. URL d'inscription permettant à un utilisateur de créer un compte.

Vos pages de connexion et d'inscription doivent remplir les conditions suivantes:

  • Proposez une expérience utilisateur adaptée aux mobiles.
  • Réduisez le nombre de champs obligatoires au cours du processus d'enregistrement.
  • Permettez à l'utilisateur de se connecter ou de s'inscrire sur une seule page.
  • Utilisez le chiffrement HTTPS avec un certificat valide pour vous assurer que les données utilisateur sont transmises de manière sécurisée.
  • Assurez-vous d'une disponibilité d'au moins 99,9% de vos pages de connexion et d'inscription.

En plus des exigences ci-dessus, nous vous recommandons d'autoriser les utilisateurs de s'inscrire à votre programme de fidélité sans remplir de formulaire ni et de ne conserver que l'acceptation des conditions d'utilisation.

  • En exploitant les données utilisateur fournies dans les SharedDataType, vous pouvez créer un compte et écarte immédiatement sa carte de fidélité.
  • Vous pouvez ensuite envoyer à l'utilisateur un mot de passe à usage unique ou un lien pour configurer son mot de passe et les détails de son compte facultatifs.
  • Cela réduit le risque que les utilisateurs abandonnent leur processus d'inscription, car chaque étape supplémentaire peut entraîner une abandon supplémentaire.

Lors de l'affichage de la page de connexion ou d'inscription, Google Wallet crée une WebView Android et une requête POST est envoyée à votre URL. Les données utilisateur sont fournies dans le paramètre SharedDataType qui est incluse dans la requête POST en utilisant le application/x-www-form-urlcoded type de contenu et Encodage UTF-8. La valeur de SharedDataType est un objet JSON encodé en base64.

En fonction de l'action choisie par l'utilisateur et des champs que vous avez spécifiés à demander à l'utilisateur, l'objet JSON peut contenir les champs suivants.

Champ Inscription
e-mail
firstName
lastName
addressLine [1-3]
city
state
zipcode
country
téléphone

Reportez-vous à la section ci-dessous pour obtenir un exemple d'objet JSON décodé. contenus dans SharedDataType.

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

Implémenter le transfert immédiat de la carte de fidélité dans Google Wallet

Une fois authentifiée (connexion) ou après la création du compte (inscription), votre page doit immédiatement réimporter la carte de fidélité de l'utilisateur dans Google Wallet.

Vous pouvez transférer à nouveau la carte de fidélité dans Google Wallet en la redirigeant vers un suivant la structure ci-dessous.

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

La longueur d'une URL ne doit pas dépasser 2 000 caractères. Vos liens doivent restent en deçà de cette limite. Les objets encodés dans des jetons JWT doivent être de petite taille et ne contenir que des données spécifiques à l’utilisateur. Essayez de conserver la plupart des données dans la classe de l'objet, avant de le créer. Pour les objets plus volumineux qui dépassent la limite, envisagez commencez par créer l'objet API Google Wallet et en envoyant uniquement l'ID d'objet dans le JWT.

Flux de communication typique

Le flux de communication d'un utilisateur finalisant l'inscription ou la connexion est illustré dans la l'image suivante. Toutes les actions entre "Votre serveur" qu'il vous incombe de mettre en œuvre.

Flux de connexion pour l'enregistrement

Vérification et activation de la requête

Une fois le développement terminé et vos flux d'inscription et de connexion testés, envoyez une demande. via le Contacter l'assistance pour Google Pay and Wallet Console .

Après un examen complet de votre implémentation qui confirme le bon fonctionnement de combinée à l'application Google Wallet, la fonctionnalité d'inscription/de connexion au programme de fidélité annoncé publiquement pour votre programme de fidélité. Tout utilisateur pourra ainsi voir programmer et utiliser cette fonctionnalité.

Vérifications récurrentes de votre inscription/connexion afin de garantir une expérience utilisateur optimale mise en œuvre sera effectuée afin d'assurer la conformité continue avec les exigences de cette fonctionnalité. En cas d'incohérence et si vous utilisez la fonctionnalité de connexion/inscription, vous en serez informé. peuvent être désactivées jusqu'à ce que le problème soit résolu.

Questions fréquentes

  • Existe-t-il des exigences concernant les images utilisées dans mon programme de fidélité ?
    • Oui, vos images doivent être hébergées sur un emplacement HTTPS car ils ne seront pas visibles dans Google Wallet.
  • Existe-t-il des outils permettant de simplifier l'implémentation et le débogage des jetons JWT ?
    • Oui, des plates-formes telles que www.jwt.io vous permettent de décoder et déboguer vos jetons au cours du processus de développement, ce qui vous permet de vérifier que vous envoyez. Notez que Google n'a aucun lien avec eux recommandent spécifiquement l'un de ces tiers.
  • Comment traiter correctement les données SharedDataType encodées en base64 ?
    • Veillez à utiliser l'encodage UTF-8 tout au long de la procédure. Chaîne JSON est d'abord encodée en UTF-8, puis en utilisant <ph type="x-smartling-placeholder"></ph> android.util.Base64 avec les options NO_WRAP et URL_SAFE. Cela correspond à RFC 3548, section 4.