Lancer le processus de redirection

Présentation

L'objectif du flux "Commencer la redirection" est de rediriger l'utilisateur vers l'intégrateur de paiement avec suffisamment d'informations pour qu'il effectue un paiement. L'intégrateur redirige à son tour l'utilisateur vers l'interface Web de l'émetteur, transmettant les informations fournies par Google. L'utilisateur peut ensuite suivre les instructions fournies par l'émetteur pour effectuer un paiement. Cela déclenchera le flux Complete Redirect.

Fonctionnement du flux

L'utilisateur peut sélectionner l'émetteur comme mode de paiement de deux façons.

  1. L'utilisateur sélectionne l'émetteur dans l'interface utilisateur de Google.
  2. L'utilisateur sélectionne l'intégrateur dans l'interface utilisateur de Google et l'émetteur dans celle de l'intégrateur.

L'utilisateur sélectionne l'émetteur dans l'interface utilisateur de Google

Dans ce cas, l'utilisateur sélectionne un émetteur lors de la sélection du mode de paiement dans l'interface utilisateur de Google. Le champ issuerId de l'objet formOfPayment dans RedirectRequest contient donc un identifiant unique généré par Google qui représente un émetteur. Notez que si l'intégrateur de paiement et l'émetteur sont la même entité, Google génère une issuerId pour l'intégrateur de paiement. La requête de redirection utilise une méthode HTTPS GET, avec des paramètres encodés dans l'URL.

Commencer la procédure de redirection (émetteur sélectionné)

Le schéma de séquence suivant illustre l'interaction entre le navigateur de l'utilisateur, Google, l'intégrateur et l'émetteur lorsque l'utilisateur en sélectionne un dans l'interface utilisateur de Google:

Commencer le flux de redirection avec l'émetteur sélectionné

Voici la liste des objets dans le schéma ci-dessus:

  • Utilisateur: il s'agit de la personne qui souhaite effectuer un paiement.
  • UI Google: il s'agit de l'interface Web ou de l'application Google, dans laquelle le client effectue un paiement.
  • Serveur Google: serveur backend de Google qui crée une requête de redirection.
  • Intégrateur de paiement: intégrateur qui transmet l'utilisateur et la demande de redirection à l'émetteur.
  • Émetteur: émetteur dont l'utilisateur dispose d'un compte.

Pour le flux "Commencer la redirection", nous supposons déjà que l'utilisateur se trouve sur la propriété Google (UI Google) et qu'il choisit un mode de paiement. C'est ici que tout commence.

  1. L'utilisateur sélectionne l'émetteur spécifique qu'il souhaite utiliser pour effectuer un paiement. C'est ce qui déclenche le flux "Commencer la redirection".
  2. L'UI Google appelle le serveur Google (backend) pour créer une requête de redirection.
  3. Le serveur Google crée une demande de redirection.
  4. La requête de redirection est envoyée à l'UI Google.
  5. L'interface utilisateur Google redirige l'utilisateur vers le serveur de l'intégrateur.
  6. L'intégrateur traite la demande de redirection de Google et génère une requête de redirection spécifique à l'émetteur.
  7. L'intégrateur redirige l'utilisateur vers l'interface Web de l'émetteur.
  8. L'utilisateur s'authentifie dans l'interface Web de l'émetteur.
  9. L'utilisateur suit les instructions à l'écran pour finaliser le paiement.

L'utilisateur sélectionne l'intégrateur dans l'UI Google

Dans ce cas, l'utilisateur sélectionne l'intégrateur dans l'interface utilisateur de Google. Par conséquent, le champ formOfPayment de RedirectRequest sera défini sur noneChosen, car seuls les émetteurs sont considérés comme des modes de paiement valides. L'intégrateur doit fournir une UI qui permet à l'utilisateur de sélectionner l'un des émetteurs approuvés par Google. La requête de redirection utilise une méthode HTTPS GET, avec des paramètres encodés dans l'URL.

Commencer le flux de redirection (intégrateur sélectionné)

Le schéma de séquence suivant illustre l'interaction entre le navigateur de l'utilisateur, Google, l'intégrateur et l'émetteur lorsque l'utilisateur sélectionne un intégrateur dans l'interface utilisateur de Google:

Commencer la procédure de redirection avec l'intégrateur sélectionné

Voici la liste des objets dans le schéma ci-dessus:

  • Utilisateur: il s'agit de la personne qui souhaite effectuer un paiement.
  • UI Google: il s'agit de l'interface Web ou de l'application Google, dans laquelle le client effectue un paiement.
  • Serveur Google: serveur backend de Google qui crée une requête de redirection.
  • Intégrateur de paiement: intégrateur dans lequel l'utilisateur sélectionne un émetteur.
  • Émetteur: émetteur dont l'utilisateur dispose d'un compte.

Pour le flux "Commencer la redirection", nous supposons déjà que l'utilisateur se trouve sur la propriété Google (UI Google) et qu'il choisit un mode de paiement. C'est ici que tout commence.

  1. L'utilisateur sélectionne un intégrateur (et non un émetteur spécifique) pour effectuer un paiement. C'est ce qui déclenche le flux "Commencer la redirection".
  2. L'UI Google appelle le serveur Google (backend) pour créer une requête de redirection.
  3. Le serveur Google crée une demande de redirection.
  4. La requête de redirection est envoyée à l'UI Google.
  5. L'UI Google redirige l'utilisateur vers l'interface Web de l'intégrateur.
  6. L'intégrateur traite la demande de redirection de Google.
  7. L'intégrateur indique à l'utilisateur les émetteurs disponibles.
  8. L'utilisateur sélectionne l'émetteur spécifique qu'il souhaite utiliser pour effectuer un paiement.
  9. L'intégrateur génère une requête de redirection spécifique à l'émetteur.
  10. L'intégrateur redirige l'utilisateur vers l'interface Web de l'émetteur.
  11. L'utilisateur s'authentifie dans l'interface Web de l'émetteur.
  12. L'utilisateur suit les instructions à l'écran pour finaliser le paiement.

Bonnes pratiques et autres considérations

Mesures de sécurité

L'URL de la requête de redirection comprend un champ callbackUrl non chiffré et un champ redirectRequest chiffré. Ces deux champs contiennent le requestId pour la transaction actuelle. Le fournisseur doit vérifier que requestId est identique dans callbackUrl et la charge utile chiffrée pour s'assurer qu'ils sont liés.