Para utilizar el formulario de tokenización de tarjetas se debe considerar lo siguiente:
El formulario está disponible en:
Sandbox: https://tokenization.greenpaysbx.me/
Producción: https://tokenization.greenpay.me/
Tener una session y token de una orden de tokenización que no hay excedido los 30 minutos establecidos de vencimiento.
El formulario de tokenización de GreenPay sólo está disponible para aplicaciones web.
Con la respuesta (Session, token) obtenida en la orden de tokenización, se debe redireccionar desde el sitio del comercio hacia el formulario de GreenPay, de la siguiente manera:
Producción: https://tokenization.greenpay.me/{{session}}
A continuación, se muestra un ejemplo en javascript de cómo hacer el redireccionamiento:
const express = require("express");
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.get("/order", async function (req, res) {
try {
const security = await postOrder(order);
res.redirect("https://tokenization.greenpaysbx.me/"+ security.session);
}
catch (err) {
res.send(err);
}
});
Al realizar el redireccionamiento correctamente, se le presentará el siguiente formulario:
En caso de ingresar una session vencida se mostrará la siguiente pantalla:
En caso de ingresar una session inválida se mostrará la siguiente pantalla:
Después de ingresar la información correcta de una tarjeta de crédito/débito y enviarla a tokenizar, se puede recibir una respuesta de tokenización exitosa:
Después de un par de segundos se redirecciona a la url (callback) configurado del comercio, agregando la siguiente cadena de caracteres:
Utilizando la función atob se puede decodificar y obtener la información de respuesta recibida:
La respuesta del callback esta codificada en base64
Si ocurre un error en el proceso de tokenización de una tarjeta, se mostrará la siguiente pantalla:
Puede recargar la pantalla e intentar nuevamente a tokenizar la tarjeta, en caso de ocurrir nuevamente un error, favor contactar a soporte GreenPay por correo: soporte@greenpay.me.
El formulario de tokenización devuelve la respuesta mediante callback a la url que se le especifique en el parametro callback al momento de crear la orden de tokenización
Respuesta exitosa
{
"statusCode": 200,
"result": {
"cardHolder": "Angel Gonzalez",
"brand": "Visa",
"bin": "445653",
"last4": "1096",
"khash": "4456534XQYXTFNC7M08D",
"token": "c02fe570-9588-11ef-bd8e-177728d45168",
"cardMasked": "445653******1096"
}
}