Recibir respuestas en un webhook

Recibir respuestas en un webhook

1. Descripción

Si el comercio require recibir las respuesta de los pagos o tokenización de tarjetas en un backend, ya sea, para actualizar pedidos, información o simplemente almacenar la respuesta en base de datos como respaldo, entonces debe habilitar un webhook
Un webhook es una serie de servicios API web que debe exponer el comercio para recibir las respuestas de la pasarela de pago, tokenización de tarjetas, pagos de suscripciones o pagos en lote.

2. Configuración

2.1 Rutas del webhook

A continuación, se describen las diferentes rutas que se deben configurar para recibir las diferentes respuesta. Todas las rutas deben habilitarse para recibir peticiones POST.
No se deben implementar todas la rutas, solo la que se requieran.
Por ejemplo, si se cuenta con un dominio en  webhook.micomercio.com que se quiere establecer como webhook, entonces las rutas son:

2.2 Headers y body para el webhook

El las diferentes rutas del webhook debe soportar y permitir los siguientes headers:

  • 'Accept': 'application/json'

  • 'Content-Type': 'application/json'

Además, el cuerpo (body) que enviará Greenpay a cada servicio será un objeto json, como el siguiente:

  1. {

  2.     "status": 200,

  3.     "orderId": "xwr-123455",

  4.     "authorization": "533793",

  5.     "last4": "7777",

  6.     "brand": "Visa",

  7.     "result": {

  8.       "time_local_tran": "165407",

  9.       "systems_trace_audit_number": "000283",

  10.       "success": true,

  11.       "retrieval_ref_num": "701016540713",

  12.       "resp_code": "00",

  13.       "reserved_private4": null,

  14.       "proc_code": "000000",

  15.       "network_international_id": "0003",

  16.       "mti": "0210",

  17.       "merchant_id": 485,

  18.       "date_local_tran": "0110",

  19.       "card_acceptor_terminal_id": "00112478",

  20.       "authorization_id_resp": "533793"

  21.     },

  22.     "errors": [],

  23.     "callback": "http://yourcallback.url/getcheckoutform/response",

  24.     "_signature": "2e9d23b194905314561b8c750f7a74447aa7ce262c9c4d4589a26bc8aad046bce455f5ab2bfb5c9e5e75da2030550b91627d4020c82e5ba55f6c7ac4b692b8191655f17831b2bca8bf85eade12d5918bcd9b10fe41bfc1f9115baf6c3b9de13cac7170e350bcc4a46bb58d2abc18396c8377b5e5544809aa41beab114d717ec6"

  25.   }

A continuación, se muestra un ejemplo en javascript del request que realizaría nuestro servicio hacia el webhook configurado:



var unirest = require("unirest")
var req = unirest("POST", "https://webhook.micomercio.com/bulkResume%22")
var body = {
"status": 200,
"orderId": "xwr-123455",
"authorization": "533793",
"last4": "7777",
"brand": "Visa",
"result":
{
"time_local_tran": "165407",
"systems_trace_audit_number": "000283",
"success": true,
"retrieval_ref_num": "701016540713",
"resp_code": "00",
"reserved_private4": null,
"proc_code": "000000",
"network_international_id": "0003",
"mti": "0210",
"merchant_id": 485,
"date_local_tran": "0110",
"card_acceptor_terminal_id": "00112478",
"authorization_id_resp": "533793" },
"errors": [],
"_signature": "2e9d23bb5e554...ab114d717ec6"
}
req.headers({"cache-control": "no-cache", "Accept": "application/json", "Content-Type": "application/json" })
req.type("json")
req.send(body)
req.end(
function (res) {
if (res.error) throw new Error(res.error)
console.log(res.body) }
)

3. Utilizar el webhook

Para configurar este webhook en GreenPay se deben seguir los siguientes pasos
  1. Ingresa al portal de Greenpay (Dashboard) en https://dashboard.greenpay.me/login.
  2. Ir a la sección de Configuración.
  3. Click sobre el botón Agregar nuevo.
  4. Agregar URL que desean establecer como webhook, por ejemplo, webhook.micomercio.com
  5. Guardar la configuración.
  6. Una vez configurado, recibirá la notificaciones al server del URL configurado.
En la siguiente imagen, se pueden ver las indicaciones para la configuración en el dashboard.


    • Related Articles

    • Recibir respuestas en un webhook

      1. Descripción Si el comercio require recibir las respuesta de los pagos o tokenización de tarjetas en un backend, ya sea, para actualizar pedidos, información o simplemente almacenar la respuesta en base de datos como respaldo, entonces debe ...
    • Respuesta de pago en webhook

      1. Descripción Si el comercio require recibir las respuesta de los pagos o tokenización de tarjetas en un backend, ya sea, para actualizar pedidos, información o simplemente almacenar la respuesta en base de datos como respaldo, entonces debe ...
    • Enviar request de pagos en lote

      Consideraciones Para utilizar el servicio de pagos en lote se deben tomar en cuenta las siguiente consideraciones: Utilizar el servicio en los endpoints: Sandbox: https://sandbox-merchant.greenpay.me/bulk Producción: https://merchant.greenpay.me/bulk ...
    • Proceso de pago con webform

      Consideraciones Para utilizar el formulario de pago de Greenpay, se debe considerar los siguiente: El formulario está disponible en: Sandbox: https://sandbox-checkoutform.greenpay.me/ Producción: https://checkout-form.greenpay.me/ Tener una session y ...
    • Proceso de pago con Widget

      Consideraciones Para utilizar el widget de pago de Greenpay, se debe considerar los siguiente: Se debe contar con una cuenta de sandbox o producción, para obtener una cuenta de sandbox visite Sobre cuenta de pruebas o sandbox. El widget de pago, es ...