Webhooks Guardados
Guarda endpoints de webhook con nombre una sola vez y reutilízalos para pedidos y campañas de email. Cada webhook tiene su propia URL, clave de firma, cabeceras personalizadas y payload de prueba.

Qué hacen los webhooks
Un webhook es una forma de que DabDash le avise a tus propios sistemas — tu CRM, tu herramienta de automatización, tu servidor personalizado — en el momento exacto en que sucede algo en tu tienda. Cuando un cliente realiza un nuevo pedido, DabDash envía una breve solicitud HTTPS a una URL que tú indiques. Tu sistema lee el pedido y hace lo que quieras con él: agregarlo a un embudo de CRM, enviar un enlace de pago, iniciar un envío de entrega, notificar a un canal de Slack.
Por ahora DabDash envía un solo evento — order.created — en el instante en que se realiza un pedido. El pedido está en estado pendiente en ese momento. Otros cambios de estado no disparan un webhook (todavía).
URL del endpoint
Esta es la URL a la que DabDash hará POST de cada nuevo pedido. Debe ser:
- Solo HTTPS — las URLs
http://son rechazadas. - Accesible públicamente — bloqueamos rangos de IP privadas (todo en 10.x, 172.16-31.x, 192.168.x, 127.x, enlace local). Tu CRM debe estar en internet público.
- Estable — si tu URL cambia, actualízala aquí. No reintentamos entregas fallidas más allá de 4 intentos.
Interruptor Activo
Desactívalo para pausar la entrega sin perder tu configuración. Cuando el interruptor está apagado, no se envían eventos. El mismo interruptor se refleja en la tarjeta del método de pago Webhook en Configuración › Métodos de Pago — apagar uno apaga el otro también.
El secreto de firma
Cada solicitud que DabDash envía a tu endpoint incluye un encabezado llamado X-DabDash-Signature. Este encabezado contiene un HMAC-SHA256 de todo el cuerpo de la solicitud, calculado usando tu secreto. Tu servidor debe:
- Leer el cuerpo crudo de la solicitud antes de parsear JSON.
- Calcular
sha256=HMAC-SHA256(cuerpo, secreto). - Comparar el valor calculado con el encabezado
X-DabDash-Signatureusando una comparación de tiempo constante. - Rechazar la solicitud si los valores no coinciden — eso significa que alguien que no es DabDash la envió.
Puedes rotar el secreto en cualquier momento. El secreto antiguo deja de funcionar inmediatamente — no después de un retraso — así que asegúrate de que tu servidor esté usando el nuevo valor antes de presionar el botón de rotar.
Encabezados personalizados (Avanzado)
Haz clic en Avanzado para revelar la sección de encabezados personalizados. Algunos CRMs requieren encabezados adicionales para aceptar solicitudes — por ejemplo, un token Authorization: Bearer ..., un identificador de inquilino como X-Shop-Id: 42, o una clave API fija. Agrega hasta 20 pares nombre/valor; se envían con cada solicitud webhook.
Algunos nombres de encabezados están reservados y son rechazados: Host, Content-Type, Content-Length, y cualquier encabezado que comience con X-DabDash- — DabDash controla esos.
Qué hay en la carga
El cuerpo es JSON. Campos de nivel superior:
event— siempreorder.createdpor ahora.timestamp— segundos Unix, cuando se preparó el webhook.tenant—{ id, slug, name }, identificando tu tienda.order—{ id, order_number, status, payment_method, subtotal_cents, total_cents, currency, customer, items, created_at }.test— solo presente (true) para pings de prueba.
Confiabilidad y reintentos
DabDash reintenta entregas fallidas con retroceso exponencial: 4 intentos en total, con retrasos de 1 min, 5 min y 15 min entre ellos. Reintentamos en errores 5xx del servidor y fallos de conexión, pero no en respuestas 4xx — un 4xx significa que tu endpoint aceptó la solicitud pero la rechazó como entrada inválida, lo cual es un problema de configuración, no un fallo transitorio.
Después del fallo final, el pedido continúa normalmente — la entrega del webhook no bloquea el checkout. El fallo aparece en la página de detalle del pedido bajo Actividad de pago como "Notificación al CRM fallida".
Preguntas Frecuentes
¿Qué es un webhook guardado en DabDash?
Un webhook guardado es un endpoint con nombre que configuras una vez en Configuración → Webhooks y reutilizas en tu tienda. Puedes asignar un webhook como tu webhook de pedidos (recibe cada pedido nuevo) y apuntar diferentes campañas de correo hacia otros webhooks. Cada webhook tiene su propia URL, clave de firma y encabezados personalizados.
¿Cómo creo un nuevo webhook en DabDash?
Ve a Configuración → Webhooks y haz clic en Nuevo Webhook. Dale un nombre (por ejemplo, "GoHighLevel CRM"), pega la URL del endpoint, activa el interruptor Activo y guarda. DabDash genera una clave de firma por ti. El primer webhook que crees se establece automáticamente como tu webhook de pedidos.
¿Cómo decido qué webhook recibe los pedidos en DabDash?
Ve a Configuración → Webhooks y haz clic en Establecer como webhook de pedidos en la fila que quieras. La fila del webhook de pedidos se resalta con una insignia. Solo un webhook puede ser el webhook de pedidos a la vez; el cambio es inmediato.
¿Puedo usar un webhook diferente para cada campaña de correo en DabDash?
Sí. Al crear o editar una campaña en modo Webhook, eliges qué webhook guardado usar en un desplegable con tus webhooks configurados. Diferentes campañas pueden enviar a diferentes proveedores.
¿Cómo verifico que un webhook vino de mi tienda DabDash?
Cada solicitud incluye un encabezado X-DabDash-Signature — un HMAC-SHA256 del cuerpo original de la solicitud usando tu clave de firma. Tu endpoint calcula la misma firma y la compara. Si coinciden, la solicitud es genuina. Rota la clave en cualquier momento y la anterior deja de funcionar de inmediato.
¿Qué pasa si mi endpoint de webhook no está disponible?
DabDash reintenta las entregas fallidas con retroceso exponencial — 4 intentos, con retrasos de 1, 5 y 15 minutos. Tras todos los intentos fallidos el pedido continúa normalmente; el checkout nunca se bloquea. El fallo aparece en el detalle del pedido bajo Actividad de pago.