payzen.eu
Rechercher
Catégories
Tags
France
France
Allemagne
Brésil
LATAM
Espagne
Europe (English)
Implémentation
Formulaire embarqué (client JavaScript)
APIs REST de paiement
Paiement par formulaire en redirection (avec ou sans iFrame)
Web Services
Échange de fichier
Formulaire de collecte de données
Paiement Mobile
Faciliter l'intégration
Modules de paiement gratuits
Exemples de code
Back office
Guides
Aide
FAQ
Tutoriels vidéos
Contacter le support

3DS2 - Authentification Challenge, sans 3DS Method

Pour tester ce scénario, utilisez un des numéros de carte ci-dessous :

Carte Date de validité Marque
4970110000000021 Au choix VISA
5100010000000049 Au choix MASTERCARD
375900000000016 Au choix AMEX

Cinématique des échanges

1. Appel initial au service PCI/Charge/Authenticate avec une carte enrôlée 3DS2.

{
  "amount":"9990",
  "currency":"EUR",
  "transactionCategory":"PAYMENT",
  "productType":"GOODS_OR_SERVICE_PURCHASE",
  "merchant": {
    "mid":"9876357"
  },
  "paymentForm": {
    "expiryMonth":"09",
    "expiryYear":"22",
    "networkPreference":"VISA",
    "pan":"4970110000000021"
  },
  "device": {
    "acceptHeader":"text/html",
    "colorDepth":"32",
    "deviceType":"BROWSER",
    "ip":"69.89.31.226",
    "javaEnabled": true,
    "language":"FR",
    "screenHeight":"768",
    "screenWidth":"1258",
    "timeZoneOffset":"-120",
    "userAgent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101"
  },
  "protocolRequest": {
    "name":"THREEDS",
    "version":"2",
    "challengePreference":"NO_PREFERENCE"
  }
}

2. Retour avec une instruction CHALLENGE de redirection vers l’ACS avec un CReq (iFrame visible).

{
	"webService":"PCI/Charge/Authenticate",
	"version":"V4",
	"applicationVersion":"5.23.0",
	"serverDate":"2021-05-05T12:02:47+00:00",
	"ticket":"9dbbe165313c49fb8fd000498a2dfa7c",
	"applicationProvider":"",
	"metadata":null,
	"status":"SUCCESS",
	"mode":"TEST",
	"serverUrl":"https://static.payzen.eu",
	"_type":"V4/WebService/Response",
	"answer":{
		"id":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
		"protocol":{
			"name":"THREEDS",
			"version":"2.1.0",
			"network":"VISA",
			"challengePreference":"NO_PREFERENCE",
			"simulation":true,
			"_type":"V4/Charge/Authenticate/Protocol"
		},
		"value":{
			"instructionType":"FORM",
			"name":"CHALLENGE",
			"timeout":600,
			"target":{
				"element":"IFRAME",
				"visible":true,
				"width":500,
				"height":600,
				"_type":"V4/Charge/Authenticate/InstructionTarget"
			},
			"http":{
				"method":"POST",
				"url":"https://acs.sg.com/acs/v2/creq",
				"body":{
					"creq":"eyJ0aHJlZURTU2Vy...",
					"threeDSSessionData":"H4sIAAAAAAAAAC2OyZK..."
				},
				"_type":"V4/Charge/Authenticate/HttpRequest"
			},
			"_type":"V4/Charge/Authenticate/AuthenticationInstruction"
		},
		"_type":"V4/AuthenticationResponseData"
	}
}

3. Redirection vers l’ACS dans l’iFrame pour l'authentification du porteur.

Les caractéristiques de l'iFrame sont données dans l'objet answer.value.target . Le formulaire à afficher dans l'iFrame est décrit dans l'objet answer.value.http .

4. Retour via le navigateur avec un résultat d’instruction.

{
	"eventName":"LYRA_AUTH_INSTRUCTION_RESULT",
	"value":{
		"name":"CHALLENGE",
		"value":"eyJjZXJ0aWZpY2F0Z...",
		"protocol":{
			"name":"THREEDS",
			"version":"2.1.0",
			"network":"VISA",
			"challengePreference":"NO_PREFERENCE",
			"simulation":true
		}
	}
}

5. Nouvel appel au service PCI/Charge/Authenticate en transmettant ce résultat.

{
  "amount":"9990",
  "currency":"EUR",
  "transactionCategory":"PAYMENT",
  "productType":"GOODS_OR_SERVICE_PURCHASE",
  "merchant": {
    "mid":"9876357"
  },
  "paymentForm": {
    "expiryMonth":"09",
    "expiryYear":"22",
    "networkPreference":"VISA",
    "pan":"4970110000000021"
  },
  "device": {
    "acceptHeader":"text/html",
    "colorDepth":"32",
    "deviceType":"BROWSER",
    "ip":"69.89.31.226",
    "javaEnabled": true,
    "language":"FR",
    "screenHeight":"768",
    "screenWidth":"1258",
    "timeZoneOffset":"-120",
    "userAgent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101"
  },
  "protocolRequest": {
    "name":"THREEDS",
    "version":"2",
	"challengePreference":"NO_PREFERENCE"
  },
  "id":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
  "instructionResult": {
	"name" : "CHALLENGE",			
	"protocol" : {
	  "name" : "THREEDS",
	  "network":"VISA",
	  "version" : "2.1.0",
	  "challengePreference":"NO_PREFERENCE",
	  "simulation": 1
	},
	"value":"eyJjZXJ0aWZpY2F0Z..."
  }		  
}

6. Retour du serveur de la plateforme de paiement avec le résultat final d’authentification.

Authentification réussie

{
	"webService":"PCI/Charge/Authenticate",
	"version":"V4",
	"applicationVersion":"5.23.0",
	"serverDate":"2021-05-05T12:03:24+00:00",
	"ticket":"9dbbe165313c49fb8fd000498a2dfa7c",
	"applicationProvider":"",
	"metadata":null,
	"status":"SUCCESS",
	"mode":"TEST",
	"serverUrl":"https://static.payzen.eu",
	"_type":"V4/WebService/Response",
	"answer":{
		"id":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
		"protocol":{
			"name":"THREEDS",
			"version":"2.1.0",
			"network":"VISA",
			"challengePreference":"NO_PREFERENCE",
			"simulation":true,
			"_type":"V4/Charge/Authenticate/Protocol"
		},
		"value":{
			"authenticationType":"CHALLENGE",
			"authenticationId":{
				"authenticationIdType":"dsTransId",
				"value":"18e46ff7-b882-4102-9af4-aef9f40ee6a6",
				"_type":"V4/Charge/Authenticate/AuthenticationId"
			},
			"authenticationValue":{
				"authenticationValueType":"CAVV",
				"value":"PdY1V9f/aHxC2wbZt4/7Z6Q9f44=",
				"_type":"V4/Charge/Authenticate/AuthenticationValue"
			},
			"status":"SUCCESS",
			"commerceIndicator":"05",
			"extension":{
				"authenticationType":"THREEDS_V2",
				"threeDSServerTransID":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
				"dsTransID":"18e46ff7-b882-4102-9af4-aef9f40ee6a6",
				"acsTransID":"410d9fb4-8db1-483e-9a80-f94c3a79017e",
				"_type":"V4/Charge/Authenticate/AuthenticationResultExtensionThreedsV2"
			},
			"reason":{
				"_type":"V4/Charge/Authenticate/AuthenticationResultReason"
			},
			"_type":"V4/Charge/Authenticate/AuthenticationResult"
		},
		"_type":"V4/AuthenticationResponseData"
	}
}

Authentification en échec

{
	"webService":"PCI/Charge/Authenticate",
	"version":"V4",
	"applicationVersion":"5.23.0",
	"serverDate":"2021-05-05T12:03:24+00:00",
	"ticket":"9dbbe165313c49fb8fd000498a2dfa7c",
	"applicationProvider":"",
	"metadata":null,
	"status":"SUCCESS",
	"mode":"TEST",
	"serverUrl":"https://static.payzen.eu",
	"_type":"V4/WebService/Response",
	"answer":{
		"id":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
		"protocol":{
			"name":"THREEDS",
			"version":"2.1.0",
			"network":"VISA",
			"challengePreference":"NO_PREFERENCE",
			"simulation":true,
			"_type":"V4/Charge/Authenticate/Protocol"
		},
		"value":{
			"authenticationType":"CHALLENGE",
			"authenticationId":{
				"authenticationIdType":"dsTransId",
				"value":"e8286d62-006e-413e-ad3b-328503b14e71",
				"_type":"V4/Charge/Authenticate/AuthenticationId"
			},
			"status":"FAILED",
			"extension":{
				"authenticationType":"THREEDS_V2",
				"threeDSServerTransID":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
				"dsTransID":"e8286d62-006e-413e-ad3b-328503b14e71",
				"acsTransID":"54feb2ac-9666-4ce3-86e5-d8f947cebd87",
				"transStatusReason":"01",
				"_type":"V4/Charge/Authenticate/AuthenticationResultExtensionThreedsV2"
			},
			"reason":{
				"code":"CARD_AUTHENTICATION_FAILED",
				"_type":"V4/Charge/Authenticate/AuthenticationResultReason"
			},
			"_type":"V4/Charge/Authenticate/AuthenticationResult"
		},
		"_type":"V4/AuthenticationResponseData"
	}
}

Head Office :

LYRA NETWORK
109, rue de l’innovation
31670 Labège
FRANCE

Nos services

Lyra
Recruitment
PayZen