En Octobre 2022, l'ensemble des transactions seront authentifiées uniquement avec le 3DSV2. L'authentification 3DSV1 ne sera plus disponible.

Cette section est une synthèse des évolutions permettant à un marchand de bénéficier du 3DSV2 à la place du 3DSV1.

Chez Axepta, cela signifie ajouter le paramètre 'msgVer=2.0' pour les paiements classiques. Les autres cas d'usage sont décrits dans la section Fonctionnalités de paiement


Etes-vous concernés ?

Pour vérifier la version du protocole 3-D Secure utilisée par votre boutique en ligne, veuillez vous référer à la rubrique Identifier votre version du protocole 3-D Secure





Introduction

L'utilisation de l'authentifcation 3D Secure permet de protéger le marchand contre le motif d'impayés "contestation du porteur".

3DSV2 fournit un mécanisme permettant la réalisation d'authentifications fortes en conformité avec la DSP2.

3DSV2 offre la possibilité de faire bénéficier les acheteurs d'un parcours « frictionless », dans ce cas la banque émettrice peut approuver une transaction sans action explicite du porteur de la carte (authentification passive).

Par défaut, les requêtes de paiement sont envoyées en ‘noPreference’, le marchand ne précise pas de préférence pour le mode d'authentification (SCA ou authentification passive).


Pour plus de détails :


Périmètre

Toutes les transactions CB (Carte Bancaire), Visa, Mastercard et AMEX.


Évoluer vers le 3DSV2 - Avec les CMS


Retrouvez toutes les informations dans la section : Obtenir gratuitement la mise à jour de son plugin en 3DSecure 2.0


Évoluer vers le 3DSV2 - En intégration directe


Synthèse


L'évolution vers le 3DSV2 nécessite la gestion :
  • De nouveaux éléments dans les requêtes et les réponses
    • Paramètre 'msgVer=2.0'
    • Nouveaux paramètres NVP (Name-Value-Pairs) et objets JSON – pour les cas d’usages / fonctionnalités de paiement spécifiques
    • Données additionnelles liées à l’authentification
  • Des réponses GET & POST envoyées sur URLSuccess / URL Failure / URL Notify



Si vous proposez du paiement one-shot, l'évolution vers le 3DSV2 consiste à :

  • Ajouter le paramètre "msgVer=2.0" dans vos requêtes de paiement
  • Gérer les réponses envoyées en POST & GET


Présentation détaillée

Cas d'usages

3DSV1

3DSV2

Exemples : Objets JSON à ajouter dans les requêtes de paiements ECOM

Paiement classique / One-Shot

Intégration existante

Ajouter "MsgVer=2.0” - Créer une requête de paiement (CIT)


D'autres données peuvent être indiquées dans la requête de paiement pour favoriser les paiements 'frictionless'.

Pour plus de détails


Format des réponses

Paiements carte

Méthode GET pour l’URLFailure / URLSuccess / URLNotify

Méthode POST pour l’URLFailure / URLSuccess / URLNotify

Méthode GET pour l’URLFailure / URLSuccess / URLNotify en cas de fallback 3DSV1 jusqu’à Mars 2022


Format des réponses

Moyens de paiement alternatifs

Méthode GET pour l’URLFailure / URLSuccess / URLNotify

Méthode GET pour l’URLFailure / URLSuccess / URLNotify


Données cartes

PCNr

CCExpiry

CCCVC

CCBrand

Objet JSON Card

Ou Objet JSON Card + PCNR / CCExpiry / CCBrand en cas de fallback 3DSV1


Cas d’usage

One-click

Paiement initial

/

Utiliser "MsgVer=2.0”, l’objet JSON credentialOnFile et threeDSPolicy

Paiement en 1 clic (One-Click)

Objet JSON credentialOnFile

{
    "type": {
        "unscheduled": "CIT"
    },
    "initialPayment": true,
  	"useCase": "cof"   
}



Objet JSON threeDSPolicy

{
	"challengePreference": "mandateChallenge"
}

One-click

Paiements suivants

PCNr

CCExpiry

CCCVC

CCBrand

Utiliser "MsgVer=2.0”, l’objet JSON Card et credentialOnFile

Paiement en 1 clic (One-Click)

Objet JSON credentialOnFile

{
    "type": {
        "unscheduled": "CIT"
    },
    "initialPayment": false,
  	"useCase": "ucof"   
}

Abonnement à durée et montant fixes

Paiement initial

Utilisation du paramètre "RTF=I" 

Infos carte : PCNr, CCExpiry, CCBrand…

Server-to-Server

Utiliser "MsgVer=2.0”, l’objet JSON credentialOnFile et threeDSPolicy

L’objet  JSON Card et le schemeReferenceID sont envoyés dans la réponse


L'objet Card présent dans la réponse doit être décrypté et stocké.

L'objet Card présent dans les requêtes contient moins de paramètres que l'objet Card reçu dans la réponse.


Batch

L'implémentation Batch reste inchangée


Pour plus de détails

Objet JSON credentialOnFile

{
    "type": {
        "recurring": {
            "recurringFrequency": 30,
            "recurringStartDate": "2019-09-14",
            "recurringExpiryDate": "2020-09-14"
        }
    },
    "initialPayment": true,
    "useCase": "fixed" 
}


Objet JSON threeDSPolicy

{
	"challengePreference": "mandateChallenge"
}

Abonnement à durée et montant fixes

Échéances suivantes

Utilisation du paramètre "RTF=R" 

Infos carte : PCNr, CCExpiry, CCBrand…

Server-to-Server

Utiliser "MsgVer=2.0”, l’objet JSON credentialOnFile, l'objet JSON Card et le schemeReferenceID.


L'objet Card présent dans la réponse doit être décrypté et stocké.

L'objet Card présent dans les requêtes contient moins de paramètres que l'objet Card reçu dans la réponse.


Batch

L'implémentation Batch reste inchangée


Pour plus de détails

Objet JSON credentialOnFile

{
    "type": {
        "recurring": {
            "recurringFrequency": 30,
            "recurringStartDate": "2019-09-14",
            "recurringExpiryDate": "2020-09-14"
        }
    },
    "initialPayment": false,
    "useCase": "fixed" 
}

Abonnement à durée et montant variables

Paiement initial

Utilisation du paramètre "RTF=E" 

Infos carte : PCNr, CCExpiry, CCBrand…

Server-to-Server

Utiliser "MsgVer=2.0”, l’objet JSON credentialOnFile et threeDSPolicy

L’objet  JSON Card et le schemeReferenceID sont envoyés dans la réponse


L'objet Card présent dans la réponse doit être décrypté et stocké.

L'objet Card présent dans les requêtes contient moins de paramètres que l'objet Card reçu dans la réponse.


Batch

L'implémentation Batch reste inchangée


Pour plus de détails

Objet JSON credentialOnFile

{
    "type": {
        "unscheduled": "CIT"
    },
    "initialPayment": true,
  	"useCase": "ucof"   
}

Objet JSON threeDSPolicy

{
	"challengePreference": "mandateChallenge"
}

Abonnement à durée et montant variables

Échéances suivantes

Utilisation du paramètre "RTF=M" 

Infos carte : PCNr, CCExpiry, CCBrand…

Server-to-Server

Utiliser "MsgVer=2.0”, l’objet JSON credentialOnFile, l'objet JSON Card et le schemeReferenceID.


L'objet Card présent dans la réponse doit être décrypté et stocké.

L'objet Card présent dans les requêtes contient moins de paramètres que l'objet Card reçu dans la réponse.


Batch

L'implémentation Batch reste inchangée



Pour plus de détails

Objet JSON credentialOnFile

{
    "type": {
        "unscheduled": "MIT"
    },
    "initialPayment": false,
  	"useCase": "ucof"   
}

Les fonctionnalités de paiement sont détaillés dans la section : Fonctionnalités de paiement


Tester votre intégration en 3DSV2


Pour tester votre intégration en 3DSV2 vous pouvez utiliser notre Environnement de Test - OLD.


Les paramètres clés du 3DSV2


Les paramètres clés utilisés en fonction de vos cas d'usages sont :

Paramètre

Type

Détails

Requête

Réponse

msgVer

Paramètre

Envoi de requête de paiement 3DSV2

X


threeDSPolicy

Objet JSON

Piloter la demande d’authentification (forcer une authentification, demander une exemption)

X


browserInfo

Objet JSON

A indiquer dans le cadre de l’utilisation de paynow.aspx (one-click)

X


credentialOnFile

Objet JSON

Permet d’indiquer si une carte sera réutilisée par le marchand

X


billToCustomer

Objet JSON

Client facturé pour les achats

X


shipToCustomer

Objet JSON

Client livré

X


billingAddress

Objet JSON

Adresse de facturation

X


shippingAddress

Objet JSON

Adresse de livraison

X


Card

Objet JSON

Contient les données carte telles que le PCNr, la marque de la carte, la date d’expiration …

X

X

schemeReferenceId

Paramètre

Donnée générée par la banque émettrice ou le scheme, utilisée dans les cas de paiement récurrents

X

X

resultsResponse

Objet JSON

Informations complémentaires fournies en cas d’authentification


X

threeDSData

Objet JSON

Données d’authentification


X


  • No labels