PCI/Authentication/CreateSession (PCI)
Intégration mode simple (conseillé)
Documentation de référence : Service d'authentification du porteur (mode simple)
Paramètres d'entrée
amount
Montant de la transaction à authentifier. Sa valeur doit être un entier positif, dans sa plus petite unité monétaire.
Exemple : 30050 pour 300,50 EUR.
Format
currency
Devise de la transaction à authentifier. Code alphabétique en majuscule selon la norme ISO 4217 (ex: "EUR" pour l'euro ).
Format
transactionCategory
Catégorie de la transaction. Sera généralement valorisé avec PAYMENT pour un paiement classique.
Valeurs possibles
Valeurs | Description |
---|---|
ADD_CARD | Ajout d'une carte dans un wallet. |
PAYMENT | Paiement classique (inclut les paiements récurrents ou en n-fois). |
Format
productType
Type de produit concerné par la transaction.
Valeurs possibles
valeurs | Description |
---|---|
ACCOUNT_FUNDING | Versement sur un compte |
CHECK_ACCEPTANCE | Vérification d'acceptation |
GOODS_OR_SERVICE_PURCHASE | Achat de bien ou de service. Valeur utilisée si le champ n'est pas transmis dans la requête. |
PREPAID_ACTIVATION_AND_LOAD | Activation et charge d'une carte prépayée |
QUASI_CASH_TRANSACTION | Transactions en quasi-espèces (ex: chèque vacances, billet de loterie, etc.) |
Format
merchant.name
Nom du marchand.
Format
merchant.mid
Numéro de contrat commerçant.
Format
merchant.tid
Terminal ID. Identifiant du point de vente défini sur le contrat d'acceptation.
Ce champ est utilisé uniquement en Colombie afin de choisir entre REDEBAN et CREDIBANCO.
Format
merchant.mcc
Code spécifique au DS émetteur décrivant le type d'activité, de produit ou de service du marchand. (Merchant Category Code = MCC)
Format
networkPreference
Chemin: paymentForm.networkPreference
Nom du réseau préférentiel préconisé par le marchand.
Valeurs possibles
Valeur | Description |
---|---|
AMEX | Réseau American Express (Safekey) |
CB | Réseau Carte Bancaire |
MASTERCARD | Réseau Mastercard |
VISA | Réseau Visa |
ELO | Réseau Elo (Brésil) |
DINERS | Réseau Diners |
DISCOVER | Réseau Discover |
OSB | Réseau OSB |
Format
accountType
Chemin: paymentForm.accountType
Type de carte.Ce champ est obligatoire au brésil
Valeurs possibles
valeurs | Description |
---|---|
DEBIT | Carte de débit |
CREDIT | Carte de crédit |
Format
paymentForm.pan
Le PAN (Primary Account Number) est le numéro principal de la carte généralement composé de 16 chiffres).
Format
expiryMonth
Chemin: paymentForm.expiryMonth
Mois d’expiration sur 2 chiffres. Exemple : "09" pour septembre.
Format
expiryYear
Chemin: paymentForm.expiryYear
Année d’expiration sur 2 chiffres. Exemple : "25" pour 2025.
Format
cardHolderName
Chemin: paymentForm.cardHolderName
Nom et prénom du porteur de la carte (recommandé)
Format
installmentNumber
Chemin: paymentForm.installmentNumber
Nombre d'échéances.
Format
customer.reference
Identifiant de l’acheteur chez le marchand.
Format
customer.email
Adresse e-mail de l'acheteur.
- Spécifications sur la structure de l'e-mail : RFC-2822
Format
address
Chemin: customer.billingDetails.address
Adresse de facturation.
Attention : Les caractères > et < ne sont pas autorisés.
Format
address2
Chemin: customer.billingDetails.address2
Informations complémentaires sur l'adresse de facturation.
Attention : Les caractères > et < ne sont pas autorisés.
Format
category
Chemin: customer.billingDetails.category
Type de client.
Format
Valeurs possibles
valeurs | Description |
---|---|
PRIVATE | Client de type Particulier |
COMPANY | Client de type Société |
cellPhoneNumber
Chemin: customer.billingDetails.cellPhoneNumber
Téléphone portable de l'acheteur.
Accepte tous les formats:
Exemples:
- 0623456789
- +33623456789
- 0033623456789
- (+34) 824 65 43 21
- 87 77 12 34
- Pour MB WAY:
Seul, le format international est accepté.
Par exemple, +351 est l'indicatif international du Portugal. Le numéro portugais 21 031 27 00 devient +351210312700.
Si le champ ne respecte pas ce format ou est absent, une nouvelle saisie sera proposée à l'acheteur.
Format
city
Chemin: customer.billingDetails.city
Ville de facturation.
Format
country
Chemin: customer.billingDetails.country
Pays de l'acheteur (en majuscule, suivant la norme ISO 3166-1 alpha-2).
Format
Valeurs possibles
Exemples de valeurs possibles :
Pays | Code |
---|---|
AUTRICHE | AT |
BRESIL | BR |
CORSE | FR |
COTE D'IVOIRE | CI |
FRANCE | FR |
GUADELOUPE | GP |
INDE | IN |
MARTINIQUE | MQ |
NOUVELLE-CALÉDONIE | NC |
ST-PIERRE-ET-MIQUELON | PM |
POLYNESIE FRANCAISE | PF |
district
Chemin: customer.billingDetails.district
Quartier de l'adresse de facturation.
Format
firstName
Chemin: customer.billingDetails.firstName
Prénom de l'acheteur.
Format
identityCode
Chemin: customer.billingDetails.identityCode
Identifiant national. Permet d'identifier de façon unique chaque citoyen au sein d'un pays.
Format
identityType
Chemin: customer.billingDetails.identityType
Type de pièce d'identité.
Format
language
Chemin: customer.billingDetails.language
Code de la langue de l'acheteur, selon la norme norme ISO 639-1.
Permet de spécifier la langue dans laquelle sont envoyés les e-mails de confirmation de paiement.
Format
Valeurs possibles
Exemples de valeurs possibles:
Langue | Code |
---|---|
Allemand (Allemagne) | DE |
Anglais (Royaume Uni) | EN |
Anglais (Etats-Unis ) | EN |
Chinois (Traditionnel) | ZH |
Espagnol (Espagne) | ES |
Espagnol (Chili) | ES |
Français (France) | FR |
Italien (Italie) | IT |
Japonais (Japon) | JP |
Néerlandais (Pays-Bas) | NL |
Polonais (Pologne) | PL |
Portugais (Brésil) | PT |
Portugais (Portugal) | PT |
Russe (Russie) | RU |
lastName
Chemin: customer.billingDetails.lastName
Nom de l'acheteur.
Format
legalName
Chemin: customer.billingDetails.legalName
Raison sociale.
Format
phoneNumber
Chemin: customer.billingDetails.phoneNumber
Numéro de téléphone de l'acheteur.
Accepte tous les formats:
Exemples:
- 0123456789
- +33123456789
- 0033123456789
- (00.571) 638.14.00
- 40 41 42 42
Format
state
Chemin: customer.billingDetails.state
Région (état) de l'adresse de facturation. Il est recommandé mais non obligatoire de passer la valeur en ISO-3166-2.
Format
streetNumber
Chemin: customer.billingDetails.streetNumber
Numéro de rue de l'adresse de facturation.
Caractères acceptés:
- Caractères alphabétiques (de "A" à "Z" et de "a" à "z")
- Espace
Format
title
Chemin: customer.billingDetails.title
Civilité de l’acheteur.
Exemples:
- Mr
- M.
- Mme
Format
zipCode
Chemin: customer.billingDetails.zipCode
Code postal de l'adresse de facturation.
Format
address
Chemin: customer.shippingDetails.address
Adresse de livraison.
Attention : Les caractères > et < ne sont pas autorisés.
Format
address2
Chemin: customer.shippingDetails.address2
Deuxième ligne d'adresse de livraison.
Attention : Les caractères > et < ne sont pas autorisés.
Format
category
Chemin: customer.shippingDetails.category
Type de client.
Format
Valeurs possibles
valeurs | Description |
---|---|
PRIVATE | Client de type Particulier |
COMPANY | Client de type Société |
city
Chemin: customer.shippingDetails.city
Ville de livraison.
Format
country
Chemin: customer.shippingDetails.country
Pays de livraison (en majuscule, suivant la norme ISO 3166-1 alpha-2).
Format
Valeurs possibles
Exemples de valeurs possibles:
Pays | Code |
---|---|
AUTRICHE | AT |
BRESIL | BR |
CORSE | FR |
COTE D'IVOIRE | CI |
FRANCE | FR |
GUADELOUPE | GP |
INDE | IN |
MARTINIQUE | MQ |
NOUVELLE-CALÉDONIE | NC |
ST-PIERRE-ET-MIQUELON | PM |
POLYNESIE FRANCAISE | PF |
deliveryCompanyName
Chemin: customer.shippingDetails.deliveryCompanyName
Nom de la société qui délivre le produit.
Format
district
Chemin: customer.shippingDetails.district
Quartier de l'adresse de facturation.
Format
firstName
Chemin: customer.shippingDetails.firstName
Prénom du destinataire.
Format
identityCode
Chemin: customer.shippingDetails.identityCode
Identifiant national. Permet d'identifier de façon unique chaque citoyen au sein d'un pays.
Format
lastName
Chemin: customer.shippingDetails.lastName
Nom de l'acheteur.
Format
legalName
Chemin: customer.shippingDetails.legalName
Raison sociale en cas de livraison en entreprise.
Format
phoneNumber
Chemin: customer.shippingDetails.phoneNumber
Numéro de téléphone de l'acheteur.
Accepte tous les formats:
Exemples:
- 0123456789
- +33123456789
- 0033123456789
- (00.571) 638.14.00
- 40 41 42 42
Format
shippingMethod
Chemin: customer.shippingDetails.shippingMethod
Mode de livraison.
Format
Valeurs possibles
Valeur | Description |
---|---|
RECLAIM_IN_SHOP | Retrait de marchandise en magasin. |
RELAY_POINT | Utilisation d'un réseau de points de retrait tiers (Kiala, Alveol, etc). |
RECLAIM_IN_STATION | Retrait dans un aéroport, une gare ou une agence de voyage. |
PACKAGE_DELIVERY_COMPANY | Livraison par transporteur (Colissimo, UPS, etc). |
ETICKET | Emission d'un billet électronique, téléchargement de produit virtuel. |
CARD_HOLDER_ADDRESS | Livraison chez l'acheteur. Réservé à un usage futur. |
VERIFIED_ADDRESS | Livraison à une adresse vérifiée. Réservé à un usage futur. |
NOT_VERIFIED_ADDRESS | Livraison à une adresse non vérifiée. Réservé à un usage futur. |
SHIP_TO_STORE | Livraison en magasin. Réservé à un usage futur. |
DIGITAL_GOOD | Livraison digitale. Réservé à un usage futur. |
ETRAVEL_OR_ETICKET | Billet électronique. Réservé à un usage futur. |
OTHER | Autre: Réservé à un usage futur. |
PICKUP_POINT | Retrait en point relais. Réservé à un usage futur. |
AUTOMATED_PICKUP_POINT | Retrait en point relais automatique. Réservé à un usage futur. |
shippingSpeed
Chemin: customer.shippingDetails.shippingSpeed
Délai de livraison.
Format
Valeurs possibles
Exemples de valeurs possibles:
Valeur | Description |
---|---|
STANDARD | Livraison standard |
EXPRESS | Livraison en moins de 24h |
PRIORITY | Livraison Prioritaire (Click & Collect) |
state
Chemin: customer.shippingDetails.state
Région de l'adresse de facturation.
Format
streetNumber
Chemin: customer.shippingDetails.streetNumber
Numéro de rue de l'adresse de livraison.
Caractères acceptés:
- Caractères alphabétiques (de "A" à "Z" et de "a" à "z")
- Espace
Format
zipCode
Chemin: customer.shippingDetails.zipCode
Code postal de l'adresse de facturation.
Format
insuranceAmount
Chemin: customer.shoppingCart.insuranceAmount
Montant de l’assurance pour l’ensemble de la commande exprimé dans sa plus petite unité monétaire (le centime pour l'euro).
Exemple: 30050 pour 300,50 EUR.
Format
shippingAmount
Chemin: customer.shoppingCart.shippingAmount
Montant des frais de livraison pour l’ensemble de la commande exprimé dans sa plus petite unité monétaire (le centime pour l'euro).
Exemple: 30050 pour 300,50 EUR.
Format
taxAmount
Chemin: customer.shoppingCart.taxAmount
Montant des taxes pour l’ensemble de la commande exprimé dans sa plus petite unité monétaire (le centime pour l'euro).
Exemple: 30050 pour 300,50 EUR.
Format
cartItemInfo
Chemin: customer.shoppingCart.cartItemInfo
cardItemInfo est une liste qui contient des objets Customer/ShoppingCartItemInfo.
Il permet de décrire chaque article du panier.
Format
productAmount
Chemin: customer.shoppingCart.cartItemInfo.productAmount
Montant du produit exprimé dans sa plus petite unité monétaire (le centime pour l'euro).
Exemple: 30050 pour 300,50 EUR.
Format
productLabel
Chemin: customer.shoppingCart.cartItemInfo.productLabel
Nom du produit.
Format
productQty
Chemin: customer.shoppingCart.cartItemInfo.productQty
Quantité de produit.
Format
productRef
Chemin: customer.shoppingCart.cartItemInfo.productRef
Référence produit.
Format
productType
Chemin: customer.shoppingCart.cartItemInfo.productType
Type du produit.
Valeurs possibles
Valeur | Description |
---|---|
FOOD_AND_GROCERY | Produits alimentaires et d'épicerie |
AUTOMOTIVE | Automobile / Moto |
ENTERTAINMENT | Divertissement / Culture |
HOME_AND_GARDEN | Maison et jardin |
HOME_APPLIANCE | Equipement de la maison |
AUCTION_AND_GROUP_BUYING | Ventes aux enchères et achats groupés |
FLOWERS_AND_GIFTS | Fleurs et cadeaux |
COMPUTER_AND_SOFTWARE | Ordinateurs et logiciels |
HEALTH_AND_BEAUTY | Santé et beauté |
SERVICE_FOR_INDIVIDUAL | Services à la personne |
SERVICE_FOR_BUSINESS | Services aux entreprises |
SPORTS | Sports |
CLOTHING_AND_ACCESSORIES | Vêtements et accessoires |
TRAVEL | Voyage |
HOME_AUDIO_PHOTO_VIDEO | Son, image et vidéo |
TELEPHONY | Téléphonie |
Format
productVat
Chemin: customer.shoppingCart.cartItemInfo.productVat
Type du produit.
Montant de la taxe sur le produit (dans la plus petite unité de la devise).
Valeurs possibles
Valeur | Description |
---|---|
Un nombre entier | Montant de la transaction. Sa valeur doit être un entier positif (ex: 1234 pour 12,34 EUR). |
Un nombre décimal, inférieur à 100 | Pourcentage appliqué sur le montant. Exemples : 20.0 ou 19.6532 |
Pour exprimer un pourcentage appliqué sur le montant du produit concerné, la valeur doit avoir au maximum 4 chiffres après la virgule. La décimale est obligatoire pour exprimer un pourcentage. La décimale est marquée par le caractère ".".
Format
id
Identifiant unique de l'authentification, au format UUID.
Format
ianTargetUrl
Cette url est requise pour la notification de fin d'authentification.
Format
name
Chemin: instructionResult.name
Nom de l'instruction
Valeurs possibles
Valeur | Description |
---|---|
CHALLENGE | Instruction Challenge, qui permet l'authentification interactive de l'utilisateur auprès de l'ACS |
FINGERPRINT | Instruction Fingerprint, qui permet d'identifier l'utilisateur auprès de l'ACS |
Format
value
Chemin: instructionResult.value
Résultat sous forme de chaine JWT, ou un code d'erreur en texte simple en cas d'erreur (timeout
par exemple).
Format
challengePreference
Chemin: instructionResult.protocol.challengePreference
Indique si le commerçant a demandé un challenge ou pas.
Valeurs possibles
Valeur | Carte 3DS2 |
---|---|
NO_PREFERENCE | Le choix de la préférence est délégué à l'émetteur de la carte. |
NO_CHALLENGE_REQUESTED | Permet de demander une authentification sans interaction (frictionless) |
CHALLENGE_REQUESTED | Permet de demander une authentification forte pour la transaction. |
CHALLENGE_MANDATED | Permet d'indiquer que pour des raisons réglementaires, une authentification forte est requise pour la transaction. |
DATA_ONLY | Permet de demander une authentification sans interaction, prise en charge par le DS au lieu de l'ACS de la banque émettrice. La transaction ne bénéficiera pas du transfert de responsabilité. L'authentification sera désactivée si le réseau n'est pas compatible avec cette fonctionnalité. Le service PCI/Charge/Authenticate retourne un code erreur INT_808, si le champ transactionCategory n'est pas valorisé à PAYMENT . |
Format
name
Chemin: instructionResult.protocol.name
Nom du protocole d'authentification du porteur de carte.
Valeurs possibles
Valeur | Description |
---|---|
THREEDS | Protocole 3D Secure |
Format
network
Chemin: instructionResult.protocol.network
Réseau sur lequel le moyen de paiement a été authentifié.
Ce champ est obligatoire pour la gestion du timeout sur le 3ds method, lorsque le champ instructionResult.value a pour valeur TIMEOUT.
Réseaux supportés actuellement
Valeur |
---|
CB |
VISA |
MASTERCARD |
AMEX_SAFEKEY |
PROTECTBUY |
Format
simulation
Chemin: instructionResult.protocol.simulation
Booléen qui indique si l'authentification doit être réalisée en mode simulation. Si vous valorisez ce champ obligatoire à :
true
, vous activez le mode simulation.false
, vous n'activez pas le mode simulation.
Ce mode permet de réaliser une intégration marchand sans être en production, ni utiliser de vraies cartes.
Format
version
Chemin: instructionResult.protocol.version
Version du protocole d'authentification du porteur de carte.
Versions supportées actuellement
Valeur | Description |
---|---|
1.0.2 | Version 1.0.2 |
2.1.0 | Version 2.1.0 |
2.2.0 | Version 2.2.0 |
Format
protocolRequest.name
Nom du protocole d'authentification du porteur de carte.
Valeurs possibles
Valeur | Description |
---|---|
THREEDS | Protocole 3D Secure |
Format
version
Chemin: protocolRequest.version
Permet de forcer la version du protocole d'authentification à utiliser.
Versions supportées actuellement
Valeur | Description |
---|---|
2 | 3D Secure 2 |
Format
challengePreference
Chemin: protocolRequest.challengePreference
Indique si le commerçant a demandé un challenge ou pas.
Valeurs possibles
Valeur | Carte 3DS2 |
---|---|
NO_PREFERENCE | Le choix de la préférence est délégué à l'émetteur de la carte. |
NO_CHALLENGE_REQUESTED | Permet de demander une authentification sans interaction (frictionless) |
CHALLENGE_REQUESTED | Permet de demander une authentification forte pour la transaction. |
CHALLENGE_MANDATED | Permet d'indiquer que pour des raisons réglementaires, une authentification forte est requise pour la transaction. |
DATA_ONLY | Permet de demander une authentification sans interaction, prise en charge par le DS au lieu de l'ACS de la banque émettrice. La transaction ne bénéficiera pas du transfert de responsabilité. L'authentification sera désactivée si le réseau n'est pas compatible avec cette fonctionnalité. Le service PCI/Charge/Authenticate retourne un code erreur INT_808, si le champ transactionCategory n'est pas valorisé à PAYMENT . |
Format
recurring.expiryDate
Date d'expiration de la récurrence. Exemple: 2019-12-24
Format
unit
Chemin: recurring.frequency.unit
Unité de fréquence de la récurrence
Valeurs possibles
valeurs | Description |
---|---|
DAY | En jours |
MONTH | En mois |
YEAR | En années |
Format
value
Chemin: recurring.frequency.value
Valeur de la fréquence de la récurrence, exprimée en unité de fréquence. Exemple: 12
Format
Référence de la réponse
Une seule réponse possible:
Réponse | Contexte |
---|---|
AuthenticationSessionResponse | Objet contenant le résultat de l'authentification de la session |