Guide d'intégration (dépréciée)
Les paramètres d'appel au service PCI/Charge/CreatePayment (déprécié) dépendent du protocole d'authentification utilisé ainsi que du résultat de l'authentification.
Cette section décrit les paramètres à transmettre pour chaque protocole supporté.
Authentification 3D Secure v2
Contenu de la requête :
NIVEAU | NOM | DESCRIPTION | REQUIS |
---|---|---|---|
1 | amount | Montant du paiement dans la plus petite unité de la devise. Doit correspondre au montant de l'authentification. | Oui |
1 | currency | Code (ISO 4217 alpha3) de la devise du paiement. Ex: "EUR" pour l'euro. | Oui |
1 | orderId | Référence de la commande. | Non |
1 | formAction | Permet d'indiquer si vous souhaitez enregistrer la carte. Valeurs possibles :
| Non |
1 | customer | Objet contenant les données de l'acheteur. | Non |
2 | Adresse e-mail de l'acheteur. Obligatoire lorsque formAction est valorisé à REGISTER_PAY. | Voir description | |
1 | paymentForms | Objet contenant les données de la carte. | Oui |
2 | paymentMethodType | Type du moyen de paiement. Doit être valorisé à CARD. | Oui |
2 | pan | Numéro de carte. | Oui |
2 | expiryMonth | Mois d'expiration de la carte. Ex: 3 ou 03 | Oui |
2 | expiryYear | Année d'expiration de la carte. Ex: 27 ou 2027 | Oui |
2 | securityCode | Code de sécurité de la carte (CVV ou 4DBC). | Non |
1 | authenticationDetails | Objet contenant les données d'authentification du porteur. | Oui |
2 | protocol | Objet décrivant le protocole d'authentification utilisé. | Oui |
3 | name | Nom du protocole d'authentification. Doit être valorisé à THREEDS. | Oui |
3 | version | Version du protocole d'authentification. Doit être valorisé à 2, 2.1.0ou à 2.2.0. | Oui |
3 | directoryServer | Nom du Directory Server (DS) utilisé lors de
l'authentification.
Valeurs possibles :
| Oui |
3 | challengePreference | Préférence 3DS transmise au DS lors de l'authentification du porteur. Obligatoire si status est valorisé à SUCCESS ou ATTEMPT. | Voir description |
2 | status | Statut de l'authentification.
Valeurs possibles :
| Oui |
2 | authenticationType | Type d'authentification. Obligatoire si status est valorisé à SUCCESS ou ATTEMPT. Valeurs possibles :
| Voir description |
2 | authenticationValue | Référence générée par l'émetteur qui permet de valider
l'intégrité des données de la transaction. En fonction du DS,
correspond soit au CAVV pour VISA, soit à l'AAV pour Mastercard, ou
à l'AEVV pour AMEX Safekey. Obligatoire lorsque status est valorisé à SUCCESS ou ATTEMPT. Exemple : +kAr/o8S0DxgGYkz7QQHZCw8V5k= | Voir description |
2 | commerceIndicator | Indicateur de commerce électronique (ECI). Valeur
retournée par l'ACS après l'authentification. La valeur de l'ECI
dépend du statut de l’authentification et du type de carte. Obligatoire lorsque status est valorisé à SUCCESS ou ATTEMPT. Ex: 05 | Voir description |
2 | dsTransID | Identifiant unique de la transaction généré par le DS 3DS2. Obligatoire lorsque status est valorisé à SUCCESS ou ATTEMPT. Exemple : d6706a0d-c48d-4cf4-a1d2-d4a401a3143e | Voir description |
2 | exemption | Exemption appliquée. Obligatoire quand authenticationType est valorisé à FRICTIONLESS. Voir chapitre Motif de débrayage et exemptions. | Voir description |
2 | requestorName | Nom du marchand utilisé lors de l'authentification du porteur. Obligatoire si directoryServer est valorisé à CB. | Voir description |
2 | acsTransID | Identifiant de transaction unique généré par l'ACS. Obligatoire lorsque status est valorisé à SUCCESS ou ATTEMPT et que directoryServer est valorisé à CB. Ex: d727ebfe-de4c-4682-85fa-e60ca00a9cff | Voir description |
2 | authValueAlgorithm | Algorithme de vérification de l’authentification du porteur.
Obligatoire lorsque status est valorisé à SUCCESS ou ATTEMPT et que directoryServer est valorisé à CB. Valeurs possibles :
| Voir description |
2 | dsScore | Scoring d'authentification retourné par le DS CB. Obligatoire lorsque status est valorisé à SUCCESS ou ATTEMPT et que directoryServer est valorisé à CB. Exemple : 31 | Voir description |
2 | challengeCancelationIndicator | Indicateur d'annulation de challenge reçu dans le message RReq. Valeur retournée par le DS en cas d'annulation de l'authentification. Exemple : 01 | Non |
2 | transactionStatusReason | Raison de l'échec d'authentification retournée par le DS en cas d'échec d'authentification. Exemple : 82 | Non |
Retrouvez la description des champs dans notre playground.
Données de test
pan : | 4970110000001029 | directoryServer : | CB |
expiryMonth / expiryYear : | Au choix | authValueAlgorithm : | 2 |
securityCode : | Au choix | authenticationValue : | +kAr/o8S0DxgGYkz7QQHZCw8V5k= |
challengePreference : | NO_CHALLENGE_REQUESTED | dsTransID : | d6706a0d-c48d-4cf4-a1d2-d4a401a3143e |
authenticationType : | FRICTIONLESS | acsTransID : | d727ebfe-de4c-4682-85fa-e60ca00a9cff |
commerceIndicator : | 05 | exemption : | LOW_VALUE |
requestorName : | Au choix | dsScore : | 31 |
Le résultat du paiement dépend de la valeur de status utilisée.
Exemple de requête
{ "amount": "1230", "currency": "EUR", "paymentForms": [ { "paymentMethodType": "CARD", "pan": "4970110000001029", "expiryMonth": "09", "expiryYear": "27", "securityCode": "123" } ], "customer": { "email": "sample@example.com" }, "authenticationDetails":{ "protocol":{ "name":"THREEDS", "version":"2", "directoryServer":"CB", "challengePreference":"NO_CHALLENGE_REQUESTED" }, "status":"SUCCESS", "authenticationType":"FRICTIONLESS", "commerceIndicator":"05", "authenticationValue":"+kAr/o8S0DxgGYkz7QQHZCw8V5k=", "dsTransID":"d6706a0d-c48d-4cf4-a1d2-d4a401a3143e", "acsTransID":"d727ebfe-de4c-4682-85fa-e60ca00a9cff", "authValueAlgorithm":"2", "dsScore":"31", "exemption":"LOW_VALUE", "requestorName":"DEMO STORE" } }
Authentification débrayée
Le service permet de créer un paiement lorsque l'authentification du porteur a été volontairement désactivée, et ce quel que soit le protocole d'authentification.
Dans ce cas, la raison de cette décision doit être précisée en utilisant le champ exemption (Voir chapitre Motif de débrayage et exemptions).
Contenu de la requête :
NIVEAU | NOM | DESCRIPTION | REQUIS |
---|---|---|---|
1 | amount | Montant du paiement dans la plus petite unité de la devise. Doit correspondre au montant de l'authentification. | Oui |
1 | currency | Code (ISO 4217 alpha3) de la devise du paiement. Ex: "EUR" pour l'euro. | Oui |
1 | orderId | Référence de la commande. | Non |
1 | formAction | Permet d'indiquer si vous souhaitez enregistrer la carte. Valeurs possibles :
| Non |
1 | customer | Objet contenant les données de l'acheteur. | Non |
2 | Adresse e-mail de l'acheteur. Obligatoire lorsque formAction est valorisé à REGISTER_PAY. | Voir description | |
1 | paymentForms | Objet contenant les données de la carte. | Oui |
2 | paymentMethodType | Type du moyen de paiement. Doit être valorisé à CARD. | Oui |
2 | pan | Numéro de carte. | Oui |
2 | expiryMonth | Mois d'expiration de la carte. Ex: 3 ou 03 | Oui |
2 | expiryYear | Année d'expiration de la carte. Ex: 27 ou 2027 | Oui |
2 | securityCode | Code de sécurité de la carte (CVV ou 4DBC). | Non |
1 | authenticationDetails | Objet contenant les données d'authentification du porteur. | Oui |
2 | status | Statut de l'authentification. Doit être valorisé à DISABLED. | Oui |
2 | exemption | Motif du débrayage. Voir chapitre Motif de débrayage et exemptions. | Oui |
Exemple de requête
{
"amount": "1230",
"currency": "EUR",
"paymentForms": [
{
"paymentMethodType": "CARD",
"pan": "4970100000000022",
"expiryMonth": "09",
"expiryYear": "27",
"securityCode": "123"
}
],
"customer": {
"email": "sample@example.com"
},
"authenticationDetails":{
"status":"DISABLED",
"exemption":"OTHER_EXEMPTION"
}
}