Casos de uso concernidos
Este capítulo se aplica para los siguientes casos de utilización:
- Pago al contado con ingreso de los datos de la tarjeta,
- Pago por token,
- Proposición de registro de la tarjeta durante el pago,
- Registro de la tarjeta durante el pago,
- Registro de una tarjeta en un wallet comprador (con o sin pago).
Cinemática
Inicialización de la sesión de pago
Este caso de utilización necesita crear un formToken a través de una llamada a Service Charge/CreatePayment.
POSThttps://api.micuentaweb.pe/api-payment/V4/Charge/CreatePayment
Todas las transacciones están sujetas a un análisis de riesgo. Si el resultado del análisis recomienda una autentificación del titular, se visualizará la página de autentificación durante el pago.
Para que el análisis sea eficaz, usted debe transmitir un máximo de informaciones en su solicitud de pago.
Utilice los siguientes campos para hacer la solicitud:
APELLIDO | DESCRIPCIÓN | OBLIGATORIO |
amount | Monto por el que se solicita la autenticación. | Sí |
currency | Código alfanumérico de la moneda. | Sí |
orderId | Referencia del pedido. Se recomienda este campo. | No |
formAction | Tipo de comportamiento que desea al crear la transacción. | No |
customer | Objeto que contiene los datos del comprador. | No |
metadata | Objeto que contiene los datos complementarios a transmitir para el análisis de riesgo. Para más informaciones, consulte el capítulo Transmitir los datos para el análisis de riesgos. | No |
Para obtener una descripción más completa de los campos a utilizar, pruebe el Web Service
Charge/CreatePayment desde nuestro
playground.
También es posible transmitir campos específicos para favorecer una autentificación sin interacción del portador.
Análisis de la respuesta
Al final de la operación, la plataforma devuelve un objeto Payment a URL de notificación del sitio web vendedor y al cliente JavaScript.
Veamos la lista de atributos que describe, por caso de uso, el resultado de la autenticación del titular:
Casos de uso | Campos devueltos |
Transacción con autenticación fuerte exitosa | - authenticationResponse.value.status = SUCCESS : Autenticación exitosa.
- authenticationResponse.value.authenticationType = CHALLENGE (Valor devuelto en 3DS1 y 3DS2).
- authenticationResponse.value.commerceIndicator = 5 (Visa o AMEX) o 02 (Mastercard).
- authenticationResponse.value.extension.authenticationType = THREEDS_V1 o THREEDS_V2.
- transactionDetails.liabilityShift = YES : El pago está garantizado.
- transactions.effectiveStrongAuthentication = ENABLED : El titular es autenticado con éxito.
|
Transacción con autenticación frictionless exitosa, el vendedor no ha solicitado una autentificación sin interacción del portador. | authenticationResponse.value.status = SUCCESS : Autenticación exitosa. authenticationResponse.value.authenticationType = FRICTIONLESS. - authenticationResponse.value.commerceIndicator = 5 (Visa o AMEX) o 02 (Mastercard).
- authenticationResponse.value.extension.authenticationType = THREEDS_V2.
transactionDetails.liabilityShift = YES : El pago está garantizado. - transactions.effectiveStrongAuthentication = ENABLED : El titular es autenticado con éxito.
|
Transacción con fallo de la autenticación 3D Secure | authenticationResponse.value.status = FAILED : Error de autenticación. authenticationResponse.value.authenticationType = CHALLENGE. - authenticationResponse.value.commerceIndicator = null
- authenticationResponse.value.extension.authenticationType = THREEDS_V1 o THREEDS_V2.
- authenticationResponse.value.reason.code = CARD_AUTHENTICATION_FAILED : Rechazo de la autenticación por el emisor.
transactionDetails.liabilityShift = null : El pago no está garantizado. transactions.effectiveStrongAuthentication = DISABLED : la autenticación del titular es un fracaso.
|
Autenticación imposible | authenticationResponse.value.status = NOT_ENROLLED : Titular no enrolado. authenticationResponse.value.authenticationType = null - authenticationResponse.value.commerceIndicator = null
- authenticationResponse.value.extension.authenticationType = THREEDS_V1.
transactionDetails.liabilityShift = NO : El pago no está garantizado. - transactions.effectiveStrongAuthentication = DISABLED : la autenticación del titular es un fracaso.
- transactions.errorCode = PSP_727 : Autenticación imposible (error técnico, tarjeta no registrada o DS no disponible).
|