Webhooks

Utilice webhooks para recibir notificaciones de determinados eventos. Cada webhook está firmado para garantizar su autenticidad. Se puede crear cualquier número de puntos finales de webhook.

Posibles acontecimientos

order.created(Pendiente) Se ha creado la orden
order.processedEl pedido ha sido procesado y compensado
order.canceledOrden pendiente descartada
order.refundedOrden anulada
payment_link.createdSe ha creado un nuevo enlace de pago
payment_link.paidEnlace de pago utilizado correctamente

Recibir un webhook

Enviamos una solicitud POST a la URL definida en el punto final del webhook. Este es un ejemplo de cuerpo de solicitud:

1
2
3
4
5
6
7
8
9
10
11
12
{
  "trigger": "order.created",
  "created_at": "2022-02-03T02:23:47.404Z",
  "ident": "8ed1bae2-9ca4-4c3c-8fee-669334c783da",
  "signature": "a871c6067afef4cb7040c0b445f7df0503067d7af41dc95e554c47da94a553260c29051d377f5b5447f060a2d0833745177facfeb8c43daa96e9b181bc66cd88",
  "testing": false,
  "webhook_content": {
    "order_ids": [
      "CA-A949-E43D48E1",
    ]
  }
}

Validar el Webhook

Valida la autenticidad de las llamadas del webhook utilizando la firma y la clave privada. Combina los campos trigger, ident y la clave privada en una cadena como en el ejemplo y encriptala con SHA512. La cadena encriptada resultante debe coincidir con firma.

1
2
3
4
5
6
7
const validation = sha512(request.body.trigger + request.body.ident + your_private_key);

if (request.body.signature !== validation) {
  return response.status(401).send() //Unauthenticated
}

//ToDo: implement the webhook request

¿Listo para empezar? Póngase en contacto con nosotros o cree una cuenta directamente.

Cree una cuenta y comience directamente con el cálculo y la compensación de las emisiones de CO2 a través de nuestra API. ¿Todavía tiene preguntas o necesita una oferta individual? Utilice el chat o concierte una cita directamente con nuestro equipo de ventas.