3RI - Requestor-Initiated Authentication
Esta guía está destinada a los comerciantes PCI-DSS que utilizan nuestra API para realizar la autenticación.
La versión 2.2 del protocolo 3-D Secure introduce la autenticación iniciada por el comerciante o"3DS Requestor initiated (3RI) authentications".
3RI se utiliza sobre todo:
- para pagar una de las cuotas de una suscripción
- con pagos MOTO
El caso de uso lo determina el valor de los campospaymentSource
,useCase
YtransactionInitiator
.
A continuación se muestran algunos ejemplos de cómo utilizarlo. 3RI :
Casos de uso | Etapa del pago | useCase | paymentSource | transactionInitiator |
---|---|---|---|---|
Suscripción con frecuencia y monto fijos. | Pago de una cuota determinada | RECURRING_FIXED_TOTALAMOUNT | EC | MERCHANT |
Suscripción con frecuencias y/o montos fijos. | Pago de una cuota determinada | RECURRING_ VARIABLE_TOTAL_AMOUNT | EC | MERCHANT |
Pago por correo | Pago | PAYMENT | MAIL_ORDER | n/a |
Pago por teléfono | Pago | PAYMENT | TELEPHONE_ORDER | n/a |
Principio de funcionamiento
El principio general se aplica a las autenticaciones "3RI".
Una sola llamada al servicio WebPCI/Charge/AuthenticateEl vendedor no debe procesar ninguna instruccióndevice
ni transmitir ningún objeto.
Lista de campos relativos a3RI:
APELLIDO | Descripción | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
amount | Entero| Longitud: 1-12 |OBLIGATORIO Monto de la transacción expresado en la fracción más pequeña de la moneda (por ejemplo: 30050 por 300,50 PEN). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
currency | Cadena| Longitud: 3 |OBLIGATORIO Código de moneda según ISO 4217 alfa-3 (por ejemplo: “PEN” para sol peruano). Valores posibles
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productType | enumeración|Opcional Tipo de producto correspondiente en la transacción. Valores posibles
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
transactionCategory | enumeración| Categoría de la transacción. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
paymentSource | enumeración OBLIGATORIO Origen del pago. Valores posibles
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
transactionInitiator | enumeración|Opcional Iniciador de la transacción. Valores posibles
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useCase | enumeración|OBLIGATORIO Casos de uso de la transacción. Valores posibles
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
customer | objeto JSON|OBLIGATORIO Objeto que contiene la información del comprador. Detalles del objeto
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
device | objeto JSON| Objeto que contiene la información del navegador. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
paymentForm | objeto JSON|OBLIGATORIO Objeto que contiene los datos de la tarjeta. Detalles del objeto
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
protocolRequest | objeto JSON|OBLIGATORIO Objeto que contiene la información del protocolo de autentificación. Detalles del objeto
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
merchant | objeto JSON|OBLIGATORIO Objeto que contiene los detalles del contrato. Detalles del objeto
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
recurring | objeto JSON|Opcional Objeto que contiene la información de la suscripción. Detalles del objeto
|
La respuesta contiene los datos de autentificación necesarios para realizar una petición de autorización en el futuro.
Casos de uso
Suscripciones
Etapa 1 - Contratación de la suscripción (titular presente)
Llamar al servicio webPCI/Cargar/Autenticar Para autenticar al comprador:
Frecuencia y montos fijos | { "amount":"9990", "currency":"PEN", "recurring":{ "expiryDate": "2025-05-13", "frequency": { "unit": "DAY", "value": "30" } }, "transactionCategory":"PAYMENT", "productType":"GOODS_OR_SERVICE_PURCHASE", "merchant": { "mid":"9876357" }, "paymentForm": { "expiryMonth":"09", "expiryYear":"28", "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" } } |
Frecuencia y/o montos variables | { "amount":"9990", "currency":"PEN", "recurring":{ "expiryDate": "2025-05-13", "frequency": { "unit": "DAY", "value": "30" } }, "transactionCategory":"PAYMENT", "productType":"GOODS_OR_SERVICE_PURCHASE", "merchant": { "mid":"9876357" }, "paymentForm": { "expiryMonth":"09", "expiryYear":"28", "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" } } |
El objeto recurring
es obligatorio para definir la frecuencia de las cuotas y la fecha de término de la suscripción.
Siga la guía de integración de servicios webPCI/Cargar/Autenticar para procesar instrucciones y autenticar al portador.
Tras obtener el resultado final, puede proseguir con la petición de autorización.
Etapa 2 - Pago de las cuotas (titular ausente)
En cada fecha límite, llama al servicio webPCI/Cargar/Autenticar para solicitar autenticación 3RI .
El objeto recurring
es obligatorio para definir la frecuencia de las cuotas y la fecha de término de la suscripción.
En el objeto previousAuthentication
debe transmitir los datos de la autentificación obtenidos al contratar la suscripción.
Frecuencia y montos fijos | { "amount":"9990", "currency":"PEN", "transactionInitiator": "MERCHANT", "useCase": "RECURRING_FIXED_TOTALAMOUNT", "recurring":{ "expiryDate": "2025-05-13", "frequency": { "unit": "DAY", "value": "30" } }, "productType":"GOODS_OR_SERVICE_PURCHASE", "merchant": { "mid":"9876357" }, "paymentForm": { "expiryMonth":"09", "expiryYear":"28", "networkPreference":"VISA", "pan":"4970110000000021" }, "customer": { "previousAuthentication": { "dsTransID":"18e46ff7-b882-4102-9af4-aef9f40ee6a6", "acsTransID":"410d9fb4-8db1-483e-9a80-f94c3a79017e", "dateTime": "2024-10-09T06:37:22+00:00", "effectiveAuthenticationType": "CHALLENGE" } }, "protocolRequest": { "name":"THREEDS", "version":"2" } } |
Frecuencia y/o montos variables | { "amount":"9990", "currency":"PEN", "transactionInitiator": "MERCHANT", "useCase": "RECURRING_VARIABLE_TOTAL_AMOUNT", "recurring":{ "expiryDate": "2025-05-13", "frequency": { "unit": "DAY", "value": "30" } }, "productType":"GOODS_OR_SERVICE_PURCHASE", "merchant": { "mid":"9876357" }, "paymentForm": { "expiryMonth":"09", "expiryYear":"28", "networkPreference":"VISA", "pan":"4970110000000021" }, "customer": { "previousAuthentication": { "dsTransID":"18e46ff7-b882-4102-9af4-aef9f40ee6a6", "acsTransID":"410d9fb4-8db1-483e-9a80-f94c3a79017e", "dateTime": "2024-10-09T06:37:22+00:00", "effectiveAuthenticationType": "CHALLENGE" } }, "protocolRequest": { "name":"THREEDS", "version":"2" } } |
La respuesta incluye los datos de autentificación necesarios para la petición de autorización del pago de la cuota.
La siguiente tabla muestra las correspondencias entre los datos obtenidos en la etapa 1 y los datos obligatorios para la etapa 2:
Salida etapa 1 (titular presente) | Entrada etapa 2 (titular ausente) |
---|---|
value.extension.dsTransID | customer.previousAuthentication.dsTransID |
value.extension.acsTransID | customer.previousAuthentication.acsTransID |
value.authenticationDateTime | customer.previousAuthentication.dateTime |
value.authenticationType | customer.previousAuthentication.effectiveAuthenticationType |
Pago MOTO
Llamar al servicio webPCI/Cargar/Autenticar Para autenticar al comprador especificando su caso de uso:
Pago por teléfono | { "amount":"9990", "currency":"PEN", "paymentSource": "TELEPHONE_ORDER", "useCase": "PAYMENT", "productType":"GOODS_OR_SERVICE_PURCHASE", "merchant": { "mid":"9876357" }, "paymentForm": { "expiryMonth":"09", "expiryYear":"28", "networkPreference":"VISA", "pan":"4970110000000021" }, "protocolRequest": { "name":"THREEDS", "version":"2" } } |
Pago por correo | { "amount":"9990", "currency":"PEN", "paymentSource": "MAIL_ORDER", "useCase": "PAYMENT", "productType":"GOODS_OR_SERVICE_PURCHASE", "merchant": { "mid":"9876357" }, "paymentForm": { "expiryMonth":"09", "expiryYear":"28", "networkPreference":"VISA", "pan":"4970110000000021" }, "protocolRequest": { "name":"THREEDS", "version":"2" } } |
La respuesta contiene los datos de autentificación necesarios para realizar la petición de autorización.