Search Overlay

Gestion des modes de paiement

Aperçu

La fonctionnalité de gestion des modes de paiement de Paysafe Checkout permet aux clients d’ajouter, de modifier et de supprimer des cartes de leur profil coffre-fort via l’interface utilisateur de Paysafe Checkout. Cette fonction permet à vos clients d’enregistrer leurs cartes et d’effectuer leurs paiements plus rapidement puisqu’ils n’auront qu’à saisir le CVV au lieu des données complètes de la carte.

Enregistrer une carte dans un profil client

Pour les paiements initiaux, lorsque le client saisit les données de sa carte et clique sur le bouton « Payer », Paysafe Checkout renvoie un jeton de paiement représentant ces données. Ce jeton de paiement a une durée de validité très courte (5 minutes) et est généralement utilisé pour des paiements uniques.

Ce jeton de paiement à usage unique peut ensuite être converti en jeton de paiement à usage multiple qui est ajouté à un profil de coffre-fort client. Le jeton de paiement à usage multiple peut être utilisé pour les transactions initiées par les marchands via l’API Paiements, sans CVV.

Le marchand peut également s’appuyer sur le profil pour présenter un client récurrent dans Paysafe Checkout avec toutes les cartes enregistrées dans ce profil. Dans ce dernier cas, le marchand doit utiliser un jeton de profil à usage unique. Examinons ce scénario de bout en bout ci-dessous et voyons ce dont nous avons besoin pour le mettre en œuvre :

Tout d’abord, pour convertir un jeton de carte à usage unique en jeton à usage multiple, vous devez passer par les étapes suivantes :

  • Vérifier si le jeton est émis pour une carte.
  • Vérifier si le client exprime effectivement l’intention de sauvegarder cette carte.
  • Vérifier que le jeton n’a pas été créé à partir d’un autre jeton à usage multiple.
  • (Facultatif) Effectuer une vérification/autorisation avec le jeton pour vous assurer que les données de la carte sont exactes et réelles.
  • Appeler le point de terminaison du coffre-fort client pour enregistrer une carte avec le jeton.

Vérifier si le jeton est émis pour une carte.

En plus du jeton de paiement, Paysafe Checkout renvoie le mode de paiement que le client a utilisé. Avant de poursuivre les étapes suivantes, vous devez vérifier que la valeur du mode de paiement est « Cartes ».

Vérifier si le client exprime effectivement l’intention d’enregistrer cette carte.

Si la valeur « true » est attribuée à « showSaveCardCheckboxes » dans la fonction de configuration de Paysafe Checkout, deux cases à cocher supplémentaires s’affichent à l’écran lorsque le client paie avec une nouvelle carte. Elles sont intitulées « Enregistrer cette carte » et « Définir comme carte par défaut ». L’objet résultat, contenant le jeton et le mode de paiement, indique si ces cases ont été cochées ou non; les deux champs booléens sont nommés « saveInstrument » et « setInstrumentAsDefault ». Si la case « Enregistrer cette carte » est cochée et que « saveInstrument » renvoie la valeur « true », cela signifie que le client a exprimé son intention d’enregistrer sa carte auprès du marchand (en réalité auprès du Coffre-fort client de Paysafe).

Vérifiez que le jeton n’a pas été créé à partir d’un autre jeton à usage multiple.

Paysafe Checkout renvoie toujours un jeton de paiement à usage unique lorsque le client a cliqué sur le bouton « Payer ». En tant que marchand, vous n’avez donc aucun moyen de savoir si le jeton a été créé à partir d’un jeton à usage multiple ou d’une carte nouvellement saisie en amont. Un point d’extrémité supplémentaire dans l’API Coffre-fort client permet de faire la distinction entre ces deux cas en renvoyant plus d’informations sur ce qui est stocké dans le jeton et sur le fait qu’il s’agit d’un jeton à usage multiple. Le point d’extrémité nécessite une clé API de serveur à serveur et accepte le jeton de paiement à usage unique dans le corps de la requête.

Pour déterminer le type de jeton, vous devez vérifier le champ de la réponse nommé « isFromMultiUseToken », qui est un booléen et indique si le jeton a été créé à partir d’un jeton à usage multiple ou si le client a saisi les détails complets de son instrument de paiement. Notez que si le champ n’existe pas du tout dans la réponse, cela signifie que le jeton de paiement à usage unique transmis au point d’extrémité résulte d’une carte nouvellement saisie.

Effectuez une vérification/autorisation avec le jeton pour vous assurer que les données de la carte sont exactes et réelles.

Appeler le point de terminaison du coffre-fort client pour enregistrer une carte avec le jeton

La dernière étape consiste à enregistrer le jeton de paiement à usage unique dans un profil, en convertissant ce jeton de paiement à usage unique en un jeton à usage multiple.

Afficher des cartes enregistrées

Si votre client a déjà créé un profil dans le coffre-fort client et que des cartes sont associées à ce profil, vous pouvez désormais demander à Paysafe Checkout d’afficher ces cartes enregistrées en transmettant un jeton de profil à usage unique à la fonction de configuration. Le jeton de profil à usage unique est un jeton temporaire représentant le profil client. L’objectif principal du jeton de profil à usage unique est d’empêcher l’exposition de l’identifiant du profil du client et du jeton de paiement à usage multiple au niveau du serveur frontal. Lorsque vous obtenez le jeton de profil à usage unique, vous devez le transmettre à la fonction de configuration de Paysafe Checkout en utilisant le paramètre « singleUseProfileToken » dans l’objet options.

Si le jeton de profil à usage unique fourni est valide et renvoie à un profil contenant des cartes, Paysafe Checkout affichera une liste de ces cartes. À partir de là, le client peut choisir la carte enregistrée avec laquelle il souhaite payer, ou bien il peut choisir de payer avec une nouvelle carte.

Payer avec une carte enregistrée

Paysafe Checkout renvoie un jeton de paiement à usage unique dans l’un ou l’autre de ces scénarios lorsque le client a saisi les détails de sa carte ou lorsqu’il paie avec une carte enregistrée. Si vous souhaitez n’accepter que les paiements effectués avec des cartes précédemment enregistrées, vous pouvez facilement vérifier si le jeton a été créé à partir d’une carte enregistrée.

  1. Assurez-vous que le jeton n’est pas créé à partir d’une carte déjà enregistrée.
  2. Si le jeton de paiement à usage unique s’avère être le résultat d’un jeton à usage multiple (c.-à-d. une carte enregistrée), vous pouvez ignorer l’autorisation et renvoyer une erreur à l’utilisateur pour qu’il n’utilise que ses cartes enregistrées pour les paiements.

Modifier une carte et supprimer une carte

La modification et la suppression de cartes sont des tâches effectuées par les clients, et vous n’êtes pas du tout impliqué dans ces flux. Deux captures d’écran montrent à quoi ressemblent les écrans de modification et de suppression :

Lorsque le client clique sur les boutons « Mettre à jour » ou «Supprimer », les modifications sont immédiatement répercutées dans le profil coffre-fort du client et dans ses cartes.

Événements de rappel

Notification pour l’une des opérations suivantes :

  • Le consommateur clique sur l’icône du crayon pour modifier une carte, coche la case « Définir comme carte par défaut », puis clique sur le bouton « Mettre à jour ».

  • Le consommateur clique sur l’icône du crayon pour modifier une carte, modifie la date d’expiration et clique sur le bouton « Mettre à jour ».

  • Le consommateur clique sur l’icône du crayon pour modifier une carte, puis modifie la date d’expiration, coche la case « Définir comme carte par défaut » et clique sur le bouton « Mettre à jour ».

  • Le consommateur clique sur l’icône de la corbeille pour supprimer une carte. Peut être reçu par la fonction eventCallback, transmise lors de la configuration.

Les attributs suivants sont disponibles sur les cartes enregistrées :

AttributActionDescription
paymentToken Jeton à usage unique représentant la carte. Notez que le jeton à usage unique est celui qui est contenu dans la réponse à la création du profil à usage unique.
action Un ensemble de changements effectués à partir de l’énumération ci-dessous
 setAsDefaultLorsqu’une carte enregistrée est définie comme carte par défaut
 expiryDateModifiedLorsque la date d’expiration d’une carte enregistrée est mise à jour
 deletedLorsqu’une carte enregistrée est supprimée
correlationId Le correlationId de la transaction

Exemple

var singleUseProfile = createSingleUseProfile();
var options = {
...
singleUseProfileToken = singleUseProfile.paymentToken
}

paysafe.checkout.setup(<API_KEY>, options, resultCallback, closeCallback, (instance, callbackParams) => { // eventCallback function
if (callbackParams.paymentToken) {
// Find the modified card from the single use profile creation response
// process the action from callbackParams.action list
}
});

Utiliser la gestion des modes de paiement avec les adresses de livraison et de facturation

Pour augmenter les chances de réussite de l’autorisation 3DS « sans friction », une adresse de facturation et de livraison (ainsi qu’un groupe d’autres champs, décritsici) doivent être transmis.

options: {
billingAddress: {
...
},
shippingAddress: {
...
}
...
}

Dans le cas des cartes enregistrées, il existe deux façons différentes de fournir l’adresse de facturation et de livraison du client :

  • Par l’intermédiaire du coffre-fort client, tout en enregistrant la carte
  • Par l’intermédiaire de la fonction de configuration de la caisse

Ces options permettent de personnaliser davantage l’utilisation des adresses :

  • defaultShippingAddressIndicator – indicateur permettant de marquer l’adresse actuelle comme adresse de livraison par défaut. Cet indicateur fait partie de l’adresse dans le coffre-fort client
  • useAsShippingAddress – pour indiquer si l’adresse de facturation fournie doit également être utilisée comme adresse de livraison.

Matrice de décision pour les adresses de facturation et de livraison

Pour augmenter les chances d’une autorisation « sans friction » et toujours fournir les adresses de facturation et de livraison, Paysafe Checkout prend en charge les scénarios suivants :

IdL’adresse de facturation est-elle indiquée dans le coffre-fort client (lorsque la carte est enregistrée)?defaultShippingAddressIndicatorL’adresse de facturation est-elle transmise lors de la configuration de la caisse?useAsShippingAddressL’adresse de livraison est-elle transmise lors de la configuration de la caisse?Quelle adresse de facturation est envoyée à l’API 3DS?Quelle adresse de livraison est envoyée à l’API 3DS?
1non-non-nonaucunaucun
2ouifalsenon-nonà partir du coffre-fort clientaucun
3ouifalsenon-ouià partir du coffre-fort clientL’adresse de livraison fournie lors de la configuration
4ouifalseouifalsenonà partir du coffre-fort clientaucun
5ouifalseouifalseouià partir du coffre-fort clientL’adresse de livraison fournie lors de la configuration
6ouifalseouitruenonà partir du coffre-fort clientL’adresse de facturation fournie lors de la configuration
7ouifalseouitrueouiDéclenchement du code d’erreur 9186 : BillingAddress. useAsShippingAddress et shippingAddress ne peuvent pas être transmis en même temps.Déclenchement du code d’erreur 9186 : BillingAddress. useAsShippingAddress et shippingAddress ne peuvent pas être transmis en même temps.
8ouitruenon-nonà partir du coffre-fort clientà partir du coffre-fort client
9ouitruenon-ouià partir du coffre-fort clientL’adresse de livraison fournie lors de la configuration
10ouitrueouifalsenonà partir du coffre-fort clientà partir du coffre-fort client
11ouitrueouifalseouià partir du coffre-fort clientL’adresse de livraison fournie lors de la configuration
12ouitrueouitruenonà partir du coffre-fort clientL’adresse de facturation fournie lors de la configuration
13ouitrueouitrueouiDéclenchement du code d’erreur 9186 : BillingAddress. useAsShippingAddress et shippingAddress ne peuvent pas être transmis en même temps.Déclenchement du code d’erreur 9186 : BillingAddress. useAsShippingAddress et shippingAddress ne peuvent pas être transmis en même temps.
14non-non-ouiaucunL’adresse de livraison fournie lors de la configuration
15non-ouifalsenonL’adresse de facturation fournie lors de la configurationaucun
15non-ouifalseouiL’adresse de facturation fournie lors de la configurationL’adresse de livraison fournie lors de la configuration
17non-ouitrueaucunL’adresse de facturation fournie lors de la configurationL’adresse de facturation fournie lors de la configuration
18non-ouitrueouiDéclenchement du code d’erreur 9186 : BillingAddress. useAsShippingAddress et shippingAddress ne peuvent pas être transmis en même temps.Déclenchement du code d’erreur 9186 : BillingAddress. useAsShippingAddress et shippingAddress ne peuvent pas être transmis en même temps.