Skip to main content
Skip table of contents

Generar Autenticación

Luego de Validar BIN y Comercio (Versioning) se generá la Autenticacion 3DS 2.1.

Se deberán de enviar en el Header el campo threeDSServerTransID con el valor enviado en la respuesta en el API Validar BIN y Comercio (Versioning).

Headers

Cabecera

Valor

Requerido

Content-Type

application/json

SI

key

(Compartido por Alignet)

SI

threeDSServerTransID

f281382d-7757-41d2-9248-d6f4adf242fb

SI

Request

Prámetro

Tipo

Long.

Descripción

Req.

messageType

String

4

Identifica el tipo de mensaje que se pasa.

  • pArq

SI

acctNumber

String

13-19

Número de cuenta que se usará en la solicitud de autorización para transacciones de pago. Puede ser

representado por PAN, token.

SI

cardExpiryDate

String

4

Fecha de vencimiento del PAN o token suministrado al solicitante de 3DS por el titular

de la tarjeta.

SI

deviceChannel

String

2

Indica el tipo de interfaz de canal que se utiliza para iniciar la transacción

01 = App-based (APP)

02 = Browser (BRW)

03 = 3DS Requestor Initiated (3RI)

SI

messageCategory

String

2

Identifica la categoría del mensaje para un caso de uso específico.

01- PA

02- NPA

SI

messageVersion

String

5

Versión del protocolo identificador Este será el número de versión del protocolo de la especificación utilizada por el sistema que crea este mensaje

SI

threeDSRequestorAuthenticationInd

String

2

Indica el tipo de solicitud de autenticación.

01 = Payment transaction

  • 02 = Recurring transaction

  • 03 = Instalment transaction

  • 04 = Add card

  • 05 = Maintain card

  • 06 = Cardholder verification

as part of EMV token ID&V

SI

acquirerBIN

String

11

Adquirir el código de identificación de la institución

asignado por el DS que recibe el mensaje AReq.

SI

acquirerMerchantID

String

35

Identificador del comerciante asignado por el adquiriente.

SI

browserAcceptHeader

String

2048

El contenido exacto de HTTP acepta los encabezados enviados al Solicitante de 3DS

desde el navegador del titular de la tarjeta.

SI

 

browserIP

 

String

 

45

La dirección IP del navegador devuelta por los encabezados HTTP al solicitante 3DS.

SI

browserJavaEnabled

Boolean

true/false

Booleano que representa la capacidad del navegador del titular de la tarjeta para

ejecutar Java.

SI

browserLanguage

String

1–8

Valor que representa el idioma del navegador como se define

en IETF BCP47.

SI

browserColorDepth

String

1–2

Valor que representa la profundidad de bits de la paleta de colores para mostrar imágenes, en bits por píxel. Este campo acepta los siguientes valores:

  • 1 = 1 bit

  • 4 = 4 bits

  • 8 = 8 bits

  • 15 = 15 bits

  • 16 = 16 bits

  • 24 = 24 bits

  • 32 = 32 bits

  • 48 = 48 bits

SI

browserScreenHeight

String

1–6

Altura total de la pantalla del titular de la tarjeta en píxeles.

SI

browserScreenWidth

String

1–7

Ancho total de la pantalla del titular de la tarjeta en píxeles.

SI

browserTZ

String

1–5

Diferencia horaria entre la hora UTC y la hora local del navegador del titular de la tarjeta, en minutos.

SI

browserUserAgent

String

2048

Contenido exacto del encabezado de usuario de HTTP.

SI

purchaseAmount

String

48

Importe de compra en unidades menores de moneda con todos los signos de puntuación eliminados.

SI

purchaseCurrency

String

3

Moneda en la que se expresa el importe de la compra.

SI

purchaseExponent

String

1

Unidades menores de moneda como se especifica en el exponente de moneda ISO 4217.

SI

purchaseDate

String

14

Fecha y hora de la compra, expresada en UTC.

SI

purchaseNumber

String

1-26

Número de pedido de la compra. Este valor es generado por el comercio

SI

 cardholderName

 String

2-45

Nombre del titular de la tarjeta

NO

 addrMatch

String

1

Indica si la Dirección de envío del titular de la tarjeta y la Dirección de facturación del titular de la tarjeta son las mismas.

NO

billAddrCity

String

50

La ciudad de la dirección de facturación del titular de la tarjeta asociada con la tarjeta utilizada para esta compra.

NO

billAddrCountry

String

3

El país de la dirección de facturación del titular de la tarjeta asociada con la tarjeta utilizada para esta compra.

NO

billAddrLine1

String

50

Primera línea de la calle o parte local equivalente de la dirección de facturación del titular de la tarjeta

asociada a la tarjeta utilizada para esta compra.

NO

billAddrLine2

String

50

Segunda línea de la calle o parte local equivalente de la dirección de facturación del titular de la tarjeta asociada a la tarjeta utilizada para esta compra.

NO

billAddrLine3

String

50

Tercera línea de la calle o parte local equivalente de la dirección de facturación del titular de la tarjeta asociada a la tarjeta utilizada para esta compra.

NO

billAddrPostCode

String

16

Código postal u otro código postal de la dirección de facturación del titular de la tarjeta asociada a la tarjeta utilizada para esta compra.

NO

billAddrState

String

3

El estado o provincia de la dirección de facturación del titular de la tarjeta asociada con la tarjeta utilizada para esta compra.

NO

homePhone

JSON Object

 

El número de teléfono de la casa proporcionado por el titular de la tarjeta.

NO

cc

String

1–3

subscriber

String

15

email

String

254

La dirección de correo electrónico asociada con la cuenta que ha ingresado el titular de la tarjeta o que está en el archivo del solicitante de 3DS.

NO

mcc

String

4

Código específico de DS que describe el tipo de negocio, producto o servicio del Comerciante.

NO

merchantCountryCode

String

3

Código de país del comerciante.

NO

merchantName

String

40

Nombre del comerciante asignado por el Adquiriente o Sistema de pago.

NO

threeRIInd

String

2

Indica el tipo de 3RIsolicitud 

01 = Recurring transaction

NO

mobilePhone

JSON Object

El número de teléfono móvil proporcionado por el titular de la tarjeta.

NO

cc

String

1–3

subscriber

String

15

shipAddrCity

String

50

Parte de la ciudad de la dirección de envío solicitada por el titular de la tarjeta.

NO

shipAddrCountry

String

3

País de la dirección de envío solicitada por el titular de la tarjeta.

NO

shipAddrLine1

String

50

Primera línea de la calle o parte local equivalente de la dirección de envío solicitada por el titular de la tarjeta.

NO

shipAddrLine2

String

50

Segunda línea de la calle o parte local equivalente de la dirección de envío solicitada por el titular de la tarjeta.

NO

shipAddrLine3

String

50

Tercera línea de la calle o parte local equivalente de la dirección de envío solicitada por el titular de la tarjeta.

NO

shipAddrPostCode

String

16

El código postal u otro código postal de la dirección de envío solicitada por el titular de la tarjeta.

NO

shipAddrState

String

3

El estado o provincia de la dirección de envío asociada con la tarjeta utilizada para esta compra.

NO

transType

String

2

Identifica el tipo de transacción que se autentica.

NO

workPhone

JSON Object

 

El número de teléfono del trabajo proporcionado por el titular de la tarjeta.

NO

cc

String

1–3

subscriber

String

15

acctID

String

64

Información adicional acerca de la cuenta proporcionada opcionalmente por el solicitante 3DS.

NO

acctInfo

Object

 

Información adicional sobre la cuenta del titular de la tarjeta proporcionada por el solicitante 3DS.

NO

acctType

String

2

Indica el tipo de cuenta. Por ejemplo, para un producto de tarjeta multi-cuenta.

NO

merchantRiskIndicator

Object

La evaluación del comerciante del nivel de riesgo de fraude para la autenticación específica tanto para el titular de la tarjeta como para la autenticación que se lleva acabo.

NO

deliveryEmailAddress

String

deliveryTimeframe

String

giftCardAmount

String

giftCardCount

String

giftCardCurr

String

preOrderDate

String

preOrderPurchaseInd

String

reorderItemsInd

String

shipIndicator

String

payTokenInd

Boolea n

True/false

Un valor de Verdadero indica que la transacción fue desmarcada antes de ser recibida por el ACS.

NO

threeDSRequestorAuthenticationInfo

Object

Información sobre cómo el solicitante 3DS autenticó al titular de la tarjeta antes o durante la transacción.

NO

threeDSReqAuthData

String

threeDSReqAuthMethod

String

threeDSReqAuthTimestamp

String

threeDSRequestorPriorAuthentication Info

Object

Información sobre cómo el solicitante 3DS autenticó al titular de la tarjeta como parte de una transacción 3DS anterior.

NO

threeDSReqPriorAuthData

String

threeDSReqPriorAuthMethod

String

threeDSReqPriorAuthTimest amp

String

threeDSReqPriorRef

String

broadInfo

Object

4096

Información no estructurada enviada entre el Servidor 3DS, el DS y el ACS.

Ejemplo

JSON
{
  "messageType": "pArq",
  "threeDSCompInd": "N",
  "acctNumber": "427831******3877",
  "threeDSRequestorID": "V3DSTSReqTestID",
  "threeDSRequestorName": "V3DSTSReqTestName",
  "cardExpiryDate": "2612",
  "deviceChannel": "02",
  "notificationURL": "https://requestor-challenge.api.alignet.io/tds-alignet-requestor-rest/api/v2/challenge",
  "messageCategory": "01",
  "messageVersion": "2.1.0",
  "threeDSRequestorAuthenticationInd": "01",
  "threeDSRequestorChallengeInd": "01",
  "acquirerBIN": "426029",
  "acquirerMerchantID": "104209",
  "cardholderName": "Challenge One",
  "transType":"01",
  "merchantCountryCode": "604",
  "purchaseAmount": "1",
  "purchaseCurrency": "840",
  "purchaseExponent": "2",
  "mcc": "1234",
  "merchantName": "BDS /https://interiors-boutique.com",
  "purchaseDate": "20230413094026",
  "purchaseNumber":"100010",
  "browserAcceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
  "browserIP": "1.12.123.255",
  "browserJavaEnabled": "true",
  "browserLanguage": "en",
  "browserColorDepth": "32",
  "browserScreenHeight": "1920",
  "browserScreenWidth": "1080",
  "browserTZ": "0",
  "browserUserAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0"
}

Response

Estos podrían ser diferentes objetos dependiendo de la versión del protocolo, si existió frictionless, challenge o hubo un error en la autenticación.

Parámetro

Tipo

Long.

Descripción

threeDSServerTransID

String

36

Identificador de transacción único universal asignado por el servidor 3DS para identificar una sola transacción.

Este campo reemplaza al valor del campo XID de la versión 1.1

acsChallengeMandated

String

1

Indicación de si se requiere un desafío para que la transacción sea autorizada debido a mandatos locales / regionales u otra variable:

  • Y = El challenge es obligatorio

  • N = El challenge no es obligatorio

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

acsOperatorID

String

32

DS asignado identificador de ACS. Cada DS puede proporcionar una ID única para cada ACS de forma individual.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

acsTransID

String

36

Identificador de transacción único universal asignado por el servidor ACS para identificar una sola transacción.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

acsURL

String

2048

URL completa del ACS que se utilizará para el desafío.

acsReferenceNumber

String

32

Identificador único asignado por el ACS.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

authenticationType

String

2

Indica el tipo de método de autenticación que el Emisor usará para desafiar al Titular de la Tarjeta, Este campo será enviado solo si la transacción termina como transStatus: C

  • 01 = Estático

  • 02 = Dinámico

  • 03 = OOB

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

authenticationValue

String

28

  • 01- PA: El valor específico del sistema de pago se proporciona como parte del registro de ACS para cada DS compatible. Este campo reemplazara al valor CAVV (Cardholder Authentication Verification Value) /AAV (AccountCardHolder Authentication Value). Este campo será enviado solo si la transacción termina como transStatus: Y o A.

  • 02- NPA: Condicional basado en las reglas de DS.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

cardholderInfo

String

128

Texto proporcionado por el ACS / Emisor al titular de la tarjeta durante una transacción sin Friction que no fue autenticada por el ACS. Este campo será opcional.

Por Ejemplo:” Se necesita autenticación adicional para esta transaccion. Comuníquese con (Nombre del emisor) al xxx-xxx-xxx”.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

dsReferenceNumber

String

32

Identificador único asignado por la marca para rastrear el DS aprobado.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

dsTransID

String

36

Identificador de transacción único universal asignado por el servidor DS para identificar una sola transacción.

Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

eci

String

2

El valor específico del sistema de pago proporcionado por el ACS para indicar los resultados del intento de autenticar al titular de la tarjeta. Este campo será enviado solo si la transacción termina como transStatus: Y/N/U/A/R.

Además, este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

messageExtension

Array

81920 bytes

Los datos necesarios para cumplir con los requisitos no definidos de otra manera en el mensaje 3-D Secure se transmiten en una extensión de mensaje. Este campo es opcional dependiendo del DS de la marca y contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

messageType

String

4

Identifica el tipo de mensaje que se pasa:

  • Pars

  • Erro

messageVersion

String

5–8

Identificador de la versión del protocolo Este será el número de versión del protocolo de la especificación utilizada por el sistema que crea este mensaje.

transStatus

String

1

Indica si una transacción califica como una transacción autenticada o verificación de cuenta.

  • Y = Autenticación / Verificación de cuenta exitosa.

  • N = No autenticado / Cuenta no verificada; Transacción denegada.

  • U = No se pudo realizar la autenticación / verificación de cuenta; Problema técnico u otro, como se indica en ARes o RReq.

  • A = Intentos de procesamiento realizado; No autenticado / verificado, pero se proporciona una prueba de intento de autenticación / verificación.

  • C = Desafío requerido; Se requiere autenticación adicional usando CReq / CRes.

  • R = Autenticación / Verificación de cuenta rechazada; El emisor rechaza la autenticación / verificación y solicita que no se intente la autorización.

transStatusReason

String

2

Proporciona información sobre por qué el campo Estado de transacción tiene el valor especificado.

Para 01-PA, obligatorio si el campo transStatus = N, U o R.

Para 02-NPA, condicional según lo definido por el DS:

  • 01 = Card authentication failed

  • 02 = Unknown Device

  • 03 = Unsupported Device

  • 04 = Exceeds authentication frequency limit

  • 05 = Expired card

  • 06 = Invalid card number

  • 07 = Invalid transaction

  • 08 = No Card record

  • 09 = Security failure

  • 10 = Stolen card

  • 11 = Suspected fraud

  • 12 = Transaction not permitted to cardholder

  • 13 = Cardholder not enrolled in service

  • 14 = Transaction timed out at the ACS

  • 15 = Low confidence

  • 16 = Medium confidence

Además, Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

vci

 String

4

Campo que identifica como termino la autenticación de manera específica:

  • TSYS = Autenticación exitosa Sin Fricción

  • TSAS = Intento (Tarjeta no enrolada/Emisor no disponible)

  • TSNS = Fallido, No Autenticado, Denegado Intento (No permite Intentos)

  • TSRS = Autenticación Rechazada

  • TSUS = Autenticación Incompleta Sin Fricción

Este campo será enviado solo si la transacción termina como transStatus: Y/N/U/A/R.

Además, Este dato contendrá un valor si únicamente se supere la validación (blanco o nulo, formato o longitud permitida) de los campos enviados por la pasarela en el mensaje PArq.

errorCode

String

3

Este campo se enviará vacío

 

errorComponent

 

String

 

1

 

Este campo se enviará vacío

errorDescription

String

2048

Este campo se enviará vacío

errorDetail

String

2048

Este campo se enviará vacío

errorMessageType

String

4

Este campo se enviará vacío

Si el valor del campo transStatus es igual a C, se deberá iniciar el proceso de Autenticación con Challenge.

Si el valor del campo transStatus es igual a Y o A, se acaba el proceso de Autenticación y los datos requeridos de Autenticación para Autorizar se enviarán en el API Autorizar con Autenticacion PayIn Tarjeta eCommerce.

Ejemplo tranStatus R

JSON
{
    "threeDSServerTransID": "f281382d-7757-41d2-9248-d6f4adf242fb",
    "acsTransID": "e95bf31b-d133-4a2d-9fb3-8e08133b64f9",
    "acsReferenceNumber": "3DS_LOA_ACS_TILS_020100_00136",
    "acsOperatorID": "10057951",
    "acsURL": null,
    "authenticationType": null,
    "authenticationValue": null,
    "acsChallengeMandated": null,
    "dsReferenceNumber": "VISA.V 17 0003",
    "dsTransID": "e4ca571a-5f4f-4f49-9ef7-6860d2cc6842",
    "eci": "07",
    "vci": "TSRS",
    "messageType": "pArs",
    "messageVersion": "2.1.0",
    "transStatus": "R",
    "p_messageVersion": "1.0.5",
    "errorCode": "",
    "errorComponent": "",
    "errorDescription": "",
    "errorDetail": "",
    "errorMessageType": ""
}

Ejemplo tranStatus C

CODE
{
    "threeDSServerTransID": "30cc899b-8c39-4428-b278-4b3deb7197c0",
    "acsTransID": "da688615-bacd-4b3e-a2e2-9cbbf85a44d2",
    "acsReferenceNumber": "3DS_LOA_ACS_TILS_020100_00136",
    "acsOperatorID": "10057951",
    "acsURL": "https://acs.kapital24.uz:9605/browser",
    "authenticationType": "02",
    "authenticationValue": null,
    "acsChallengeMandated": "Y",
    "dsReferenceNumber": "VISA.V 17 0003",
    "dsTransID": "dda37e1e-5bf2-42c4-845d-7c61ef769b04",
    "eci": "07",
    "vci": "TSC",
    "messageType": "pArs",
    "messageVersion": "2.1.0",
    "transStatus": "C",
    "p_messageVersion": "1.0.5",
    "errorCode": "",
    "errorComponent": "",
    "errorDescription": "",
    "errorDetail": "",
    "errorMessageType": ""
}
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.