Autenticación con 3DSecure

Protocolo de autenticación EMV3DS

Para realizar la autenticación es necesario incorporar en el flujo de pago varios pasos adicionales (excepto en el caso de integración por redirección). Los comercios que utilizan conexión REST y estén interesados en incluir el proceso de autenticación del titular mediante protocolo 3DSecure, tienen que incluir en el flujo de la transacción la mensajería de este protocolo de seguridad.

El proceso de pago de una operación con autenticación en la conexión REST sigue los siguientes pasos:

  1. Inicia petición: El comercio deberá hacer una petición al TPV Virtual para obtener la versión de la tarjeta y poder iniciar el proceso de autenticación con el protocolo correspondiente.
  2. 3DSMethod (Si procede): El comercio ejecuta el 3DSMethod para que el emisor capture la información del dispositivo.
  3. Trata Petición (Solicitud de autorización): El comercio enviará la solicitud de autorización de la operación con el parámetro "Ds_Merchant_Emv3ds" con un valor en formato JSON donde se incluyen los valores del protocolo EMV3DS.
  4. Respuesta: Una vez enviada la petición, se puede recibir una respuesta "Frictionless" (respuesta final con el parámetro "Ds_Response") o "Challenge"(necesita continuar la autenticación).
  5. Autenticación (Si procede): La entidad emisora requiere de que el titular verifique su autenticidad (mediante OTP, contraseña estática, biometría, etc).
  6. Confirmación de autorización: El comercio enviará la autorización con el resultado del challenge al TPV Virtual para finalizar el proceso de autorización y recibir el parámetro "Ds_Response".

Existen dos flujos posibles con la V2, dependiendo de la respuesta del TPV-Virtual:


descripcion flujo frictionless

1. El titular selecciona los productos que desea comprar e introduce los datos de tarjeta en un formulario mostrado por el comercio.

2. El comercio inicia petición enviando los datos al TPV Virtual.

3. El TPV Virtual comprueba la configuración de la tarjeta, y en la respuesta informará si la tarjeta soporta autenticación EMV3DS y la versión de protocolo EMV3DS que se aplica.

3.1 Si la tarjeta lo requiere ejecutar el 3DSMethod: se inicia conexión desde el browser con el ACS y este devuelve el resultado de la ejecución al comercio.

4. El comercio envía la solicitud de autorización con tarjeta que soporta EMV3DS v2. Además de los datos de pago es necesario enviar el resultado del 3DSMethod y los datos adicionales para la autenticación. El TPV Virtual inicia la autenticación, y el emisor, en base a los datos recibidos, autentica la operación sin necesidad de la intervención del titular. A continuación, el TPV Virtual procesará la autorización.

5. Una vez realizado el pago, el TPV virtual informa del resultado de la operación.

6. El comercio devuelve la información del resultado del pago al titular.


descripcion flujo frictionless

1. El titular selecciona los productos que desea comprar e introduce los datos de tarjeta en un formulario mostrado por el comercio.

2. El comercio realiza un inicia petición enviando los datos al TPV Virtual.

3. El TPV Virtual comprueba la configuración de la tarjeta, y en la respuesta informará si la tarjeta soporta autenticación EMV3DS y la versión de protocolo EMV3DS que se aplica.

3.1 Si la tarjeta lo requiere ejecutar el 3DSMethod: se inicia conexión desde el browser con el ACS y este devuelve el resultado de la ejecución al comercio

4. El comercio envía la solicitud de autorización con tarjeta que soporta EMV3DS v2. Además de los datos de pago es necesario enviar el resultado del 3DSMethod y los datos adicionales para la autenticación.

El TPV Virtual inicia la autenticación, y el emisor en base a los datos recibidos decide que el titular debe verificar su autenticidad (challenge)

5. El TPV Virtual devuelve la información para que el titular pueda realizar el challenge con su banco emisor. Según el protocolo con el que se deba autenticar estas peticiones quedarán marcadas de la siguiente forma. Versión 2.1.0 (8210)

6. El comercio redirige al titular vía browser para que conecte con su emisor

7. El titular completa el challenge

8. La entidad emisora devuelve el resultado del challenge a la url indicada por el comercio

9. El comercio envía el resultado del challenge al TPV Virtual para finalizar el proceso de autorización

10. Una vez realizado el pago, el TPV virtual responde con el resultado de la operación.

11. El comercio responde con la información del resultado del pago al titular

Inicia Petición

Esta petición permite obtener el tipo de autenticación EMV 3DS ("Version 2.1.0" o "Version 2.2.0") que se puede realizar. Se debe enviar una peticion inicial rest a la siguiente URL:

Entorno URL conexión
Pruebas https://sis-t.redsys.es:25443/sis/rest/iniciaPeticionREST
Real https://sis.redsys.es/sis/rest/iniciaPeticionREST

Modalidad REST


Dentro del elemento "Ds_MerchantParameters" deberá enviarse el parámetro "Ds_Merchant_Emv3ds", de tipo JSON, con la etiqueta y valor que vemos en el ejemplo:

							
{
  "DS_MERCHANT_AMOUNT": "1000",
  "DS_MERCHANT_CURRENCY": "978",
  "DS_MERCHANT_EMV3DS": {
    "threeDSInfo": "CardData"
  },
  "DS_MERCHANT_MERCHANTCODE": "999008881",
  "DS_MERCHANT_CVV2": "123",
  "DS_MERCHANT_EXPIRYDATE": "1512",
  "DS_MERCHANT_ORDER": "1552571678",
  "DS_MERCHANT_PAN": " XXXXXXXXXXXXXXXXXX ",
  "DS_MERCHANT_TERMINAL": "999",
  "DS_MERCHANT_TRANSACTIONTYPE": "0"
}
					
				

Como resultado de la petición se devolverá en la respuesta un elemento "Ds_MerchantParameters" con un parámetro "Ds_EMV3DS", el cual tiene la información necesaria para proceder a la autenticación:



En este caso se corresponde a un "protocolVersion": "2.1.0" ó "2.2.0", en adelante "2.X.0" según la versión devuelta en el inicia:
					
{
  "Ds_EMV3DS": {
    "protocolVersion": "2.X.0",
    "threeDSServerTransID": "8de84430-3336-4ff4-b18d-f073b546ccea",
    "threeDSInfo": "CardConfiguration",
    "threeDSMethodURL": "https://sis.redsys.es/sis-simulador-web/threeDsMethod.jsp"
  },
  "Ds_MerchantCode": "999008881",
  "Ds_Order": "1552571678",
  "Ds_Terminal": "2",
  "Ds_TransactionType": "0"
}
					
				

Modalidad InSite


Dentro del elemento "Ds_MerchantParameters" deberá enviarse el parámetro "Ds_Merchant_Emv3ds", de tipo JSON, con la etiqueta y valor que vemos en el ejemplo:

							
{
  "DS_MERCHANT_AMOUNT": "1000",
  "DS_MERCHANT_CURRENCY": "978",
  "DS_MERCHANT_EMV3DS": {
    "threeDSInfo": "CardData"
  },
  "DS_MERCHANT_MERCHANTCODE": "999008881",
  "DS_MERCHANT_ORDER": "1552571678",
  "DS_MERCHANT_IDOPER": "9c75f357629acb672e0f5444401d138f02e834ad ",
  "DS_MERCHANT_TERMINAL": "999",
  "DS_MERCHANT_TRANSACTIONTYPE": "0"
}
					
				

Como resultado de la petición se devolverá en la respuesta un elemento "Ds_MerchantParameters" con un parámetro "Ds_EMV3DS", el cual tiene la información necesaria para proceder a la autenticación:


En este caso se corresponde a un "protocolVersion": "2.1.0" ó "2.2.0", en adelante "2.X.0" según la versión devuelta en el inicia:
								
								
					
{
  "Ds_EMV3DS": {
    "protocolVersion": "2.X.0",
    "threeDSServerTransID": "8de84430-3336-4ff4-b18d-f073b546ccea",
    "threeDSInfo": "CardConfiguration",
    "threeDSMethodURL": "https://sis.redsys.es/sis-simulador-web/threeDsMethod.jsp"
  },
  "Ds_MerchantCode": "999008881",
  "Ds_Order": "1552571678",
  "Ds_Terminal": "2",
  "Ds_TransactionType": "0"
}
					
				

3DSMethod

El 3DSMethod es un proceso que permite a la entidad emisora capturar la información del dispositivo que está utilizando el titular. Esta información, junto con los datos EMV3DS que son enviados en la autorización, será utilizada por la entidad para hacer una evaluación del riesgo de la transacción. En base a esto el emisor puede determinar que la transacción es confiable y por lo tanto no requerir la intervención del titular para verificar su autenticidad (frictionless).

La captura de datos del dispositivo se realiza mediante un iframe oculto en el navegador del cliente, que establecerá conexión directamente con la entidad emisora de forma transparente para el usuario. El comercio recibirá una notificación cuanto haya terminado la captura de información. En el siguiente paso, al solicitar la autorización al TPV Virtual se enviará el parámetro threeDSCompInd indicando la ejecución del 3DSMethod

Pasos para la ejecución del 3DSMethod:

  1. En la respuesta recibida con la configuración de la tarjeta (iniciaPeticion) se recibe los datos siguientes para ejecutar el 3DSMethod:
    • threeDSMethodURL: Es la url del 3DSMethod.
    • threeDSServerTransID:Es el identificador de transacción EMV3DS.
    Si en la respuesta no se recibe threeDSMethodURL el proceso finaliza. En la autorización enviar threeDSCompInd = N.
  2. Construir el JSON Object con los parámetros:
    • threeDSServerTransID: Es el valor recibido en la respuesta de consulta de tarjeta.
    • threeDSMethodNotificationURL:Es la url del comercio a la que será notificada la finalización del 3DSMethod desde la entidad.
  3. Codificar el JSON anterior en Base64url encode.
  4. Debe incluirse un iframe oculto en el navegador del cliente, y enviar un campo threeDSMethodData con el valor del objecto json anterior, en un formulario http post a la url obtenida en la consulta inicial threeDSMethodURL.
  5. La entidad emisora interactúa con el browser para proceder a la captura de información. Al finalizar enviará el campo threeDSMethodData en el iframe html del navegador por http post a la url threeDSMethodNotificationURL (indicada en el paso 2), y el 3DSMethod termina.
  6. Si el 3DSMethod se ha completado en menos de 10 segundos se enviará en la autorización:
    • threeDSCompInd = Y.
    Si no se ha completado en 10 segundos debe detener la espera y enviar la autorización con valor:
    • threeDSCompInd = N.

Trata petición

Un vez recibida la respuesta del "Inicia Petición", deberá enviarse un "trata Petición" a la URL indicada. Esta petición deberá constar del parámetro "Ds_Merchant_Emv3ds", con los siguientes campos y valores correspondientes, los cuales dependen del valor del elemento "protocolVersion":

Modalidad REST

								 
		{
		  "DS_MERCHANT_AMOUNT": "1000",
		  "DS_MERCHANT_CURRENCY": "978",
		  "DS_MERCHANT_CVV2": "XXX",
		  "DS_MERCHANT_EMV3DS": {
			"threeDSInfo": "AuthenticationData",
			"protocolVersion": "2.X.0",
			"browserAcceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,application/json",
			"browserUserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36",
			"browserJavaEnabled": "false",
			"browserLanguage": "ES-es",
			"browserColorDepth": "24",
			"browserScreenHeight": "1250",
			"browserScreenWidth": "1320",
			"browserTZ": "52",
			"threeDSServerTransID": "8de84430-3336-4ff4-b18d-f073b546ccea",
			"notificationURL": "https://sis-d.redsys.es/sis-simulador-web/SisRESTCreqCres_3DSecureV2.jsp",
			"threeDSCompInd": "Y"
		  },
		  "DS_MERCHANT_EXPIRYDATE": "XXXX",
		  "DS_MERCHANT_MERCHANTCODE": "999008881",
		  "DS_MERCHANT_ORDER": "1552572812",
		  "DS_MERCHANT_PAN": " XXXXXXXXXXXXXXXXXX ",
		  "DS_MERCHANT_TERMINAL": "2",
		  "DS_MERCHANT_TRANSACTIONTYPE": "0"
		}
							   
							

Modalidad InSite

							 
	{
	  "DS_MERCHANT_AMOUNT": "1000",
	  "DS_MERCHANT_CURRENCY": "978",
	  "DS_MERCHANT_IDOPER": "9c75f357629acb672e0f5444401d138f02e834ad ",
	  "DS_MERCHANT_EMV3DS": {
		"threeDSInfo": "AuthenticationData",
		"protocolVersion": "2.X.0",
		"browserAcceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,application/json",
		"browserUserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36",
		"browserJavaEnabled": "false",
		"browserLanguage": "ES-es",
		"browserColorDepth": "24",
		"browserScreenHeight": "1250",
		"browserScreenWidth": "1320",
		"browserTZ": "52",
		"threeDSServerTransID": "8de84430-3336-4ff4-b18d-f073b546ccea",
		"notificationURL": "https://sis-d.redsys.es/sis-simulador-web/SisRESTCreqCres_3DSecureV2.jsp",
		"threeDSCompInd": "Y"
	  },
	  "DS_MERCHANT_MERCHANTCODE": "999008881",
	  "DS_MERCHANT_ORDER": "1552572812",
	  "DS_MERCHANT_TERMINAL": "2",
	  "DS_MERCHANT_TRANSACTIONTYPE": "0"
	}
						   
						

Respuesta

Como resultado del envío de esta petición, se pueden obtener dos tipos de respuesta, "frictionless" o "Challenge":

Para frictionless la operación habrá sido autorizada y finalizada. Se recibe el parámetro "Ds_Response"

						
{
  "Ds_Amount": "1000",
  "Ds_AuthorisationCode": "694432",
  "Ds_CardNumber": "454881******0004",
  "Ds_Card_Brand": "1",
  "Ds_Card_Country": "724",
  "Ds_Card_Type": "C",
  "Ds_Currency": "978",
  "Ds_Language": "1",
  "Ds_MerchantCode": "999008881",
  "Ds_MerchantData": "",
  "Ds_Order": "1552572812",
  "Ds_Response": "0000",
  "Ds_SecurePayment": "1",
  "Ds_Terminal": "2",
  "Ds_TransactionType": "0"
}
						
					

Para challenge la operación requerirá de autenticación del titular, se inicia el flujo challenge:

Ejemplo de petición para "protocolVersion": "2.X.0"

				    	 
{
  "Ds_Amount": "1000",
  "Ds_Currency": "978",
  "Ds_EMV3DS": {
    "threeDSInfo": "ChallengeRequest",
    "protocolVersion": "2.X.0",
    "acsURL": "https://sis.redsys.es/sis-simulador-web/authenticationRequest.jsp",
    "CReq": "eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjhkZTg0NDMwLTMzMzYtNGZmNC1iMThkLWYwNzNiNTQ2Y2NlYSIsImFjc1RyYW5zSUQiOiJkYjVjOTljNC1hMmZkLTQ3ZWUtOTI2Zi1mYTBiMDk0MzUyYTAiLCJtZXNzYWdlVHlwZSI6IkNSZXEiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIiwiY2hhbGxlbmdlV2luZG93U2l6ZSI6IjA1In0"
  },
  "Ds_MerchantCode": "999008881",
  "Ds_Order": "1552572812",
  "Ds_Terminal": "2",
  "Ds_TransactionType": "0"
}
		
				    

Autenticación

En el caso que la operación no haya finalizado en el paso anterior (flujo frictionless), debejerá ejecutarse el flujo Challenge. El comercio deberá montar un formulario que envíe un POST a la URL del parámetro "acsURL" obtenido en la respuesta de la petición de autorización anterior. En dicho formulario deberá envíar el parámetro "CReq" que se obtiene en la respuesta si es el protocolo 2.X.0 (2.1.0 ó 2.2.0) Este formulario redireccionará al titular a la página de autenticación de su banco, donde la entidad emisora requerirá que el titular verifique su autenticidad (mediante OTP, contraseña estática, biometría, etc).



Ejemplo de formulario HTML para "protocolVersion": "2.X.0"

				    	 
				    	 
				    	 
<form action="acsURL" method="post">
		<input type="hidden" name="creq" value="eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjA4MWQ1N2RlLWE4YTYtNGZkYi1hMzZj..." />
</form>
	
	
		
				    

Confirmación Autenticación

Como resultado de esta verificación, la entidad Emisora hará un POST a la URL indicada en el parámetro "notificationURL" (version 2.X.0) del "trataPetición".

En esta url indicada se recibirá una respuesta que debe de ser capturada con el parámetro "cres" (version 2.X.0).

Para terminar la autenticación, debe enviarse otra petición rest con éstos valores dentro del parémetro "Ds_Merchant_Emv3ds" en formato JSON:

Modalidad REST

Ejemplo de respuesta para "protocolVersion": "2.X.0"

							 
	{
	  "DS_MERCHANT_AMOUNT": "1000",
	  "DS_MERCHANT_CURRENCY": "978",
	  "DS_MERCHANT_CVV2": "XXX",
	  "DS_MERCHANT_EMV3DS": {
		"threeDSInfo": "ChallengeResponse",
		"protocolVersion": "2.X.0",
		"cres": "eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjhkZTg0NDMwLTMzMzYtNGZmNC1iMThkLWYwNzNiNTQ2Y2NlYSIsImFjc1RyYW5zSUQiOiJkYjVjOTljNC1hMmZkLTQ3ZWUtOTI2Zi1mYTBiMDk0MzUyYTAiLCJtZXNzYWdlVHlwZSI6IkNSZXMiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIiwidHJhbnNTdGF0dXMiOiJZIn0="
	  },
	  "DS_MERCHANT_EXPIRYDATE": "XXXX",
	  "DS_MERCHANT_MERCHANTCODE": "999008881",
	  "DS_MERCHANT_ORDER": "1552577128",
	  "DS_MERCHANT_PAN": " XXXXXXXXXXXXXXXXXX ",
	  "DS_MERCHANT_TERMINAL": "2",
	  "DS_MERCHANT_TRANSACTIONTYPE": "0"
	}
						   
						

Modalidad InSite

Ejemplo de respuesta para "protocolVersion": "2.X.0"

							 
	{
	  "DS_MERCHANT_AMOUNT": "1000",
	  "DS_MERCHANT_CURRENCY": "978",
	  "DS_MERCHANT_EMV3DS": {
		"threeDSInfo": "ChallengeResponse",
		"protocolVersion": "2.X.0",
		"cres": "eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjhkZTg0NDMwLTMzMzYtNGZmNC1iMThkLWYwNzNiNTQ2Y2NlYSIsImFjc1RyYW5zSUQiOiJkYjVjOTljNC1hMmZkLTQ3ZWUtOTI2Zi1mYTBiMDk0MzUyYTAiLCJtZXNzYWdlVHlwZSI6IkNSZXMiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIiwidHJhbnNTdGF0dXMiOiJZIn0="
	  },
	  "DS_MERCHANT_IDOPER": "9c75f357629acb672e0f5444401d138f02e834ad ",
	  "DS_MERCHANT_MERCHANTCODE": "999008881",
	  "DS_MERCHANT_ORDER": "1552577128",
	  "DS_MERCHANT_TERMINAL": "2",
	  "DS_MERCHANT_TRANSACTIONTYPE": "0"
	}
						   
						

Como respuesta a esta petición, se obtendrá el resultado de la petición de Autorización (Ds_Response) y finaliza el proceso de compra con el TPV-Virtual.

							
{
  "Ds_Amount": "1000",
  "Ds_AuthorisationCode": "694432",
  "Ds_CardNumber": "454881******0004",
  "Ds_Card_Brand": "1",
  "Ds_Card_Country": "724",
  "Ds_Card_Type": "C",
  "Ds_Currency": "978",
  "Ds_Language": "1",
  "Ds_MerchantCode": "999008881",
  "Ds_MerchantData": "",
  "Ds_Order": "1552572812",
  "Ds_Response": "0000",
  "Ds_SecurePayment": "1",
  "Ds_Terminal": "2",
  "Ds_TransactionType": "0"
}
						
					

Gestión de exenciones EMV3DS

De acuerdo a la norma de PSD2 (entrada en vigor el 14 de septiembre de 2019), directiva europea que tiene como objetivo mejorar la seguridad y reforzar la autenticación del cliente en las operaciones de comercio electrónico se definen una serie de exenciones al uso de SCA que podrán venir marcadas en la petición de autorización.

La solicitud de exención se informará en el parámetro "DS_MERCHANT_EXCEP_SCA" siendo los siguientes los valores permitidos:

Es importante tener en cuenta que al marcar exenciones la responsabilidad del posible fraude de la operación recae en el comercio.


Para conocer las exenciones permitidas para el comercio, se podrá enviar un mensaje de "iniciaPeticion" con el parámetro "DS_MERCHANT_EXCEP_SCA" = "Y":

					
{
  "DS_MERCHANT_ORDER":"1552571678",
  "DS_MERCHANT_MERCHANTCODE":"999008881",
  "DS_MERCHANT_TERMINAL":"999",
  "DS_MERCHANT_CURRENCY":"978",
  "DS_MERCHANT_TRANSACTIONTYPE":"0",
  "DS_MERCHANT_AMOUNT":"1000",
  "DS_MERCHANT_EXCEP_SCA":"Y",
  "DS_MERCHANT_PAN":" XXXXXXXXXXXXXXXXXX ",
  "DS_MERCHANT_EMV3DS": {"threeDSInfo":"CardData"}
}
					
				

En la respuesta, el parámetro "Ds_Excep_SCA" nos marcará las excenciones que pueden usarse en el "TrataPetición".

					
{
  "Ds_Order":"1552571678",
  "Ds_MerchantCode":"999008881",
  "Ds_Terminal":"2",
  "Ds_TransactionType":"0",
  "Ds_EMV3DS": {
    "protocolVersion":"2.X.0",
    "threeDSServerTransID":"8de84430-3336-4ff4-b18d-f073b546ccea",
    "threeDSInfo":"CardConfiguration",
    "threeDSMethodURL":https://sis.redsys.es/sis-simulador-web/threeDsMethod.jsp},
  "Ds_Excep_SCA":"LWV;TRA[30.0];COR;MIT;ATD;WHL",
  "Ds_Card_PSD2":"Y"
}
						    
						

Se contemplan dos tipos de mensajes donde podemos marcar una exención:

TrataPetición con datos EMV3DS.

Las exenciones marcadas en peticiones con envío de datos EMV3DS, se marcarán en la autenticación. Si esta exención no es aceptada se devolverá una petición de CHALLENGE para que el titular se autentique con SCA. De esta forma la petición no se pierde y continuará el flujo habitual, sin que el titular se vea afectado. SE RECOMIENDA ESTA OPCIÓN.


Modalidad REST

Ejemplo TrataPetición con autenticación EMV3DS vía Rest

					
{
  "DS_MERCHANT_ORDER":"1552572812",
  "DS_MERCHANT_MERCHANTCODE":"999008881",
  "DS_MERCHANT_TERMINAL":"2",
  "DS_MERCHANT_CURRENCY":"978",
  "DS_MERCHANT_TRANSACTIONTYPE":"0",
  "DS_MERCHANT_AMOUNT":"100",
  "DS_MERCHANT_PAN":" XXXXXXXXXXXXXXXXXX ",
  "DS_MERCHANT_EXPIRYDATE":"XXXX",
  "DS_MERCHANT_CVV2":"XXX",
  "DS_MERCHANT_EXCEP_SCA":"LWV",
  "DS_MERCHANT_EMV3DS":
  {
	 "threeDSInfo":"AuthenticationData",
	 "protocolVersion":"2.X.0",
	 "browserAcceptHeader":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,application/json",
	 "browserUserAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36",
	 "browserJavaEnabled":"false",
	 "browserJavaScriptEnabled":"false",
	 "browserLanguage":"ES-es",
	 "browserColorDepth":"24",
	 "browserScreenHeight":"1250",
	 "browserScreenWidth":"1320",
	 "browserTZ":"52",
	 "threeDSServerTransID":"8de84430-3336-4ff4-b18d-f073b546ccea",
	 "notificationURL":"https://comercio-inventado.es/recibe-respuesta-autenticacion",
	 "threeDSCompInd":"Y"
  }
}
					
				

Modalidad InSite

Ejemplo TrataPetición con autenticación EMV3DS con InSite

										
{
  "DS_MERCHANT_ORDER":"1552572812",
  "DS_MERCHANT_MERCHANTCODE":"999008881",
  "DS_MERCHANT_TERMINAL":"2",
  "DS_MERCHANT_CURRENCY":"978",
  "DS_MERCHANT_TRANSACTIONTYPE":"0",
  "DS_MERCHANT_AMOUNT":"100",
  "DS_MERCHANT_IDOPER":"9c75f357629acb672e0f5444401d138f02e834ad",
  "DS_MERCHANT_EXCEP_SCA":"LWV",
  "DS_MERCHANT_EMV3DS":
  {
	 "threeDSInfo":"AuthenticationData",
	 "protocolVersion":"2.X.0",
	 "browserAcceptHeader":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,application/json",
	 "browserUserAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36",
	 "browserJavaEnabled":"false",
	 "browserJavaScriptEnabled":"false",
	 "browserLanguage":"ES-es",
	 "browserColorDepth":"24",
	 "browserScreenHeight":"1250",
	 "browserScreenWidth":"1320",
	 "browserTZ":"52",
	 "threeDSServerTransID":"8de84430-3336-4ff4-b18d-f073b546ccea",
	 "notificationURL":"https://comercio-inventado.es/recibe-respuesta-autenticacion",
	 "threeDSCompInd":"Y"
  }
}
					
				

TrataPetición sin datos EMV3DS.

Las exenciones marcadas en las peticiones en las que no se han informado los datos EMV3DS, se marcarán en la autorización. Si esta exención no es aceptada se procederá a una denegación con nse = 0195 (Requiere SCA). Si se quiere volver a hacer la petición con datos EMV3DS se deberá enviar otra petición.

Modalidad REST

					
{
  "DS_MERCHANT_ORDER":"1552572812",
  "DS_MERCHANT_MERCHANTCODE":"999008881",
  "DS_MERCHANT_TERMINAL":"2",
  "DS_MERCHANT_CURRENCY":"978",
  "DS_MERCHANT_TRANSACTIONTYPE":"0",
  "DS_MERCHANT_AMOUNT":"100",
  "DS_MERCHANT_PAN":" XXXXXXXXXXXXXXXXXX ",
  "DS_MERCHANT_EXPIRYDATE":"XXXX",
  "DS_MERCHANT_CVV2":"XXX",
  "DS_MERCHANT_EXCEP_SCA":"LWV"
}					
					
					
					
				

Modalidad InSite

										
{
  "DS_MERCHANT_ORDER":"1552572812",
  "DS_MERCHANT_MERCHANTCODE":"999008881",
  "DS_MERCHANT_TERMINAL":"2",
  "DS_MERCHANT_CURRENCY":"978",
  "DS_MERCHANT_TRANSACTIONTYPE":"0",
  "DS_MERCHANT_AMOUNT":"100",
  "DS_MERCHANT_IDOPER":"9c75f357629acb672e0f5444401d138f02e834ad",
  "DS_MERCHANT_EXCEP_SCA":"LWV"
}