Proceso de tokenización con formulario
Consideraciones
Para utilizar el formulario de tokenización de tarjetas se debe considerar lo siguiente:
- El formulario está disponible en:
- Sandbox: http://sandbox-tokenizeform.greenpay.me/
- Producción: https://tokenizeform.greenpay.me/
- Se requiere tener una session y token de una orden de tokenización que no haya excedido los 30 minutos establecidos de vencimiento. Además, la orden debió ser creada con el parámetro callback.
- Para ver cómo crear una orden de tokenización y agregar el parámetro callback visite este enlace.
- El formulario de tokenización de Greenpay solo 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:
- Generar la orden de tokenización (session y token) en sandbox o producción, según el ambiente.
- Construir la URL:
- Sandbox: http://sandbox-tokenizeform.greenpay.me/{{session}}
- Producción: https://tokenizeform.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);
//console.log(security);
}
catch (err) {
res.send(err);
}
});
Al hacer el redireccionamiento, se les presentará el siguiente formulario:
Cuando se obtiene la respuesta, el formulario la envía al URL callback de la orden de tokenización. La respuesta es un JSON codificado en BASE64, como se muestra en la siguiente imagen:
Se requiere que exista una función en el destino (callback) que capture la respuesta y la de-codifique. A continuación, se muestra un ejemplo:
app.get("/callback/:data", async function (req, res) {
try {
//get the response in base64
const data = req.params.data;
//decode the response in base64
var responsejson = Buffer.from(data, 'base64').toString();
console.log(responsejson);
res.send(JSON.parse(responsejson));
} catch (err) {
res.send(err);
}
});
A continuación, se muestra un ejemplo de la respuesta JSON:
{
"status": 201,
"requestId": 1,
"result": {
"token": "fb3d1a7b-9cb1-45b7-b49d-b2a3efd98371",
"last_digits": "7777",
"bin": "477777"
},
"expiration_date": "2109",
"brand": "Visa",
"nickname": "Visa",
"errors": [],
"_signature": "5005b0d596e6078.....c35bbbd9dcd44431100"
}
3. Hacer cobro sobre un token
Related Articles
Proceso para actualizar token con formulario
Consideraciones Para utilizar el formulario de tokenización de tarjetas se debe considerar los siguiente: El formulario está disponible en: Sandbox: http://sandbox-tokenizeform.greenpay.me/ Producción: https://tokenizeform.greenpay.me/ Tener una ...
Crear orden de tokenización
Consideraciones Una orden de tokenización se crea para indicar al API de Greenpay que se creará un token a partir de los datos de una tarjeta de crédito o débito. Para esto se debe tener las siguientes consideraciones: Endpoints para crear la orden ...
Proceso de tokenización
Consideraciones Para utilizar el servicio de tokenización se debe tomar en cuenta los siguiente: Utilizar el servicio en los endpoints: Sandbox: https://sandbox-checkout.greenpay.me/tokenize Producción: https://checkout.greenpay.me/tokenize Tener una ...
Proceso de pago con webform
Consideraciones Para utilizar el formulario de pago de Greenpay, se debe considerar los siguiente: El formulario está disponible en dos entornos: Sandbox: https://sandbox-checkoutform.greenpay.me/ Producción: https://checkout-form.greenpay.me/ Se ...
Proceso de pago con Widget
Consideraciones Al utilizar el widget de pago de Greenpay, es importante tener en cuenta lo siguiente: Es necesario disponer de una cuenta de sandbox o de producción. Para obtener esta cuenta, visite la sección Sobre cuenta de pruebas o sandbox. El ...