(POST /all-in-one)
Autenticación mediante CES (Comercio Electrónico Seguro). Permite realizar ventas autorizadas por la propia entidad emisora de la tarjeta, realizando un proceso de autenticación del propietario de la misma. Dicho proceso varía según la entidad.
Payload
-
amount (string, required): Importe de la operación
1000
-
currency (string, required): Será vida cualquier moneda definida según el ISO_4217
EUR
-
order (string): Ticket de la operación
sipay-order-001
-
pan (string): Número de la tarjeta
6712009000000458
-
month (string): Mes de expiración de la tarjeta
12
-
year (string): Año de expiración de la tarjeta
2017
-
reconciliation (string): Identificador para la conciliación bancaria (p37)
1234sipay
-
operation (enum[string], required): Operación a realizar
authorization
: Ventapreauthorization
: Preautorizaciónall-in-one
: PSD2
-
token(string): Código alfanumérico asociado a los datos de la tarjeta. Sirve para almacenar los datos de la tarjeta en la boveda segura y facilitar las futuras operaciones con dicha tarjeta sin que los datos de la misma tengan que volver a viajar por la red, securizando así el proceso de compra.
sipay-token-prueba-359ef8ce5c5f4003b71692e446908c27
* No será posible tokenizar una tarjeta sin haber completado un protocolo SCA (Strong Customer Authentication) como es el protocolo 3DS 2.X. Por ello, no es posible tokenizar mediante operaciones procesadas como exención. fastpay(object):- request_id(string): Identificador de tarjeta devuelto por FastPay
- formato: [0-9a-fA-F]
- longitud: 32
- request_id(string): Identificador de tarjeta devuelto por FastPay
-
catcher (object):
{"token": "1b5925567684485eb1590c105cf8c9ba"}
-
custom_01 (string): Campo personalizable
custom_001
-
custom_02 (string): Campo personalizable
custom_002
-
url_ok(string, required): URL a la que se redireccionará en caso de que la operación sea correcta. A esta URL le será añadido un parámetro en el query-string llamado request_id, este identificador será necesario para la confirmación de la venta
https://exmaple_url.com/?request_id=12346598
-
url_ko(string, required): URL a la que se redireccionará en caso de que la operación no haya sido correcta. A esta URL le será añadido un parámetro en el query-string llamado request_id
https://exmaple_url.com/?request_id=12346598
y otro llamado error que contendrá un literal definiendo la posible causa de errorunavailable_service
-
url_allow_fragments(bool): Este campo indica como se deben tratar las URLs de redireccionamiento. En caso de que la URL tenga definido un fragmento/sección en la path de la URL i.e. https://example.es/#/path?param1=value1 este campo debe tener como valor
false
.- valor por defecto: true
-
moto (enum[string]): Este campo permite realizar operaciones sujetas a la exención Mail Order (mail) & Telephone Order (phone), permitiendo seguir haciendo cargos sólo con la numeración de la tarjeta y sin doble autenticación:
mail
: mail orderphone
: telephone order
-
sca_exemptions (enum[string]): exenciones disponibles:
Parámetro | Exención | Descripción |
---|---|---|
LWV | Low Value Exemption | Las transacciones inferiores a 30 euros no requieren SCA, pero el banco emisor llevará un registro de determinados contadores, como el número de transacciones o la suma de los importes de las mismas. Si las transacciones del comprador de una tarjeta superan el contador, por ejemplo, después de cinco transacciones consecutivas o si la suma supera los 100 euros, el banco emisor requerirá SCA. |
TRA | Low Risk / Transaction Risk Analysis | Los bancos emisores pueden considerar las transacciones como de bajo riesgo basándose en los niveles medios de fraude del emisor de la tarjeta, o del adquirente que procesa la transacción, o de ambos. |
COR | Secure Corporate Payments | Se trata de pagos realizados a través de procesos corporativos dedicados iniciados por empresas y no disponibles para los consumidores. Ejemplos de ello son los pagos realizados a través de cuentas centrales de viajes, tarjetas de alojamiento, tarjetas virtuales y tarjetas corporativas seguras, como las que se utilizan en un sistema de gestión de viajes corporativos. |
MIT | Merchant Iniciated Transactions | Los pagos realizados con tarjetas guardadas cuando el cliente no está presente en el flujo de salida (a veces llamado "fuera de sesión") pueden calificarse como transacciones iniciadas por el comerciante. Estos pagos técnicamente están fuera del alcance de SCA. En la práctica, marcar un pago como "Merchant Iniciated Transaction" será similar a solicitar una exención. Y como cualquier otra exención, seguirá correspondiendo al banco decidir si es necesario autenticar la transacción. Para utilizar las transacciones iniciadas por el comerciante, será necesario autenticar la tarjeta cuando se guarde o en el primer pago. Por último, será necesario obtener un acuerdo del cliente (también denominado "mandato"), para poder realizar el cargo en su tarjeta más adelante. |
- reason (enum[string]): motivos disponibles para MIT:
Parámetro | Razón/Motivo | Descripción |
---|---|---|
R | Recurring | Transacciones procesadas a intervalos fijos y regulares que no excedan de un año entre transacciones, que representan un acuerdo entre el titular de una tarjeta y un comerciante para adquirir bienes o servicios proporcionados durante un período de tiempo. |
I | Installments | Los pagos a plazos describen la compra única de bienes o servicios facturados al titular de la tarjeta en múltiples transacciones durante un período de tiempo acordado por el titular de la tarjeta y el comerciante. |
C | Compra única | Se trata de una transacción que utiliza una credencial almacenada por un importe fijo o variable que no se produce en una fecha de transacción programada o regular, en la que el titular de la tarjeta ha dado su consentimiento para que el comerciante inicie una o más transacciones futuras que no son iniciadas por el titular de la tarjeta. |
D | Delayed charge | El cargo por demora se suele utilizar en hoteles, líneas de cruceros y entornos de alquiler de vehículos para realizar un cargo suplementario en la cuenta después de la prestación de los servicios originales. |
E | Resubmision | Se trata de un hecho que se produce cuando se produce la compra original, pero el comerciante no pudo obtener la autorización en el momento en que se suministraron los bienes o servicios. |
H | Reauthorization | Una reautorización es una compra realizada después de la compra original y puede reflejar una serie de condiciones específicas. Los escenarios más comunes incluyen envíos retrasados o fraccionados y estancias o alquileres prolongados. |
M | Incremental | En los entornos de hoteles y de alquiler de automóviles suele haber una autorización incremental, en la que el titular de la tarjeta ha aceptado pagar por cualquier servicio prestado durante la duración del contrato. |
N | No show | Un "No-show" es una transacción en la que el comerciante está habilitado para cobrar por los servicios que el titular de la tarjeta celebró un acuerdo de compra, pero no cumplió con los términos del acuerdo. |
Ejemplo petición - Integración API
{
"key": "589365da65c48cff87d0874a",
"resource": "359ef8ce5c5f4003b71692e446908c27",
"nonce": "1234567890",
"mode": "sha256",
"payload": {
"amount": "100",
"currency": "EUR",
"pan": "6712009000000458",
"month": "12",
"year": "2020",
"cvv": "123",
"reconciliation": "1234sipay",
"operation": "all-in-one",
"url_ok": "https://en9vkyegnzvfb.x.pipedream.net/",
"url_ko": "https://en9vkyegnzvfb.x.pipedream.net/",
"order": "Psd2-1",
"custom_01": "custom-001",
"custom_02": "custom-002"
}
}
Ejemplo petición - Integración Fast Pay
{
"key": "589365da65c48cff87d0874a",
"resource": "359ef8ce5c5f4003b71692e446908c27",
"nonce": "1234567890",
"mode": "sha256",
"payload": {
"amount": "100",
"currency": "EUR",
"reconciliation": "1234sipay",
"operation": "all-in-one",
"url_ok": "https://en9vkyegnzvfb.x.pipedream.net/",
"url_ko": "https://en9vkyegnzvfb.x.pipedream.net/",
"order": "Psd2-1",
"custom_01": "custom-001",
"custom_02": "custom-002",
"fastpay": {
"request_id": "c29ba33a0fc7492985e8d0ecc42be8bf"
}
}
}
Si la tarjeta empleada en la operación admite operaciones DCC, consultar la sección Ejemplos de flujos de pago, apartado 4, Venta DCC.
NOTA: cabe destacar que el envío de peticiones que traten de ser aplicadas como exención no asegura que ésta vaya a ser efectiva. Esta decisión es formalizada por las entidades. De cara a minimizar las posibilidades de que no se acepte una exención es posible enviar datos adicionales, documentados en la sección Campos adicionales.
Success - 0
- url (string): URL de redireccionamiento a la entidad autenticadora
https://sandbox.sipay.es/mdwr/v1/redsys/5901ba6d77170014a2c89/
Ejemplo respuesta
{
"type": "success",
"detail": "authentication",
"uuid": "2df61337-c0c5-4b90-ab8c-6098c8b118ce",
"payload": {
"url": "https://sandbox.sipay.es/mdwr/v1/redsys/5901ba6d77170014a2c89/"
},
"request_id": "5901ba6d7710014a2c89",
"code": "0",
"description": "Authentication processed successfully"
}
Datos adicionales PSD2 EMV3DS
A continuación se muestran campos adicionales que pueden ser añadidos a las llamadas expuestas en la presente documentación. Esta información será utilizada por las entidades de cara a analizar las exenciones, entre otros. El envío de estos datos es altamente recomendado para permitir autenticaciones basadas en análisis del riesgo (Risk Based Analysis) y facilitar una experiencia de compra sin fricción (frictionless). Igualmente recomendable si se solicita la aplicación de exenciones SCA-PSD2 (por ejemplo, MIT-R).
Ejemplo
{
. . .
"payload": {
"emv3ds": {
"account_additional_info": "more info",
"account_info": {
"account_age_indicator": "02",
"account_modification_date": "03032022",
"account_modification_indicator": "02",
"account_creation_date": "01012022",
"account_pw_change_date": "02022022",
"account_pw_change_indicator": "01",
"account_purchase_number": "20",
"transactions_day": "1",
"transactions_year": "4",
"account_age_date": "01022022",
"pay_account_creation_date": "03012022",
"pay_account_indicator": "01",
"address_first_use_date": "01012022",
"address_first_use_indicator": "01",
"shipment_name_indicator": "01",
"suspicious_activity_indicator": "02"
},
"addresses_match": "N",
"billing_city": "Mississippi",
"billing_country": "020",
"billing_address_1": "calle cualquiera",
"billing_address_2": "piso cualquiera",
"billing_address_3": "puerta cualquiera",
"billing_postcode": "28080",
"cardholder_mobile_phone": {
"prefix": "1",
"number": "666778899"
},
"cardholder_home_phone": {
"prefix": "11",
"number": "666778899"
},
"cardholder_work_phone": {
"prefix": "111",
"number": "666778899"
},
"merchant_risk_indicator": {
"delivery_email_address": "paco@paco.com",
"delivery_timeframe": "02",
"amount_in_giftcards": "10",
"amount_of_giftcards": "01",
"preorder_date": "20211220",
"preorder_availability_indicator": "01",
"reorder_indicator": "02",
"shipping_indicator": "01"
},
"shipping_city": "trololo",
"shipping_country": "100",
"shipping_address_1": "mi calle 4",
"shipping_address_2": "mi casa 3",
"shipping_address_3": "mi piso 2",
"shipping_postcode": "02"
}
}
. . .
}
Referencia de campos adicionales
Atributo JSON (string) | Longitud String | Descripción |
---|---|---|
account_additional_info | Información adicional sobre el usuario | |
account_info | Información de la cuenta | |
account_age_indicator | 2/A-N | Periodo de tiempo que el titular de la tarjeta ha tenido la cuenta en el comercio: 01=Sin cuenta (guest check-out); 02=Creada durante la transacción; 03=Menos de 30 días; 04=30-60 días; 05=Más de 60 días |
account_modification_date | 8/N | Fecha en que se modificó por última vez la cuenta del titular de la tarjeta en el comercio, incluida la dirección de facturación o de envío, la nueva cuenta de pago o los nuevos usuarios agregados. Formato: YYYYMMDD |
account_modification_indicator | 2/A-N | Período de tiempo transcurrido desde que se modificó por última vez la información de la cuenta del titular de la tarjeta en el comercio, incluida la dirección de facturación o de envío, la nueva cuenta de pago o los nuevos usuarios agregados: 01=Modificado en esta transacción; 02=Menos de 30 días; 03=30-60 días; 04=Más de 60 días |
account_creation_date | 9/N | Fecha en que el titular de la tarjeta abrió la cuenta en el comercio. Formato: YYYYMMDD |
account_pw_change_date | 8/N | Fecha en que el titular tuvo un cambio de contraseña en la cuenta del comercio o un restablecimiento de la cuenta. Formato: YYYYMMDD |
account_pw_change_indicator | 2/A-N | Indicador de cambio de contraseña: 01=Sin cambios; 02=Cambió durante esta operación; 03=Menos de 30 días; 04=30-60 días; 05=Más de 60 días |
account_purchase_number | 4/N | Número de compras con esta cuenta durante los últimos seis meses |
transactions_day | 3/N | Número de transacciones (exitosas y abandonadas) para esta cuenta del titular de la tarjeta en el comercio en todas las cuentas de pago en las últimas 24 horas |
transactions_year | 3/N | Número de transacciones (exitosas y abandonadas) para esta cuenta del titular de la tarjeta en el comercio en todas las cuentas de pago del año anterior |
account_age_date | 8/N | Fecha en que la cuenta de pago se inscribió en la cuenta del titular de la tarjeta en el comercio. Formato: YYYYMMDD |
pay_account_creation_date | 8/N | Fecha en que la cuenta de pago se inscribió en la cuenta del titular de la tarjeta en el comercio. Formato: YYYYMMDD |
pay_account_indicator | 2/A-N | Indica el período de tiempo que la cuenta de pago se inscribió en la cuenta del titular de la tarjeta en el comercio: 01=Sin cuenta (guest check-out); 02=Durante la transacción; 03=Menos de 30 días; 04=30-60 días; 05=Más de 60 días |
address_first_use_date | 8/N | Fecha en que la dirección de envío utilizada para esta transacción se utilizó por primera vez con el comercio. Formato: YYYYMMDD |
address_first_use_indicator | 2/A-N | Indica cuándo la dirección de envío utilizada para esta transacción se utilizó por primera vez con el comercio: 01=Esta transacción; 02=Menos de 30 días; 03=30-60 días; 04=Más de 60 días |
shipment_name_indicator | 2/A-N | Indica si el Nombre del titular de la tarjeta en la cuenta es idéntico al Nombre de envío utilizado para esta transacción: 01=Nombre de la cuenta idéntico al nombre del envío; 02=Nombre de la cuenta diferente al nombre de envío |
suspicious_activity_indicator | 2/A-N | Indica si el comercio ha experimentado actividad sospechosa (incluido fraude anterior) en la cuenta del titular de la tarjeta: 01=No se han observado actividades sospechosas; 02=Se han observado actividades sospechosas |
addresses_match | 1/A-N | Indicador de coincidencia de dirección |
billing_city | 50/A-N | Ciudad de la dirección de facturación |
billing_country | 3/N | País de la dirección de facturación |
billing_address_1 | 50/A-N | Dirección de facturación (linea 1) |
billing_address_2 | 50/A-N | Dirección de facturación (linea 2) |
billing_address_3 | 50/A-N | Dirección de facturación (linea 3) |
billing_postcode | 16/A-N | Código postal de la dirección de facturación |
cardholder_mobile_phone | Teléfono móvil del dueño de la tarjeta | |
prefix | 1-3/N | Indicativo del pais correspondiente al número de teléfono, según |
number | 15/N | Numeración correspondiente al número de teléfono |
cardholder_home_phone* | Teléfono fijo del dueño de la tarjeta | |
prefix | 1-3/N | Indicativo del pais correspondiente al número de teléfono, según |
number | 15/N | Numeración correspondiente al número de teléfono |
cardholder_work_phone | Teléfono corporativo del dueño de la tarjeta | |
prefix | 1-3/N | Indicativo del pais correspondiente al número de teléfono, según |
number | 15/N | Numeración correspondiente al número de teléfono |
merchant_risk_indicator | JSON object | Indicador de riesgo del comerciante |
delivery_email_address | 254/A-N | Para la entrega electrónica, la dirección de correo electrónico a la que se entregó la mercancía |
delivery_timeframe | 2/A-N | Indica el plazo de entrega de la mercancía: 01=Envío electrónico; 02=Entrega en el mismo día; 03=Entrega de la noche a la mañana (overnight shipping); 04=Dos o más días para la entrega |
amount_in_giftcards | 15/A-N | Para compras de tarjetas prepago o tarjetas regalo, el importe total de la compra en unidades principales (por ejemplo, USD 123.45 es 123) |
amount_of_giftcards | 2/N | Para a compras de tarjeta prepago o tarjetas regalo, recuento total de tarjetas prepago o tarjetas/códigos regalo comprados |
preorder_date | 8/N | Para una compra preordenada, la fecha prevista de disponibilidad de la mercancía. Formato: YYYYMMDD |
preorder_availability_indicator | 2/A-N | Indica si el titular de la tarjeta realiza un pedido con disponibilidad o fecha de lanzamiento futuros. Valores aceptados: 01=Pedido disponible; 02=Disponible próximamente |
reorder_indicator | 2/A-N | Indica si el titular de la tarjeta está reordenando mercancía comprada previamente: 01=Orden creada por primera vez; 02=Reordenado |
shipping_indicator | 2/A-N | Indica el método de envío elegido para la transacción. Los comercios deben elegir el código del indicador de envío que describa con mayor precisión la transacción específica del titular de la tarjeta, no su actividad comercial en general. Si se incluyen uno o más artículos en la venta, utilice el código del Indicador de envío para los bienes físicos, o si todos los productos son digitales, utilice el código del Indicador de envío que describe el artículo más caro: 01=Envío a la dirección del dueño de la tarjeta; 02=Envío a otra dirección verificada en los archivos del comerciante; 03=Envío a una dirección diferente a la del dueño de la tarjeta; 04=“Ship to Store” / Recogida en el local (la dirección de la tienda se rellenará en los campos de dirección de envío); 05=Bienes digitales (incluye servicios en línea, tarjetas electrónicas de regalo y códigos canjeables); 06=Billetes de viaje y de eventos, no enviados; 07=Otros (por ejemplo, videojuegos, servicios digitales no enviados, suscripciones a emedia, etc.) |
shipping_city | 50/A-N | Ciudad de la dirección de envío |
shipping_country | 3/N | País de la dirección de envío |
shipping_address_1 | 50/A-N | Dirección de envío (linea 1) |
shipping_address_2 | 50/A-N | Dirección de envío (linea 2) |
shipping_address_3 | 50/A-N | Dirección de envío (linea 3) |
shipping_postcode | 16/A-N | Código postal de la dirección de envío |
Ejemplos
1. Autorización con autenticación
El siguiente ejemplo muestra el flujo necesario para la consecución de una venta simple mediante protocolo 3DS y PSD2 compliance.
1.1. Obtener URL de autenticación
POST /all-in-one request |
---|
|
POST /all-in-one response |
|
Success - 0
- payload.url (string): URL de redireccionamiento a la entidad autenticadora
https://sandbox.sipay.es/mdwr/v1/redsys/5901ba6d77170014a2c89/
1.2. Confirmación y captura de fondos
POST /all-in-one/confirm request |
---|
|
POST /all-in-one/confirm response |
|
Success - 0 - authentication
- code (string, required): Código interno de la operación. Dirigirse a Códigos de respuesta
0
- amount (string, required): Importe de la operación
1000
- currency (string, required): Moneda utilizada en la operación
EUR
- order (string, required): Ticket de la operación
sipay-order-001
- reconciliation (string, required): Identificador para la conciliación bancaria
1234-sipay
- card_trade (string, required): Emisor de la tarjeta. Solicite más información.
undefined
- card_type (string, required): Tipo de la tarjeta. Solicite más información.
undefined
- masked_card (string, required): Número de la tarjeta enmascarado
6712 00** ****0205
- transaction_id (string, required): Identificador de la transacción.
000024899463550243139
- sequence (string, required):
1131238
- authorizator (string, required): Entidad autorizadora de la operación
BANCO SANTANDER, S.A.
- approval (string, required): Código de aprobación de la entidad
346179
2. Autorización con autenticación con almacenamiento de tarjeta (tokenización)
A continuación se muestra el flujo necesario para completar una venta 3DS PSD2 compliance y guardado en bóveda de la tarjeta (tokenización).
POST /all-in-one request |
---|
|
POST /all-in-one response |
|
Success - 0
- url (string): URL de redireccionamiento a la entidad autenticadora
https://sandbox.sipay.es/mdwr/v1/redsys/5901ba6d77170014a2c89/
2.2. Confirmación de autenticación
POST /all-in-one/confirm request |
---|
|
POST /all-in-one/confirm response |
|
Success - 0 - authentication
- token: Nombre del token asociado a la tarjeta guardada en bóveda.
3. Autorización con autenticación desde una tarjeta almacenada (tokenizada)
El siguiente flujo muestra la operativa necesaria para completar una venta 3DS PSD2 compliance a través de una tarjeta previamente guardada en bóveda (tokenizada), se trata de una operación CIT (Customer Iniciated Transaction).
3.1. Autenticación con tokenización PSD2 compliance
POST /all-in-one/confirm request |
---|
|
POST /all-in-one/confirm response |
|
Success - 0
- url (string): URL de redireccionamiento a la entidad autenticadora
https://sandbox.sipay.es/mdwr/v1/redsys/5901ba6d77170014a2c89/
3.2. Confirmación y captura de fondos
POST /all-in-one/confirm request |
---|
|
POST /all-in-one/confirm response |
|
Success - 0 - authentication
- token: Nombre del token asociado a la tarjeta guardada en bóveda.
4. Autorización con exención MIT R
A continuación se muestra el flujo necesario para completar una venta con tarjeta PSD2 compliance aplicando una exención "MIT" (Merchant Initiated Transaction) con motivo de venta recurrente (R). Mediante esta exención es posible completar flujos de pago iniciado por el comercio sin realizar la autenticación 3DS siempre y cuando la entidad lo permita.
La tarjeta previamente se tiene que haber tokenizado y autenticado mediante otro proceso separado.
Se deberá especificar "sca_exemptions": "MIT" y "reason": "R", permitiendo realizar la llamada /all-in-one/confirm sin consumir la url (string) generalmente provista por la llamada /all-in-one ya que ésta no debe ser devuelta.
4.1. Obtener ID de petición: request_id
POST /all-in-one request |
---|
|
POST /all-in-one response |
|
Success - 0
- request_id (string): ID de petición necesario para la operación de confirmación.
4.2. Confirmación y captura de fondos
POST /all-in-one/confirm request |
---|
|
POST /all-in-one/confirm response |
|
Success - 0 - authentication
- code (string, required): Código interno de la operación. Dirigirse a Códigos de respuesta
0
- amount (string, required): Importe de la operación
1000
- currency (string, required): Moneda utilizada en la operación
EUR
- order (string, required): Ticket de la operación
sipay-order-001
- reconciliation (string, required): Identificador para la conciliación bancaria
1234-sipay
- card_trade (string, required): Emisor de la tarjeta. Solicite más información.
undefined
- card_type (string, required): Tipo de la tarjeta. Solicite más información.
undefined
- masked_card (string, required): Número de la tarjeta enmascarado
6712 00** ****0205
- transaction_id (string, required): Identificador de la transacción.
000024899463550243139
- sequence (string, required):
1131238
- authorizator (string, required): Entidad autorizadora de la operación
BANCO SANTANDER, S.A.
- approval (string, required): Código de aprobación de la entidad
346179
OTA - Online Travel Agency
Esta API le permitirá a sectores de agencias de viajes, aerolíneas y hoteles procesar sus operaciones sin que el cliente presente y con las garantías de una autenticación delegada.
La llamada que se debe realizar será igual a una autenticación con "previously_authenticated" : true
y con el identificador de token y realizar su confirmación.
Con datos de autenticación
Cuando se disponen de los datos de la autenticación previa, se debe añadir a la llamada el objeto "authentication_data"
.
El objecto "authentication_data"
debe contener los siguientes campos:
-
cryptogram[string]: Criptograma de la autenticación.
-
cryptogram_type[enum[string]]: Posibles valores:
- CAVV
- AEVV
- UCAF
-
ds_transaction_id[string]: Identificador de la transacción.
-
eci[string]: El indicador de comercio electrónico es un valor devuelto por Visa, MasterCard, JCB y American Express que indica el resultado del intento de autenticación en las transacciones aplicadas por 3DS.
-
Posibles valores para Visa, American Express y JCB:
- 05: La autenticación 3DS se ha realizado con éxito; las transacciones están protegidas por 3DS.
- 06: La autenticación 3DS se ha intentado pero no se ha completado o no se ha podido completar; las posibles razones son que la tarjeta o su Banco Emisor aún no se han enrolado en 3DS.
- 07: La autenticación 3DS ha fallado o no ha podido ser intentada; las posibles razones son que tanto la tarjeta como el Banco Emisor no están protegidos por 3DS, errores técnicos o una configuración incorrecta.
-
Posibles valores para MasterCard:
- 02: La autenticación 3DS se ha realizado con éxito; tanto la tarjeta como el Banco Emisor están protegidos por 3DS.
- 01: La autenticación 3DS se ha intentado pero no se ha completado o no se ha podido completar; las posibles razones son que la tarjeta o su Banco Emisor aún no se han enrolado en 3DS, o que el titular de la tarjeta se ha quedado sin tiempo para autorizar.
- 00: La autenticación 3DS ha fallado o no se ha podido intentar; las posibles razones son que tanto la tarjeta como el Banco Emisor no están protegidos por 3DS, errores técnicos o una configuración incorrecta.
-
Ejemplo petición inicial
{
"key": "key_value",
"resource": "resource_value",
"nonce": "1234567890",
"mode": "sha256",
"payload": {
"amount": "0",
"currency": "EUR",
"pan": "4242424242424242",
"month": "12",
"year": "25",
"cvv": "123",
"operation": "all-in-one",
"url_ok": "https://httpbin.org/anything?what=ok",
"url_ko": "https://httpbin.org/anything?what=ko",
"order": "OTAS_ejemplo",
"token": "Mi_token_ejemplo_otas",
"previously_authenticated": "true",
"authentication_data": {
"cryptogram": "ALnt+yWSJdXBACMLLWMNGgADFA==",
"cryptogram_type": "CAVV",
"ds_transaction_id": "222225555",
"eci": "2"
}
}
}
Ejemplo respuesta petición inicial
{
"type": "success",
"code": "0",
"detail": "authentication",
"description": "Authentication processed successfully",
"payload": {
"request_id": "61c996fc7b3f710001d24227"
},
"uuid": "787e7e33-27ee-47bd-b0ae-1fc2243a8356"
}
Ejemplo petición cofirmación
{
"key": "key_value",
"resource": "resource_value",
"nonce": "1234567890",
"mode": "sha256",
"payload": {
"request_id": "61c996fc7b3f710001d24227",
"previously_authenticated": "true"
}
}
Ejemplo respuesta petición confirmación
{
"type": "success",
"code": "0",
"detail": "authorization",
"description": "Authorization processed successfully",
"payload": {
"code": "0",
"amount": "1",
"currency": "EUR",
"order": "OTAS_ejemplo",
"card_trade": "consumer",
"card_type": "mixed",
"masked_card": "4242 42** ****4242",
"reconciliation": "",
"transaction_id": "000027346264324635666",
"cof_id": "792021361451350",
"authorizator": "CAIXABANK, S.A.",
"approval": "227334",
"card_country": 724,
"card_brand": "VISA",
"token": "Mi_token_ejemplo_otas"
},
"uuid": "f871037d-c68c-43cf-948e-cdd78105c5c5",
"request_id": "61c9983c7b3f710001d24228"
}
Sin datos de autenticación
Si no se disponen de los datos de la autenticación previa de la tarjeta se debe añadir el campo "moto" = "phone"
y el campo "amount" = 0
.
Ejemplo petición inicial
{
"key": "key_value",
"resource": "resource_value",
"nonce": "1234567890",
"mode": "sha256",
"payload": {
"amount": "0",
"currency": "EUR",
"pan": "4242424242424242",
"month": "12",
"year": "25",
"cvv": "1223",
"operation": "all-in-one",
"token": "Mi_token_ejemplo2_otas",
"url_ok": "https://httpbin.org/anything?what=ok",
"url_ko": "https://httpbin.org/anything?what=ko",
"order": "OTAS_ejemplo2",
"previously_authenticated": "true",
"moto": "phone"
}
}
Ejemplo respuesta petición inicial
{
"type": "success",
"code": "0",
"detail": "authentication",
"description": "Authentication processed successfully",
"payload": {
"request_id": "61c996fc7b3f710001d24227"
},
"uuid": "787e7e33-27ee-47bd-b0ae-1fc2243a8356"
}
Ejemplo petición cofirmación
{
"key": "key_value",
"resource": "resource_value",
"nonce": "1234567890",
"mode": "sha256",
"payload": {
"request_id": "61c996fc7b3f710001d24227",
"previously_authenticated": "true"
}
}
Ejemplo respuesta petición confirmación
{
"type": "success",
"code": "0",
"detail": "authorization",
"description": "Authorization processed successfully",
"payload": {
"code": "0",
"amount": "0",
"currency": "EUR",
"order": "OTAS_ejemplo2",
"card_trade": "consumer",
"card_type": "mixed",
"masked_card": "4242 42** ****4242",
"reconciliation": "",
"transaction_id": "000027346264324635666",
"cof_id": "792021361451350",
"authorizator": "CAIXABANK, S.A.",
"approval": "227334",
"card_country": 724,
"card_brand": "VISA",
"token": "Mi_token_ejemplo2_otas"
},
"uuid": "f871037d-c68c-43cf-948e-cdd78105c5c5",
"request_id": "61c9983c7b3f710001d24227"
}