Utilizar el servicio en los endpoints:
Visite la sección DataCollector Antifraude
El objeto JSON con los datos de la tarjeta debe tener la siguiente estructura:
card.cardHolder: String. Nombre del dueño de la tarjeta. De 5 a 50 caracteres.
card.expirationDate.month: String. Número que indica el mes de vencimiento de la tarjeta, este parámetro debe tener cifras entre 1 y 12.
card.expirationDate.year: String. Número que indica el año de vencimiento de la tarjeta, este parámetro debe tener cifras de 2 dígitos, los últimos 2 dígitos del año en que vence la tarjeta.
card.cardNumber: String. Corresponde al número de la tarjeta
card.cvc : String. Código de seguridad de la tarjeta.
additional: Object. Debe ser la misma estructura del ejemplo, requerido por GreenPay
kountSession: String. Es el valor params.MercSessId que se obtienen del Data Collector.
En BITBUCKET podrá encontrar ejemplos de integración desarrollados en NodeJS.
A continuación, se muestran los pasos a seguir para cifrar la información de la tarjeta.
Utilizando Javascript
const cardData = { card: { cardHolder: "Angel Gonzalez", expirationDate: { month: "03", year: "25", }, cardNumber: "5597270000001815", cvc: "196", }, additional: { channelData: { channel: "01", source: "API_CARD" } }, kountSession: "58218d22a34f42cda041789b3abc9d50", }; const base64 = Buffer.from(JSON.stringify(cardData)).toString("base64"); console.log(base64);
Donde eyJjYXJkIjp7ImNhcmRIb2xkZXIiOiJBbmdlbCBHb256YWxleiIsImV4cGlyYXRpb25EYXRlIjp7Im1vbnRoIjoiMDMiLCJ5ZWFyIjoiMjUifSwiY2FyZE51bWJlciI6IjU1OTcyNzAwMDAwMDE4MTUiLCJjdmMiOiIxOTYifSwiYWRkaXRpb25hbCI6eyJjaGFubmVsRGF0YSI6eyJjaGFubmVsIjoiMDEiLCJzb3VyY2UiOiJBUElfQ0FSRCJ9fSwia291bnRTZXNzaW9uIjoiNTgyMThkMjJhMzRmNDJjZGEwNDE3ODliM2FiYzlkNTAifQ== es el resultado que se necesitará
Se debe crear un objeto de tipo JSON que contenga los resultados del proceso de cifrado anterior (ed) y la sesión obtenida en el artículo "Crear una orden de pago", este JSON debe estar estructurado de la siguiente forma:
Ejemplo del JSON con la estructura de los datos cifrados
Valores del JSON:
session: String con el valor de la session obtenida de la respuesta del envío de una solicitud de orden de pago Crear Orden de Pago
2. ed: String en formato base64 que se obtiene al cifrar los datos de la tarjeta.
Se debe enviar una solicitud HTTP de tipo POST al endpoint de pagos con el objeto JSON que contiene los datos cifrados y la sesión obtenida en el paso anterior, este JSON se envía en el cuerpo de la solicitud.
A esta solicitud se le debe agregar el header session-token
, este header debe contener el token obtenido en la solicitud de creación de una orden de pago. Puede ver el siguiente ejemplo
Respuesta autorización exitosa
Respuesta autorización fallida
La autorización fallida responde con un HTTP Code 400 o 500