Integración de Webhook
Integración de Bouncer
Los webhooks le permiten automatizar acciones de back-end personalizadas en respuesta al escaneo de códigos QR que ocurren en su dispositivo.
Paso 1:
Contactar con Bouncer para crear su cuenta
Escriba un email a la cuenta de Bouncer support@bouncer.global solicitando el alta como empresa en la aplicación.
En él, facilite los datos para el administrador de la cuenta: Nombre, Apellidos y email.
Paso 2:
Verificar correo electrónico
Paso 3:
Crear organización
Paso 4:
Crear dispositivo
Paso 5:
Descargue el código QR del dispositivo de la lista de dispositivos
Paso 6:
Mostrar el código QR descargado en la máquina expendedora
Paso 7:
Configurar webhook
Paso 8:
Usar webhook
Una vez que se produce una verificación, los datos se envían como JSON en un cuerpo de solicitud POST, DELETE, PUT o GET a la URL configurada. El contenido de la solicitud siempre contiene la operación, el tiempo de activación y los datos del evento. El objeto de datos siempre contendrá el estado, la organización y la identificación del dispositivo.
Paso 9:
Webhook seguro
Lo mejor es proteger los puntos finales que invocan sus webhooks. Esto evita acciones no autorizadas en su servidor y protege mejor a sus usuarios de cualquier actividad sospechosa.
Debe establecer una clave secreta compartida en su webhook, que se puede usar para validar que la solicitud provino de Bouncer.
Bouncer enviará el encabezado sign en webhooks con un conjunto de claves secretas compartidas
Un valor de encabezado de signo se verá así:
sign=2e1b8ae479a5a4b35fd2627797c3ffff446de989b8c9eeacc43c18185586e1cf
Paso 10:
Validación de la firma del webhook
Con el encabezado sign , puede validar que la solicitud provino de Bouncer

Deberá generar un HMAC con la función hash SHA256 para generar una firma que pueda usar para compararla con el encabezado sign .
Paso 11:
Verificación manual de Firma

Si está usando JavaScript, podría verse así:

Paso 12:
Ejemplo de carga útil de webhook

A continuación se muestra un ejemplo de un evento para un dispositivo específico, PUBLICADO, que incluye la carga útil de entrada.

Paso 13:
Devolver una respuesta 2xx

Su punto final debe devolver rápidamente un código de estado correcto (2xx) antes de cualquier lógica compleja que pueda causar un tiempo de espera. Por ejemplo, debe devolver una respuesta 200 antes de enviar una notificación a su dispositivo

También debe devolver un éxito: verdadero con los datos que recibió de nosotros para confirmar una notificación exitosa. Los datos devueltos deberían verse así:

Paso 14:
Simular escaneo:
Diagrama