Buenas Prácticas

Consideraciones importantes a tener en cuenta al consumir un Webhook

Idempotencia

Kushki almacena sus notificaciones en múltiples servidores para mejorar la redundancia y lograr una alta disponibilidad. Por esta razón, en raras ocasiones, podrías obtener un duplicado de una notificación.

Recuerda diseñar el endpoint de tu webhook para que sea idempotente (no debe ser afectado negativamente cuando procese la misma notificación más de una vez).

Responde rápido

Si tu endpoint para webhooks ejecuta lógica compleja o realiza llamadas HTTP, es posible que se produzca un timeout antes de que Kushki pueda ser notificado de la recepción. Por esta razón, es mejor acusar recibo inmediatamente del webhook retornando un código HTTP 200 y luego realizar el resto de las tareas o realizarlas en paralelo o segundo plano.

Pruebas

Las interacciones entre endpoints en internet pueden ser algo complicadas, sobre todo cuando existen casos límite que pueden impactar el rendimiento de tu aplicación. Es por ello que te recomendamos comprobar que tu Webhook está funcionando de manera adecuada antes de ir a producción.