Webhooks entrantes
Con un webhook, la aplicación externa avisa a Tablifyx en el momento en que algo cambia (un pedido nuevo, una factura pagada), sin esperar a la siguiente sincronización.
Crear un receptor
- En el asistente de integraciones, activa Recibir cambios al instante (WooCommerce y Stripe), o
- en un conector, en el menú del endpoint de lectura, pulsa Crear receptor de webhooks.
El receptor reutiliza el modelo, el mapeo de campos y las sublistas del endpoint de lectura. Al editarlo verás:
- la URL que debes pegar en la aplicación:
https://tu-dominio/hooks/… - el secreto de firma.
Firma y seguridad
Tablifyx comprueba la firma automáticamente según la cabecera que envíe la aplicación:
| Aplicación | Cabecera | Algoritmo |
|---|---|---|
| WooCommerce | X-WC-Webhook-Signature |
HMAC-SHA256 en base64 |
| Shopify | X-Shopify-Hmac-Sha256 |
HMAC-SHA256 en base64 |
| Stripe | Stripe-Signature |
t=…,v1=…: HMAC-SHA256 de t.cuerpo (tolerancia de 10 min) |
| GitHub y otros | X-Hub-Signature-256 |
sha256= + HMAC hexadecimal |
| Genérico | X-Signature / X-Webhook-Signature |
HMAC-SHA256 hex o base64 |
| Sin firma | ?secret=… en la URL |
Comparación del secreto |
En Stripe el secreto lo genera Stripe (whsec_…): pégalo en el campo «Secreto» del receptor.
Si la firma no es válida se responde 401 y queda registrado en Actividad.
Qué hace con cada evento
- Crea o actualiza el registro (por campo único o id externo) y sus líneas.
- Si el tema del evento contiene «delete» (p. ej.
order.deleted), borra el registro y sus líneas. - El «ping» que envía WooCommerce al crear el webhook se responde con
200. - Si el receptor no tiene mapeo, los campos se emparejan automáticamente por nombre.
Los webhooks necesitan que Tablifyx sea accesible desde internet. En una instalación local (Laragon) usa un túnel como
cloudflaredongrok, o confía en la sincronización programada.