Glosario

Webhook: el aviso que un programa manda solo cuando pasa algo

Por , fundador de Arume · · lectura de 5 min

Definición

Un webhook es un aviso automático que un programa envía a una dirección web que tú indicas cuando ocurre un evento: un pedido nuevo, un cambio de stock, un producto editado. Evita preguntar continuamente si hay novedades. No es fiable al cien por cien: los avisos pueden retrasarse, repetirse o perderse, así que se complementa con una lectura periódica que compruebe que no falta nada.

Un webhook es la diferencia entre preguntar cada cinco minutos «¿ha habido ventas?» y que te avisen cuando las haya. Parece un detalle técnico y cambia mucho lo rápido que se entera un sistema de lo que ocurre en la tienda.

Qué es exactamente

Un webhook funciona al revés que una API normal. Con una API, tu sistema pregunta y el programa responde. Con un webhook, tu sistema se suscribe a un tipo de evento («pedido creado», «inventario actualizado») y le da al programa una dirección; cuando el evento ocurre, el programa envía un mensaje a esa dirección con los datos.

Shopify lo describe en su documentación como una alternativa eficaz a consultar continuamente si hay cambios: la aplicación se suscribe a un tema y Shopify envía una entrega cuando ocurre el evento. El destino puede ser una dirección web o servicios en la nube de colas de mensajes. WooCommerce y otras plataformas siguen la misma idea con nombres de eventos propios.

También se le llama

Callback HTTP, web callback, «notificación por evento» o «aviso automático». En el lenguaje de a pie se dice «que la tienda nos avise cuando entre un pedido». No hay que confundirlo con una notificación para personas (un correo o un mensaje): el webhook se dirige a otro programa, no a un humano.

Un ejemplo

Una tienda online de menaje vende un juego de cuchillos. En ese instante, la plataforma envía un webhook con el pedido: producto, cantidad, almacén de salida. Nuestro sistema lo recibe en segundos, resta esa unidad del stock proyectado de ese almacén y, si el producto cae por debajo del umbral de seguridad, lo marca en el panel y puede mandar un aviso por WhatsApp al responsable de compras. Sin webhook, la misma información habría llegado en la siguiente lectura programada, quizás horas después.

Ahora el matiz que importa. Shopify avisa de que su entrega de webhooks no está siempre garantizada y recomienda no depender solo de ellos: hay que ejecutar trabajos de reconciliación que, cada cierto tiempo, pidan los objetos modificados desde la última vez. También advierte de que pueden llegar duplicados (se identifican con una cabecera propia) y fuera de orden, y que conviene usar la fecha del evento para ordenarlos.

Ojo con esto

Qué cuidar cuando se usan avisos entre programas:

  • No es una garantía de entrega: un aviso puede perderse si tu servidor estaba caído. Hace falta siempre una lectura de repaso.
  • Duplicados: el mismo aviso puede llegar dos veces. Si cada uno resta una unidad, el stock queda mal. Hay que identificar cada aviso y no procesarlo dos veces.
  • Orden: dos cambios seguidos pueden llegar al revés. Se resuelve con la marca de tiempo de cada evento, no con el orden de llegada.
  • Seguridad: cualquiera podría enviar avisos falsos a esa dirección. Se firma cada mensaje y se verifica la firma antes de fiarse.

Dónde aparece en el sistema

Lo usamos donde el programa lo permite y aporta algo: tiendas online como Shopify o WooCommerce, donde saber una venta al momento acelera los avisos de urgencia. Siempre va acompañado de la lectura periódica que repasa lo que el aviso pudo perder, igual que en cualquier conector bien hecho.

En programas de gestión que no ofrecen avisos, lo sustituye una lectura frecuente. Para decidir qué reponer cada semana, no hace falta más rapidez de la que da una lectura diaria.

Términos relacionados

API, conector, sincronización de stock, stock disponible y demanda perdida.

Preguntas frecuentes

¿Necesitamos webhooks para usar el sistema?

No. Para la propuesta semanal basta una lectura diaria. Los webhooks aportan rapidez en los avisos de urgencia de tiendas online, y se activan solo si tu plataforma los ofrece y los quieres.

¿Qué pasa si se pierde un webhook?

La lectura periódica lo recupera: pide a la plataforma todo lo cambiado desde la última vez y rellena el hueco. Por eso se usan siempre las dos vías juntas.

¿Es seguro abrir una dirección para recibir avisos?

Sí, si se firma y se verifica cada mensaje. Un aviso sin firma válida se descarta. Además, la dirección solo acepta ese tipo de mensaje y no da acceso a tus datos.

Fuentes

  1. Shopify: webhooks (suscripción a eventos, destinos, entrega no garantizada, duplicados y reconciliación)
  2. MDN: glosario, API (contexto del contrato entre programas)

¿Quieres saber qué pasa con tu stock?

Mándanos un export de ventas y stock y te devolvemos un informe corto: roturas, dinero parado y qué cambiaríamos primero. Sin compromiso.

hello@arume.io

Escríbenos por WhatsApp

Cuéntanos tu proyecto

Te contesta Manuel en menos de 48 horas laborables. Sin compromiso.

O por WhatsApp