Esta petición permite obtener el tipo de autenticación 3D Secure que se puede realizar, además de la URL del 3DSMethod en caso de que exista.
El inicia petición se hace a través de una petición Webservice SOAP al TPV Virtual. En dicha petición deberá incluir los siguientes parámetros:
Dichos parámetros deben enviarse a los siguientes URL dependiendo de si se quiere realizar una petición en el entorno de prueba u operaciones reales, llamando al método “iniciaPeticion”:
Una vez gestionada la petición, el TPV Virtual informará al servidor del comercio el resultado de la misma con la información del resultado incluida en un fichero XML (RETORNOXML). En él se incluirán los siguientes campos:
A continuación, se describen los datos de debe incluir el DATOSENTRADA para enviar un inicia petición:
<DATOSENTRADA> <DS_MERCHANT_AMOUNT>1000</DS_MERCHANT_AMOUNT> <DS_MERCHANT_ORDER>1552571678</DS_MERCHANT_ORDER> <DS_MERCHANT_MERCHANTCODE>999008881</DS_MERCHANT_MERCHANTCODE> <DS_MERCHANT_TERMINAL>2</DS_MERCHANT_TERMINAL> <DS_MERCHANT_CURRENCY>978</DS_MERCHANT_CURRENCY> <DS_MERCHANT_TRANSACTIONTYPE>0</DS_MERCHANT_TRANSACTIONTYPE> <DS_MERCHANT_PAN> XXXXXXXXXXXXXXXXXX </DS_MERCHANT_PAN> <DS_MERCHANT_EMV3DS>{'threeDSInfo':'CardData'}</DS_MERCHANT_EMV3DS> </DATOSENTRADA>
Como respuesta se obtendrá lo siguiente:
<RETORNOXML> <CODIGO>0</CODIGO> <INFOTARJETA> <Ds_Order>1553155286</Ds_Order> <Ds_MerchantCode>999008881</Ds_MerchantCode> <Ds_Terminal>2</Ds_Terminal> <Ds_TransactionType>0</Ds_TransactionType> <Ds_EMV3DS>{"protocolVersion":"NO_3DS_V2"}</Ds_EMV3DS> <Ds_Card_PSD2>Y</Ds_Card_PSD2> <Ds_Signature>7155jJYTzqeO/FoKjIQwUrjRJU7CxiOLHlC00d5c/RU=</Ds_Signature> </INFOTARJETA>
El parámetro Ds_EMV3DS estará compuesto únicamente por el siguiente campo:
El parámetro Ds_Card_PSD2 informará al comercio si la tarjeta informada en la petición está afectada o no por PSD2. Los valores posibles serán “Y” para indicar que la tarjeta está afectada por PSD2, o “N” para indicar lo contrario.
Esta petición permite indicar al comercio que quiere solicitar una transacción realizando la autenticación 3DSecure 1.0 si procede.
La petición de autorización se hace a través de una petición al TPV Virtual En dicha petición deberá incluir los siguientes parámetros:
Dichos parámetros deben enviarse a los siguientes URL dependiendo de si se quiere realizar una petición en el entorno de prueba u operaciones reales, llamando al método “trataPeticion”:
Una vez gestionada la petición, el TPV Virtual informará al servidor del comercio el resultado de la misma con la información del resultado incluida en un fichero XML (RETORNOXML). En él se incluirán los siguientes campos:
A continuación, se describen los datos que debe incluir el DATOSENTRADA para enviar un inicia petición:
<DATOSENTRADA> <DS_MERCHANT_AMOUNT>1000</DS_MERCHANT_AMOUNT> <DS_MERCHANT_ORDER>1552572812</DS_MERCHANT_ORDER> <DS_MERCHANT_MERCHANTCODE>999008881</DS_MERCHANT_MERCHANTCODE> <DS_MERCHANT_TERMINAL>2</DS_MERCHANT_TERMINAL> <DS_MERCHANT_CURRENCY>978</DS_MERCHANT_CURRENCY> <DS_MERCHANT_TRANSACTIONTYPE>0</DS_MERCHANT_TRANSACTIONTYPE> <DS_MERCHANT_PAN> XXXXXXXXXXXXXXXXXX </DS_MERCHANT_PAN> <DS_MERCHANT_EXPIRYDATE >XXXX</ DS_MERCHANT_EXPIRYDATE> <DS_MERCHANT_CVV2>XXX</ DS_MERCHANT_CVV2> <DS_MERCHANT_EMV3DS>{ "threeDSInfo":"AuthenticationData", "protocolVersion":"1.0.2", "browserAcceptHeader":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,ap plication/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"}</DS_MERCHANT_EMV3DS> </DATOSENTRADA>
Como respuesta se obtendrá lo siguiente:
<RETORNOXML> <CODIGO>0</CODIGO> <OPERACION> <Ds_Amount>1000</Ds_Amount> <Ds_Currency>978</Ds_Currency> <Ds_Order>1552572812</Ds_Order> <Ds_Signature>B4Ok6jJAEOWFE6XT1nvLvUMM1kwt9CAkkLJkCHFBrso=</Ds_Signature> <Ds_MerchantCode>999008881</Ds_MerchantCode> <Ds_Terminal>2</Ds_Terminal> <Ds_TransactionType>0</Ds_TransactionType> <Ds_EMV3DS>{"threeDSInfo":"ChallengeRequest", "protocolVersion":"1.0.2", "acsURL": "https://sis.redsys.es/sis-simulador-web/authenticationRequest.jsp", "PAReq":"eJxVUttygjAQ/RWG95KEooKzpkPVjj7QOpZ+QBp2KlYuDVDx77tRqS0zmdmzJ+zlnMBDXxycbzRNX pUzV3jcdbDUVZaXHzP3LX26C90HCenOIC5eUXcGJSTYNOoDnTybuU1Rq7zPsFGlFmIU+mOfi4j7vrAfn3DOw9HYlbCJt/gl 4dpKUifPBzZAqmn0TpWtBKW/HtfPMhgFYSiAXSEUaNYL+brcJstNnCy381X8nAK7pKFUBcp5RUjnlZOhU5sO35XzZFSXIb AzD7rqytac5MQPgA0AOnOQu7atp4wdj0fPYNacGk9XBTBLAbvNtuls1FCpPs9kso/7lzQ+Jftln6R09p88WcRHOjNg9gZkqk U5KOIIPhVi6kfAznlQhZ1BintPcNr0gqC2TeKBsszfDJAHhiw6yWgS0hYDAuzrqkS6QbL+xkDOaEY73Cafr6zGuiXZ/lololEYW LnPjK2WkzhBJC7lLABm/2VXJ9n1GVD073n8AOa7wW0=", "MD":"cd164a6d0b77c96f7ef476121acfa987a0edf602"}</Ds_EMV3DS> </OPERACION> </RETORNOXML>
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. Dicho formulario envía 3 parámetros necesarios para la autenticación:
A continuación, se describen los datos que debe incluir el DATOSENTRADA para enviar una petición de confirmación de autorización 3DSecure 1.0 al Servicio SOAP:
<DATOSENTRADA> <DS_MERCHANT_AMOUNT>1000</DS_MERCHANT_AMOUNT> <DS_MERCHANT_ORDER>1552572812</DS_MERCHANT_ORDER> <DS_MERCHANT_MERCHANTCODE>999008881</DS_MERCHANT_MERCHANTCODE> <DS_MERCHANT_TERMINAL>2</DS_MERCHANT_TERMINAL> <DS_MERCHANT_CURRENCY>978</DS_MERCHANT_CURRENCY> <DS_MERCHANT_TRANSACTIONTYPE>0</DS_MERCHANT_TRANSACTIONTYPE> <DS_MERCHANT_PAN> XXXXXXXXXXXXXXXXXX </DS_MERCHANT_PAN> <DS_MERCHANT_EXPIRYDATE >XXXX</ DS_MERCHANT_EXPIRYDATE> <DS_MERCHANT_CVV2>XXX</ DS_MERCHANT_CVV2> <DS_MERCHANT_EMV3DS>{"threeDSInfo":"ChallengeResponse", "protocolVersion":"1.0.2", "PARes":"eJzFWNmSo0iyfecrymoeNVVsWqBNmWPBKlaJVcAbmwBJLALE9vWDlJVZWT3VNn3vw70yyRR4u Dvu ESeOu8X2X0N+/dLFdZOVxctX9Dvy9UtchGWUFcnLV8vkvhFf//W6NdM6jhkjDu91/LpV4qbxk/hL …..", "MD":"035535127d549298f11d7d2fc1b0d4e9300f93f1"} </DS_MERCHANT_EMV3DS> </DATOSENTRADA>
Como respuesta se obtendrá el resultado final de la operación:
<RETORNOXML> <CODIGO>0</CODIGO> <OPERACION> <Ds_Amount>1000</Ds_Amount> <Ds_Currency>978</Ds_Currency> <Ds_Order>1552572812</Ds_Order> <Ds_Signature>B4Ok6jJAEOWFE6XT1nvLvUMM1kwt9CAkkLJkCHFBrso=</Ds_Signature> <Ds_MerchantCode>999008881</Ds_MerchantCode> <Ds_Terminal>2</Ds_Terminal> <Ds_TransactionType>0</Ds_TransactionType> <Ds_Response>0000</Ds_Response> <Ds_AuthorisationCode >694432</Ds_AuthorisationCode> <Ds_SecurePayment>1</Ds_SecurePayment> <Ds_Language >1</Ds_Language> <Ds_CardNumber>454881******0004</Ds_CardNumber> <Ds_Card_Type>C</Ds_Card_Type> <Ds_MerchantData ></Ds_MerchantData> <Ds_Card_Country>724</Ds_Card_Country> <Ds_Card_Brand>1</Ds_Card_Brand> </OPERACION> </RETORNOXML>