Sync HubSpot con n8n

Alta/actualización de contactos HubSpot desde webhook o form.
Sync de leads HubSpot con n8n: webhook y Private App. Workflow JSON gratis paso a paso para B2B en España. Logixb2b España. Para España y la UE. · Logixb2b ES.
Descarga el workflow
JSON listo para importar en n8n (Import from File). Sustituye solo REEMPLAZA_* y credenciales.
Qué resuelve esta sincronización con HubSpot
Un lead que tarda horas en aparecer en HubSpot es una oportunidad que se enfría antes de que nadie del equipo comercial se entere de que existe. Este workflow de n8n cierra ese hueco: recibe los datos de un lead desde un formulario, un webhook o cualquier otra fuente, comprueba si ya existe un contacto con ese email en HubSpot, lo crea o lo actualiza según corresponda, y avisa al comercial responsable con un enlace directo a la ficha recién creada o modificada. Está pensado para equipos B2B que reciben leads desde varias fuentes distintas (landings, formularios de contacto, ferias, campañas de pago) y quieren un único punto de entrada limpio hacia su CRM, sin depender de que alguien revise manualmente una bandeja de entrada varias veces al día para no perder ninguna oportunidad por el camino.
Qué necesitas antes de importar el flujo
Necesitas una instancia de n8n, ya sea autoalojada o en n8n Cloud, y una cuenta de HubSpot con permisos para crear una Private App, que es la forma más sencilla de autenticar este flujo frente a una integración OAuth completa. La Private App se genera desde Configuración, Integraciones, Apps privadas y necesita, como mínimo, los scopes de lectura y escritura sobre contactos.
Cómo está construido el workflow
El flujo tiene un Webhook como punto de entrada, que recibe los datos del lead en un cuerpo JSON con los campos que hayas definido. Un nodo de normalización limpia y ordena esos datos antes de la llamada a la API de HubSpot, que primero busca un contacto existente por email y, según el resultado, decide entre crear uno nuevo o actualizar el que ya existe. Una vez completada esa operación, el flujo construye un mensaje con el nombre, la empresa y el enlace directo a la ficha del contacto en HubSpot, y lo envía al canal de Slack configurado, cerrando el ciclo entre la captura del lead y el aviso al comercial en una sola ejecución sin pasos manuales intermedios.
Configurar la Private App y el mapeo de campos
Importa el JSON en n8n y abre el nodo de credenciales de HubSpot para introducir el token generado por tu Private App como una credencial de tipo Header Auth o HTTP Bearer, nunca pegado directamente en el cuerpo de un nodo. Copia la URL de producción del Webhook y configúrala como destino de envío en tu formulario web o herramienta de captación de leads. Revisa que los nombres de los campos que envías coinciden exactamente con los que espera el nodo de normalización: un desajuste en los nombres es la causa más frecuente de contactos que llegan vacíos o incompletos a HubSpot. Si usas propiedades personalizadas de HubSpot, créalas primero directamente en HubSpot con nombres internos claros y luego mapea el flujo sobre ellas, en vez de dejar que se generen automáticamente. Si tu empresa gestiona varias marcas o líneas de negocio dentro del mismo portal de HubSpot, añade también un campo de origen o de marca en el mapeo desde el primer día: es mucho más barato incluirlo ahora que reconstruir después el histórico de contactos para saber de dónde vino cada uno.
Probar la sincronización antes de producción
Antes de activar el flujo con leads reales, haz al menos dos pruebas: una con un contacto completamente nuevo, para confirmar que se crea correctamente en HubSpot, y otra reenviando los mismos datos, para confirmar que la segunda vez actualiza el contacto existente en lugar de duplicarlo. Usa un email de prueba que no pertenezca a ningún cliente real, del tipo ejemplo.test, y revisa después de cada prueba que los campos se han rellenado bien en la ficha de HubSpot, sin valores en blanco donde no toca. Si tienes listas o workflows de HubSpot que se disparan automáticamente al crear un contacto, comprueba también que no envían correos de marketing reales a tus direcciones de prueba durante esta fase. Aprovecha también estas pruebas iniciales para confirmar que el enlace que recibe el comercial en Slack abre exactamente la ficha correcta del contacto en HubSpot, y no una página de error por un identificador mal formado en la URL base configurada.
RGPD, responsable de mantenimiento y alternativas en Make/Zapier
Antes de sincronizar leads reales, confirma la base legal para tratarlos (normalmente interés legítimo o consentimiento, según el origen) y que tu formulario informa con claridad del tratamiento de datos, ya que HubSpot actúa como encargado del tratamiento y conviene tener un acuerdo de tratamiento de datos vigente. Nombra a una persona responsable de mantener esta integración: quién revisa los errores, quién rota el token si caduca y quién decide qué campos nuevos se sincronizan con el tiempo. Si tu equipo trabaja con Make o Zapier en vez de n8n, la estructura equivalente combina un módulo de entrada (webhook o formulario) con el conector nativo de HubSpot, que suele incluir una acción lista de crear o actualizar contacto, seguida de un aviso por Slack o correo al comercial responsable.
Qué hacer cuando el volumen de leads crece
Cuando el volumen de leads empieza a crecer, revisa si tu Private App de HubSpot tiene límites de peticiones por segundo o por día que puedan afectar al flujo en horas punta, especialmente si varias fuentes distintas envían leads a la vez durante una campaña o una feria. Si notas retrasos o errores de límite de peticiones, añade una cola o un pequeño retraso entre llamadas en el propio flujo de n8n para espaciar las peticiones a la API de HubSpot en vez de dispararlas todas a la vez.
Importar, configurar y producción 24/7
En n8n: ⋯ → Import from File → el JSON de este recurso. El flujo llega inactive. Abre el sticky INSTRUCCIONES del lienzo y el nodo Config/Set: URLs, umbrales y placeholders. Enlaza credenciales reales (HTTP Header Auth, OAuth Google Sheets, Slack Incoming Webhook, CRM Private App) — nunca dejes tokens en el archivo versionado.
Prueba una ejecución Manual o un evento de test (formulario, webhook, cron forzado). Revisa CRM, Sheets o Slack. Solo entonces Active. Timezone del workflow: Europe/Madrid.
Para que corra solo hace falta n8n online. Self-hosted UE: VPS Hetzner/OVH/IONOS (o panel con Docker) → Ubuntu → Docker Compose (n8n + Postgres) → HTTPS con Caddy/Nginx → N8N_HOST, WEBHOOK_URL, GENERIC_TIMEZONE=Europe/Madrid, N8N_ENCRYPTION_KEY. Alternativa: n8n Cloud (importas, conectas credenciales y Active; vigila límites). Make/Zapier: mismo mapa mental; este JSON es el esqueleto n8n.
EU AI Act y RGPD: qué es y por qué tu empresa debe aplicarlo
El Reglamento (UE) 2024/1689 (EU AI Act) ya está en vigor. Si tu empresa usa n8n con nodos de IA (Gemini, OpenAI, Claude, etc.) en ventas o operaciones, actuáis como desplegadores (deployers): no hace falta ser el fabricante del modelo. Desde el 2 de febrero de 2025 el Artículo 4 exige alfabetización en IA del personal que opera estos sistemas; en agosto de 2026 se refuerza la supervisión (AESIA en España) y la trazabilidad.
En paralelo, el RGPD (AEPD) aplica porque el flujo trata datos de contacto B2B. Base jurídica, minimización y, si hay perfiles automatizados a escala, evaluación de impacto. AI Act y RGPD se acumulan: un fallo puede implicar ambas autoridades.
Este recurso ayuda en la práctica: placeholders sin secretos, Europe/Madrid, opción self-hosted en VPS UE (soberanía de datos), registro de ejecuciones en n8n (logs) y espacio para human-in-the-loop (aprobación antes de acciones sensibles). Detalle: /uso-responsable-de-ia-y-transparencia. Texto informativo, no asesoramiento legal.
Preguntas frecuentes
¿Necesito un plan de pago de HubSpot para usar este flujo?
No, funciona con el plan gratuito de HubSpot CRM, siempre que puedas crear una Private App con los scopes de contactos necesarios.
¿Qué pasa si el lead ya existe en HubSpot con ese email?
El flujo busca primero por email y, si encuentra coincidencia, actualiza los campos en vez de crear un contacto duplicado.
¿Puedo conectar formularios de cualquier plataforma web?
Sí, cualquier herramienta capaz de enviar una petición POST a una URL sirve como origen; solo tienes que apuntar el destino del formulario a la URL de producción del webhook.
¿Qué scopes necesita como mínimo la Private App de HubSpot?
Como mínimo, lectura y escritura sobre contactos; si usas propiedades personalizadas, añade también el scope de lectura del esquema de contactos.
¿Qué hago si el token de la Private App deja de funcionar?
El flujo empezará a devolver errores de autenticación; genera un nuevo token en HubSpot, actualiza la credencial en n8n y anota la fecha de rotación en vuestra documentación interna.
¿Cómo evito enviar más datos personales de los necesarios a HubSpot?
Limita el mapeo a los campos que el equipo comercial realmente va a usar, evita reenviar campos de texto libre sin revisar y documenta la base legal del tratamiento.