Skip to main content
Recibes callbacks POST de cualquier servicio externo (pasarelas de pago, GitHub, CRMs, etc.), validas el payload y procesas el evento. Patrón: ruta personalizada + solo POST + MCP desactivado + validación de payload.
index.ts

Prueba local

Por qué funciona así

  • config.methods: ["POST"] — rechaza GET, PUT, etc. Los webhooks siempre son POST.
  • config.mcp: false — no tiene sentido exponer un webhook como herramienta de IA.
  • config.path — ruta fija que configuras en el servicio externo.
  • El esquema input valida la estructura del payload antes de que llegue al handler.

Validar firma del webhook

En producción, verifica la firma del servicio externo antes de procesar el evento:
Configura WEBHOOK_SECRET como secret: jelou functions secrets set mi-webhook WEBHOOK_SECRET=whsec_...