Cinématique
Initialisation de la session de paiement
Ce cas d’utilisation nécessite la création d’un formToken via un appel au Web
Service Charge/CreateToken .
Méthode | POST |
Point d’entrée | https://api.lyra.com/ api-payment/V4/Charge/CreateToken |
Aucun champ spécifique n'est nécessaire pour bénéficier de la protection
3D Secure .
Dans le cadre de l'application de la DSP2, une authentification forte est
requise lors de l'enregistrement d'une carte.
Le champ strongAuthentication est
ignoré et une demande d'authentification forte est réalisée automatiquement.
Analyse de la réponse
A la fin de l'opération, la plateforme retourne un objet Payment à l'URL de
notification du site marchand et au client JavaScript.
Voici la liste des attributs décrivant, par cas d'usage, le résultat de
l'authentification du porteur :
Cas d'usage | Champs retournés |
Transaction avec authentification forte réussie | - authenticationResponse.value.status = SUCCESS : Authentification réussie.
- authenticationResponse.value.authenticationType = CHALLENGE (Valeur retournée en
3DS1 et 3DS2).
- authenticationResponse.value.commerceIndicator = 5 (Visa ou AMEX) ou 02
(Mastercard).
- authenticationResponse.value.extension.authenticationType =
THREEDS_V1 ou THREEDS_V2 .
- transactionDetails.liabilityShift = YES : Le
paiement est garanti.
- transactions.effectiveStrongAuthentication = ENABLED : Le porteur s'est
authentifié avec succès.
|
Transaction avec authentification frictionless
réussie, le marchand dispose de l'option "Frictionless 3DS2" et a
demandé une authentification sans interaction du porteur. | authenticationResponse.value.status = SUCCESS : Authentification réussie. authenticationResponse.value.authenticationType =
FRICTIONLESS . - authenticationResponse.value.commerceIndicator = 5 (Visa ou AMEX) ou 02 (Mastercard).
- authenticationResponse.value.extension.authenticationType
= THREEDS_V2 .
transactionDetails.liabilityShift = NO : Le
paiement n'est pas garanti. transactions.effectiveStrongAuthentication = ENABLED : Le porteur s'est
authentifié avec succès.
|
Transaction avec authentification frictionless
réussie, le marchand n'a pas demandé une authentification sans
interaction du porteur. | authenticationResponse.value.status = SUCCESS : Authentification réussie. authenticationResponse.value.authenticationType =
FRICTIONLESS . - authenticationResponse.value.commerceIndicator = 5 (Visa ou AMEX) ou 02 (Mastercard).
- authenticationResponse.value.extension.authenticationType
= THREEDS_V2 .
transactionDetails.liabilityShift = YES :
Le paiement est garanti. - transactions.effectiveStrongAuthentication = ENABLED : Le porteur s'est
authentifié avec succès.
|
Transaction avec authentification 3D Secure en
échec | authenticationResponse.value.status = FAILED : Erreur d’authentification. authenticationResponse.value.authenticationType =
CHALLENGE . - authenticationResponse.value.commerceIndicator = null
- authenticationResponse.value.extension.authenticationType
= THREEDS_V1 ou THREEDS_V2 .
- authenticationResponse.value.reason.code = CARD_AUTHENTICATION_FAILED :
Refus de l’authentification par l’émetteur.
transactionDetails.liabilityShift = null : Le paiement n'est pas
garanti. transactions.effectiveStrongAuthentication = DISABLED :
l'authentification du porteur est en échec.
|
Carte non enrôlée | authenticationResponse.value.status = NOT_ENROLLED : Porteur non enrôlé. authenticationResponse.value.authenticationType = null - authenticationResponse.value.commerceIndicator = null
- authenticationResponse.value.extension.authenticationType
= THREEDS_V1 .
transactionDetails.liabilityShift = NO : Le paiement n'est
pas garanti. - transactions.effectiveStrongAuthentication = DISABLED : l'authentification
du porteur est en échec.
|