# Odoo

Conecta un servidor Odoo para que el asistente encuentre contactos por teléfono y cree pedidos

> Full REST + WebSocket API reference: https://api.happ.tools/reference

Odoo se conecta con los datos de tu servidor y el acceso de un usuario: Happ se autentica directamente en tu instancia de Odoo, así que funciona igual con Odoo Online que con uno autoalojado. Una vez vinculado, el asistente encuentra contactos por número de teléfono y crea pedidos desde el chat.

## Antes de empezar [#before-you-start]

* **Instancia de Odoo** accesible desde internet: Odoo Online (`mycompany.odoo.com`) o tu propio servidor.
* **URL del servidor, nombre de la base de datos y el usuario** con permiso para leer contactos y crear pedidos.
* **Contraseña o clave API** de ese usuario (ver abajo: la clave API es la opción más segura).
* **Espacio de trabajo de HAPP** con al menos un asistente configurado para hablar con clientes.

## Obtener una clave API [#get-an-api-key]

Puedes conectarte con la contraseña normal del usuario, pero una clave API es más segura: se limita a una integración y puedes revocarla sin cambiar la contraseña de la cuenta.

1. En tu panel de Odoo, haz clic en el **avatar** arriba a la derecha y elige **My Preferences**.
2. Cambia a la pestaña **Seguridad**, pulsa **Add API Key** e introduce tu contraseña actual para confirmar que eres tú.
3. Ponle un nombre a la clave (por ejemplo `Happ`) y &#x2A;*cambia la duración de "1 Day" a "1 año"**; si no, la clave caduca en 24 horas. Pulsa **Create key** y cópiala.

Odoo muestra la clave API una sola vez. Cópiala antes de cerrar el diálogo: si la pierdes, tendrás que generar una nueva.

<img alt="Odoo muestra la clave generada una sola vez, en un diálogo que no se puede volver a abrir" src="__img0" />

## Conectar [#connect]

1. En HAPP abre **Integraciones** y busca Odoo en **Añadir un CRM**.
2. Haz clic en **Conectar**: el modal pide cuatro campos.
3. Introdúcelos y haz clic en **Conectar**.

| Campo            | Valor                                                                 |
| ---------------- | --------------------------------------------------------------------- |
| URL del servidor | La dirección de tu instancia, p. ej., `https://mycompany.odoo.com`    |
| Base de datos    | El nombre de la base de datos                                         |
| Usuario          | El email del usuario                                                  |
| Contraseña       | La contraseña de Odoo del usuario, **o** la clave API generada arriba |

Odoo pasa a **Mis integraciones** como una tarjeta que muestra su **Información de la cuenta**: el nombre de la instancia y la fecha y hora de conexión.

## Configuración [#settings]

Abre el icono de engranaje de la tarjeta para configurar lo que el asistente puede hacer.

* **Buscar**: el asistente busca contactos por número de teléfono en la base de datos de Odoo.
* **Crear**: el asistente crea pedidos vinculados al contacto, con el nombre del producto en las notas.

## Solución de problemas [#troubleshooting]

| Problema                                     | Causa                                                         | Solución                                                                                                                                                                      |
| -------------------------------------------- | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Falla la autenticación                       | Usuario, contraseña o base de datos incorrectos               | Odoo necesita que coincidan los cuatro valores. Confirma el nombre de la base de datos: una instancia puede alojar varias, y el nombre no siempre coincide con el subdominio. |
| La clave dejó de funcionar al cabo de un día | La clave API se creó con la duración por defecto "1 Day"      | Genera una clave nueva y pon la duración en **1 año**.                                                                                                                        |
| 401 con una clave que antes funcionaba       | Un administrador la revocó o cambió la contraseña del usuario | Genera una clave API nueva en **My Preferences** > **Seguridad** y vuelve a conectar en HAPP.                                                                                 |
| Servidor inaccesible                         | Instancia autoalojada no expuesta o bloqueada por un firewall | La URL debe ser accesible desde internet por HTTPS. Permite las IP de salida de HAPP si filtras por IP.                                                                       |
| No se crean pedidos                          | Sincronización mal configurada o faltan permisos              | Comprueba que **Crear** esté activado en **Configuración** y que el usuario de Odoo tenga permisos para crear pedidos.                                                        |

¿Sigues atascado? [Contacta con soporte](https://happ.tools/contacts) con el texto del error y te indicaremos la solución exacta.

## Desconectar y volver a conectar [#disconnect-and-reconnect]

**Para desconectar:** abre **Integraciones** > **Odoo**, haz clic en **Desconectar** junto a la instancia conectada y confirma.

Después de desconectar:

* Los nuevos pedidos del chat dejan de enviarse a Odoo.
* Los registros existentes en Odoo no se tocan.
* El asistente sigue funcionando en el chat; solo se detiene la sincronización con Odoo.
* La clave API **no** se revoca en Odoo. Revócala allí por separado si lo necesitas.

**Para volver a conectar:** abre **Integraciones** > **Odoo**, haz clic en **Conectar** e introduce de nuevo los cuatro campos.

Se conservan tras volver a conectar: los ajustes de búsqueda y creación, el mapeo de campos, la vinculación del asistente con la instancia y las analíticas de la integración.

## Siguiente [#next]

* [CRM](/docs/integrations/crm): todas las integraciones de CRM
* [Herramientas](/docs/agents/tools): llama al CRM durante las conversaciones
* [Integraciones](/docs/integrations): el catálogo completo
