Cómo conectar Odoo con HubSpot
HubSpot y Odoo conectados: del deal ganado al pedido de venta, con el estado de vuelta en el CRM.
Por Juan Cantón Rodríguez · Actualizado el
Tiempo de implantación · 7-15 días laborables
El problema
Comercial cierra en HubSpot y operaciones ejecuta en Odoo, pero entre los dos hay un salto manual: alguien recrea el cliente y el pedido en el ERP, los contactos se duplican o se desincronizan, y cuando el cliente pregunta por su pedido el comercial no sabe si se ha enviado o cobrado sin ir a molestar a otro departamento. Datos que deberían ser uno solo viven en dos sitios y nunca cuadran del todo.
PropuestaLa solución
Conectamos HubSpot con Odoo para que un deal ganado se convierta en pedido de venta y cliente en el ERP, los contactos se sincronicen entre ambos, y el estado de pedido y pago vuelva al CRM para que comercial lo vea sin salir de HubSpot. Aprovechamos que Odoo es open source y modular: nos integramos con los módulos que ya usas (CRM, Sales, Accounting) vía API externa (XML-RPC/JSON-RPC) o módulo propio, respetando tus reglas de negocio.
Qué automatizamos
- Cada deal ganado en HubSpot crea el cliente y el pedido de venta en Odoo con sus líneas.
- Contactos sincronizados entre HubSpot y Odoo, con reglas de deduplicación y una sola verdad.
- El estado de pedido (preparación, envío) vuelve a HubSpot para que comercial lo vea.
- El estado de pago y facturación de Odoo se refleja en la ficha del deal.
- Mapeo de propiedades y campos personalizados entre CRM y ERP según tu proceso.
- Idempotencia: los reintentos de webhook de HubSpot no duplican clientes ni pedidos.
Casos de uso típicos
Perfiles en los que la integración Odoo ↔ HubSpot suele encajar y qué cambia con ella. Son ejemplos ilustrativos, no clientes concretos.
B2B que vende en HubSpot y ejecuta en Odoo
Antes: Cada deal ganado se recreaba a mano como pedido en el ERP, con retrasos y errores.
Después: El deal ganado genera cliente y pedido en Odoo al instante, sin copiar nada.
Equipo comercial que no ve el estado del pedido
Antes: El comercial tenía que preguntar a operaciones si un pedido se había enviado o cobrado.
Después: El estado de pedido y pago vuelve a HubSpot y comercial responde al cliente solo.
Empresa con contactos duplicados entre CRM y ERP
Antes: Los mismos clientes vivían por duplicado en HubSpot y Odoo y nunca cuadraban.
Después: Contactos sincronizados y deduplicados; una sola verdad en los dos sistemas.
Qué cambia exactamente
El día a día sin la integración y con ella, lado a lado.
Sin la integración
- El deal ganado recreado a mano como pedido en Odoo.
- Contactos duplicados y desincronizados entre CRM y ERP.
- Comercial preguntando a operaciones por cada pedido.
- Datos que deberían ser uno solo viviendo en dos sitios.
Con la integración
- Del deal ganado al pedido de venta en Odoo, automático.
- Contactos sincronizados y deduplicados por email y por NIF o dominio.
- Estado de pedido y pago de vuelta en HubSpot.
- Una sola verdad compartida entre comercial y operaciones.
Cómo lo construimos
Integramos vía la API externa de Odoo (XML-RPC/JSON-RPC) o módulo propio según el caso, con una cola idempotente que procesa los webhooks de HubSpot y llama a la API de HubSpot para devolver estados. Mapeamos deals, contactos y propiedades a tus módulos reales de Odoo y respetamos tus reglas existentes en lugar de imponer un connector cerrado.
¿Qué conectores hay para Odoo y HubSpot?
Todas las opciones que existen, no solo la nuestra. Si tu caso lo resuelve un módulo de 50 €, cógelo: te lo decimos aquí antes de que nos escribas.
Data Sync de HubSpot (app certificada para Odoo)
La hace la propia HubSpot y es gratuita. Sincroniza en uno o dos sentidos contactos, empresas, productos y actividades, y lleva los leads de Odoo a contactos y las oportunidades a deals, con mapeo de campos por defecto. Si lo que necesitas es que comercial vea en HubSpot los mismos clientes y oportunidades que en Odoo, probablemente baste con esto y no nos necesitas.
Dónde se queda corto: No toca pedidos de venta ni facturas, así que el paso de deal ganado a pedido en Odoo y el estado de cobro de vuelta en HubSpot se quedan fuera. Mapear campos personalizados exige Data Hub Starter o superior. HubSpot la anuncia para Odoo en la nube, versión 10 o superior, y conecta por la API de Odoo: compruébalo antes con tu edición y tu plan.
Módulos de terceros en Odoo Apps (echoBitz, Zehntech, Cybrosys, Bac Ha y otros)
Se instalan dentro de Odoo y hablan directamente con la API de HubSpot. Los más completos sincronizan en ambos sentidos contactos, empresas, deals contra oportunidades y, alguno, presupuestos (sale.order), productos y usuarios.
Dónde se queda corto: No se pueden instalar en Odoo Online: solo en Odoo.sh o en servidor propio. Cada uno publica sus versiones de Odoo compatibles y sus dependencias (algunos piden tener Contabilidad y Ventas instalados, o crear propiedades propias en HubSpot), y casi todos llevan licencia propietaria OPL-1. Hay que revisar cobertura y mantenimiento por versión antes de comprar.
Zapier, Make o n8n
Flujos sencillos sin programar: un lead de Odoo que crea un contacto en HubSpot, una oportunidad que se actualiza al cambiar de etapa. El nodo de Odoo de n8n trabaja con contactos, oportunidades, notas y cualquier modelo vía recurso personalizado.
Dónde se queda corto: Los módulos de Odoo en estas plataformas cubren pocas operaciones (en Zapier, la app Odoo CRM se centra en leads y búsqueda de contactos), así que para pedidos o facturas toca tirar de llamadas a la API. Sin control de duplicados ni de bucles salvo que lo construyas tú, y dependen igualmente de la API externa de Odoo.
Integración a medida
Contra la API externa de Odoo (JSON-2 desde Odoo 19, XML-RPC/JSON-RPC en versiones anteriores) y la API de HubSpot, con cola idempotente y control de rate limit. Es la vía cuando el deal ganado tiene que convertirse en pedido de venta con sus líneas, cuando el estado de entrega y cobro debe volver al deal o cuando el proceso comercial no cabe en el mapeo por defecto.
Qué se rompe al conectar Odoo con HubSpot
Los fallos que aparecen de verdad, casi siempre semanas después de dar la integración por buena.
- 01
En Odoo Online Standard no hay API
Odoo solo da acceso a la API externa en el plan Custom (y en Odoo.sh o autoalojado), y en Odoo Online no se pueden instalar módulos de terceros con código Python. Con Odoo Online en plan Standard ninguna de las opciones de arriba funciona tal cual. Es lo primero que hay que mirar, antes de elegir conector.
- 02
Empresas y personas no se modelan igual
En Odoo empresas y personas son el mismo modelo (res.partner), con la persona colgando de su empresa. En HubSpot son objetos distintos unidos por asociaciones. Si el mapeo no respeta esa jerarquía, aparecen personas sin empresa, empresas duplicadas como contacto o asociaciones que se pierden en un sentido.
- 03
HubSpot no deduplica empresas creadas por API
HubSpot deduplica contactos por email y empresas por dominio, pero las empresas creadas por API, incluidas las de apps de sincronización, no se deduplican por dominio. Si la integración no busca antes de crear, cada sincronización puede dejar otra copia de la misma empresa. En Odoo pasa lo mismo: no hay una clave única que lo impida por defecto.
- 04
Un deal no es un pedido
Un deal de HubSpot corresponde a una oportunidad de Odoo (crm.lead), no a un pedido de venta. El pedido, con sus productos, precios e impuestos, es otro objeto (sale.order). Hay que decidir en qué etapa nace el pedido, de dónde salen las líneas y qué pasa si el deal se reabre después de crearlo.
- 05
Propietarios y comerciales
El propietario de HubSpot y el comercial de Odoo son usuarios de sistemas distintos. Si no se mapean uno a uno (normalmente por email), los registros llegan sin asignar o se asignan al usuario de la integración, y los informes por comercial dejan de cuadrar.
- 06
Bucles en la sincronización bidireccional
Si Odoo actualiza HubSpot y ese cambio dispara otra actualización hacia Odoo, el registro rebota sin fin o se pisan los cambios. Hace falta decidir qué sistema manda en cada campo y marcar los cambios hechos por la propia integración para ignorarlos al volver.
- 07
Límites de la API de HubSpot
Una app privada tiene un tope de peticiones cada 10 segundos y otro diario por cuenta, más bajos en Free y Starter que en Professional y Enterprise. La carga inicial de todo el histórico es donde se alcanzan: si la integración no respeta los 429 y no reintenta con espera, se pierden registros por el camino.
- 08
Webhooks que no llegan a tiempo
HubSpot reintenta un webhook fallido hasta 10 veces durante 24 horas y después lo descarta. Si el receptor tarda más de 5 segundos o está caído más de un día, el cambio no llega nunca a Odoo. Conviene responder rápido, encolar y tener una reconciliación periódica que detecte lo que falte.
- 09
Consentimiento y contactos de marketing
Sincronizar toda la base de clientes de Odoo hacia HubSpot no convierte a esos contactos en destinatarios legítimos de campañas. Las bajas y la lista de exclusión de Odoo tienen que viajar con ellos. Además, HubSpot crea por defecto como no marketing los contactos que entran por una integración, y marcarlos como marketing afecta a lo que pagas.
Preguntas frecuentes
¿Odoo Online (SaaS), Community o Enterprise?
Trabajamos con las tres. Con Community y Enterprise autoalojados tenemos más margen (módulos propios); con Odoo Online usamos la API externa, que Odoo solo abre en el plan Custom. Lo adaptamos a tu edición.
¿En qué momento se crea el pedido en Odoo?
Normalmente cuando el deal pasa a ganado, pero lo atamos a la etapa del pipeline que tú decidas para que encaje con tu proceso comercial.
¿Devuelve el estado de pedido y pago a HubSpot?
Sí. El estado de preparación, envío, facturación y pago de Odoo se refleja en la ficha del deal, para que comercial responda al cliente sin salir del CRM.
¿Cómo evita contactos duplicados?
Emparejamos por email o por un identificador que definas, y aplicamos reglas de deduplicación para que un contacto sea uno solo en ambos sistemas.
- Odoo para pymes: implantación y precios
- Si todavía comparas Odoo con otros ERP: Odoo vs Business Central
- O frente a SAP: Odoo vs SAP Business One
Integraciones relacionadas
Otras conexiones de la misma categoría que HubSpot y las que comparten plataforma con esta.
Integración Holded HubSpot. HubSpot y Holded compartiendo clientes, oportunidades y facturación en tiempo real.
Integración Holded Claude (Anthropic). Claude consultando tu Holded por MCP: qué ofrece el conector oficial, dónde se queda corto y cómo se monta con permisos que no den sustos.
Integración Holded PayPal. Cobros PayPal contabilizados en Holded con IVA, fees y multidivisa correctos.
Integración Shopify HubSpot. Shopify y HubSpot compartiendo clientes, pedidos y comportamiento de compra.
Integración Holded Odoo. Holded y Odoo trabajando a la vez: durante la transición a Odoo, o con Holded para la contabilidad y Odoo para las operaciones.
Integración Odoo WooCommerce. WooCommerce y Odoo sincronizados: pedidos, stock multi-almacén y facturación en tu ERP open source, a medida.
¿Quieres conectar varios SaaS a la vez? Ver pack "Proyecto completo"
¿Hablamos de tu integración con HubSpot?
Llamada de 30 minutos sin compromiso. Salimos con alcance y precio.