Enregistrer des cartes et des adresses
Vous pouvez utiliser Payments Checkout pour stocker les informations relatives à la carte de crédit et à l'adresse de vos clients, que vous pourrez ensuite utiliser pour leurs futures transactions. Deux étapes sont nécessaires :
- Créez un profil pour votre client.
- En utilisant customerId dans la réponse de Payments Checkout (ou l'ID, si vous utilisez un appel API), créez un jeton de client à usage unique. Lorsque vous utilisez ensuite ce jeton de client à usage unique en tant que paramètre singleUseCustomerToken dans Payments Checkout, toutes les informations relatives à la carte et à l'adresse associées au client s'affichent sur votre page de paiement.
Le client peut enregister une carte en cliquant sur « enregister ma carte pour des transactions futures ». Toutefois, cette carte ne sera enregistrée que si le client effectue un paiement au cours de la même session.
Créer un profil client
Pour utiliser cette fonctionnalité, le marchand doit d'abord créer un profil client auprès de Paysafe. Il existe deux façons de créer un profil client :
- Créer le profil dans une requête Payments Checkout.
- Créer le profil à l'aide de la requête API de création d'un client.
Paysafe vous recommande d'utiliser la requête Payments Checkout pour créer un profil client si vous intégrez Payments Checkout de Paysafe.
Créer le profil dans une requête Payments Checkout.
Lorsque vous créez un "payment handle" à l'aide de Payments Checkout, vous renvoyez le résultatCallback , qui contient le paramètre customerOperation .
Si le client a sélectionné l'option saveCard lors du passage à la caisse, le paramètre customerOperation renvoyé dans le resultCallback aura la valeur ADD.
L'option saveCard est présentée par défaut par Paysafe dans la caisse.
Dans le cas où customerOperation a la valeur de ADD, le marchand doit inclure un paramètre supplémentaire avec le reste des données utiles de la requête lors du traitement d'une requête de paiement. – soit le paramètre merchantCustomerId ou customerId.
Si le marchand n’a jamais créé d’enntité client pour ce client, il devra inclure CustomerId avec une valeur qu’il a stocké pour ce client.
Request Body :
{
...
"merchantCustomerId": "user1"
}
Si la demande de paiement est acceptée avec l’un ou l’autre de ces paramètres ajoutés, deux nouveaux paramètres sont alors renvoyés dans la réponse :
- customerId – un profil client
- multiUsePaymentHandleToken – un "payment handle" à usage multiple
Response Body :
{
...
"customerId": "ccb24e28-6e38-47ce-8815-94706c5b608c",
"multiUsePaymentHandleToken": "uyfiuewyrw273uw"
}
Si le marchand a fourni ses propres informations sur le client pour le paramètre merchantCustomerId (et non un identifiant unique provenant d’une demande de création de client), il doit alors stocker la valeur du paramètre customerId dans la réponse afin de l’utiliser comme valeur customer_id dans les requêtes relatives au client qui l’exigent, comme : la mise à jour d’un client ou l’ajout d’une adresse pour un client.
Le multiUsePaymentHandleToken renvoyé dans la réponse à cette demande de paiement serait l’équivalent du paymentHandleToken renvoyé dans la réponse lorsque vous créez un "payment handle" pour un client, et est utilisé aux mêmes fins.
Créer un profil à l’aide de l’API client
La deuxième façon de créer un profil client est d’utiliser la requête API pour créer un cilent. Le marchand doit ensuite stocker l’identifiant unique fourni dans la réponse de Paysafe en tant que customer_id pour cet utilisateur dans les requêtes liées au client qui le nécessitent.
Response Body :
{
...
"id": "ccb24e28-6e38-47ce-8815-94706c5b608c"
}
L’une ou l’autre de ces méthodes vous permet de créer un profil client pour un utilisateur; assurez-vous simplement de sauvegarder l’identifiant du client correspondant dans votre base de données pour cet utilisateur.
Créer un jeton client à usage unique
Lors du passage à la caisse, les cartes et les adresses existantes d’un utilisateur peuvent s’afficher. Pour utiliser cette fonctionnalité, le marchand doit utiliser l’identifiant du client et faire un appel API pour créer un jeton client à usage unique. Le jeton client à usage unique dans la réponse doit alors être fourni comme valeur pour singleUseCustomerToken dans les options de passage à la caisse lors de l’invocation du passage à la caisse. Dans ce cas, lorsque le passage à la caisse est chargé, l’utilisateur peut voir les données de paiement qu’il a enregistrées.
Il y a deux étapes à suivre :
- Créer un jeton client à usage unique
Effectuer un appel API pour créer un jeton client à usage unique, en utilisant l’ID client de cet utilisateur. Ceci génère un jeton client à usage unique – le champ singleUseCustomerToken dans la réponse, qui est valide pendant 15 minutes. - Utilisez le champ singleUseCustomerToken de la réponse à l’étape 1 ci-dessus et fournissez cette valeur pour le paramètre singleUseCustomerToken dans les options de passage à la caisse.
Request Body :
{
...
"singleUseCustomerToken": "SPFAB1cA5iwdu48H"
}
<html><head><script src="https://hosted.test.paysafe.com/checkout/v2/paysafe.checkout.min.js"></script></head><body><button onclick="checkout()"> Payez 25 $ </button></body><script>
function checkout() {
paysafe.checkout.setup("Clé API", {
"devise": "USD",
"montant": 10000,
"singleUseCustomerToken": "SPFAB1cA5iwdu48H",
"locale": "en_US",
...
}
}
</script></html>
Dans le cas où un identifiant existe déjà pour un client, le paramètre merchantCustomerId ne doit pas être transmis dans la demande de paiement.
Enregistrement de cartes pour dépôts dans Play+ (Sightline)
Remarques supplémentaires sur la fonction d’enregistrement des cartes pour dépôt dans Play+ :
- Le client peut enregistrer une carte dans le flux de dépôt Play+ (chargement de fonds) en cliquant sur « Enregistrer ma carte pour des transactions futures ». Cependant, cette carte ne sera enregistrée que si le client effectue un paiement en utilisant le solde du portefeuille Play+ après le dépôt dans la même session.
- Si le client effectue plusieurs dépôts en utilisant plusieurs cartes et qu’il effectue ensuite un paiement, c’est la dernière carte utilisée pour effectuer le dépôt qui sera enregistrée.
- Lorsqu’un client effectue un dépôt Play+, mais utilise un mode de paiement différent pour effectuer le paiement, la carte utilisée pour effectuer le dépôt ne sera pas enregistrée.
- La fonction d’enregistrement de la carte est offerte dans Play+ Dépôt et Paiement par carte. Si le client enregistre une carte dans l’écran de dépôt Play+, cela se reflétera dans l’écran de paiement par carte et vice-versa.