Refácil Api Doc
  • Bienvenido!
  • Comienzo Rápido
  • REFERENCE APIS
    • API Refácil Pay
      • Login
      • Pagos
      • Transacciones
      • Cuentas
      • Webhook
      • Documentación
Powered by GitBook
On this page
  1. REFERENCE APIS
  2. API Refácil Pay

Webhook

En este punto se explicara , como se realizara la comunicacion de las transacciones realizadas y los diferentes estados en los que puede transitar.

Para realizar un consumo apropiado del servicio de notificaciones se les entregara una llave (secretKey) la cual permitirá la integridad de los mensajes, de igual manera el servicio webhook creado debe cumplir con las siguientes condiciones:

  • Debe tener la capacidad de recibir una petición HTTP con el método POST y no debe de solicitar autenticación.

  • Debe tener la capacidad de manejar el cuerpo de petición que se describirá en la parte inferior.

  • Debe contener una respuesta HTTP Status Code en formato JSON

Signature: Firma de la petición la cual permitirá validar la integridad de los mensajes, para generar dicha firma se deben concatenar los campos como en el siguiente ejemplo aplicado en Node.js :

Ejemplo de signature
~~~ let signature = ${data.Transaction.id}-${data.Transaction.Resource.id}-${data.Transaction.amount}-${data.Transaction.updatedAt}-${HASH_KEY}; 

signature = crypto .createHmac("sha1", HASH_KEY) .update(signature) .digest("hex");

POST https://host/apagar/notify

Request Body

Name
Type
Description

Data*

Object

Objeto con datos principales

Transaction

Object

Data de transacción

id

Integer

Identificador de la transacción

amount

Integer

Valor de la transaccióen

cost

Integer

Costo de la transacción

Status

Object

Estado de data

id

Integer

Identificador del estado de la transacción.

description

String

Descripción del estado de la transacción (2 : Aprobada)(0:rechazada)

Resource

Object

Data del recurso

id

Integer

Identificador del recurso asociado a la transacción.

PaymentMethod

Object

Data de método de pago

id

integer

Identificador del metodo de pago utilizado

name

String

Nombre del metodo de pago

type

String

Tipo de recurso LINK, QR

CreatedAt

String

Fecha y hora de la creación de la transacción

UpdatedAt

String

Fecha y hora en la que se proceso la transacción.

Signature

String

Firma de la peticion

Request
{
    "data": {
        "Transaction": {
            "id": 5157,
            "amount": 5000,
            "cost": 299.5,
            "Status": {
                "id": 2,
                "description": "Transacción aprobada"
            },
            "Resource": {
                "id": 478,
                "PaymentMethod": {
                    "id": 1,
                    "name": "Credibanco",
                    "type": "QR"
                }
            },
            "createdAt": "2021-05-28 16:29:23",
            "updatedAt": "2021-06-01 14:47:23"
        }
    },
    "signature": "a36740c7dc04e268c062efeeb387d84f1207547f"
}

Dentro de la respuesta enviada a su webhook estará incluido el dato signature ., que fue enviado en la petición hacia nuestra api , con el fin de que ustedes identifiquen la respuesta.

PreviousCuentasNextDocumentación

Last updated 2 years ago