Conectar Odoo con Restaurant AI
Guía paso a paso para conectar tu Odoo y sincronizar pedidos, productos y facturación automáticamente.
Actualizado: 2026-04-07
Esta guía detalla los pasos que el cliente (dueño del restaurante) debe seguir para conectar su cuenta de Odoo con Restaurant AI. Al completar la configuración, los pedidos recibidos por WhatsApp se crearán automáticamente como órdenes de venta en Odoo.
Requisitos previos
Antes de comenzar, el cliente debe verificar:
-
Plan de Odoo compatible. La API externa de Odoo solo está disponible en planes Custom. Los planes "One App Free" y "Standard" no incluyen acceso a la API. Si el cliente no está seguro de su plan, puede verificarlo en Odoo > Ajustes > Suscripción, o contactar al soporte de Odoo.
-
Módulos instalados. El cliente debe tener activos los módulos de Ventas, Inventario y Contactos en su instancia de Odoo. Opcionalmente, Facturación si desea generar facturas automáticas.
-
Usuario con permisos suficientes. Se recomienda crear un usuario dedicado para la integración (ej.
restaurantai@miempresa.com) con rol de Administrador de Ventas. Este usuario necesita acceso a:- Ventas (sale.order) — crear y consultar órdenes
- Contactos (res.partner) — crear y buscar clientes
- Inventario (stock.quant, product.product) — consultar stock y productos
- Facturación (account.move) — solo si desea facturación automática
Paso 1: Obtener la URL de Odoo
La URL es la dirección web que el cliente usa para acceder a su Odoo. Ejemplos:
https://mirestaurante.odoo.com(Odoo Online/SaaS)https://erp.mirestaurante.com(Odoo self-hosted)
Debe ser la URL base, sin rutas adicionales. No incluir /web ni /login al final.
Paso 2: Identificar el nombre de la base de datos
El nombre de la base de datos depende del tipo de instalación:
- Odoo Online (SaaS): Generalmente es el subdominio. Si la URL es
https://mirestaurante.odoo.com, el nombre de la base de datos esmirestaurante. - Odoo self-hosted: El administrador del servidor lo configura. Se puede ver en la pantalla de selección de base de datos al iniciar sesión, o en Ajustes > Información del sistema.
Si el cliente tiene una sola base de datos (lo más común), puede probar con el subdominio.
Paso 3: Generar una API Key en Odoo
Las API Keys son más seguras que las contraseñas porque se pueden revocar individualmente y no exponen la contraseña del usuario.
Instrucciones para el cliente:
- Iniciar sesión en Odoo con el usuario que se usará para la integración.
- Ir a Ajustes (icono de engranaje en la esquina superior derecha) > Preferencias.
- Desplazarse hasta la sección Seguridad de la cuenta.
- Hacer clic en Nueva API Key.
- Escribir un nombre descriptivo:
Restaurant AI. - Confirmar la identidad (Odoo pedirá la contraseña actual).
- Copiar la API Key inmediatamente. Odoo sólo la muestra una vez. Si se pierde, hay que generar una nueva.
Notas importantes:
- La API Key reemplaza la contraseña en todas las llamadas a la API. La contraseña del usuario nunca se almacena en Restaurant AI.
- Si el usuario fue creado vía Google/OAuth sin contraseña local, debe establecer una contraseña primero en Preferencias > Seguridad > Cambiar contraseña. Esto es necesario para confirmar la generación de la API Key.
- La API Key hereda los permisos del usuario que la generó. Si el usuario no tiene acceso a Ventas, la integración no podrá crear órdenes.
Paso 4: Proporcionar los datos al administrador
El cliente debe proporcionar los siguientes 4 datos al administrador de Restaurant AI:
| Campo | Descripción | Ejemplo |
|---|---|---|
| URL de Odoo | Dirección web de su instancia | https://mirestaurante.odoo.com |
| Base de datos | Nombre de la BD de Odoo | mirestaurante |
| Usuario / Email | Email del usuario de integración | restaurantai@miempresa.com |
| API Key | Clave generada en el Paso 3 | a1b2c3d4e5f6... |
Seguridad: Estos datos deben compartirse por un canal seguro (no por email sin cifrar ni en un chat grupal). Una vez ingresados en Restaurant AI, se almacenan cifrados con AES-256-GCM. Ningún miembro del equipo de Restaurant AI puede ver la API Key en texto plano después de guardarla.
Paso 5: Verificar la conexión
Una vez que el administrador de Restaurant AI active el plugin, se realiza una prueba de conexión automática. El resultado puede ser:
Conexión exitosa
El sistema detecta 10 herramientas disponibles:
- Listar productos y categorías
- Consultar stock
- Buscar y crear clientes
- Crear, consultar y actualizar órdenes de venta
- Ajustar inventario
- Crear facturas
Errores comunes y cómo resolverlos
"Authentication failed"
- La API Key es incorrecta o fue revocada. Generar una nueva en Odoo > Preferencias > API Keys.
- El nombre de la base de datos no coincide. Verificar el Paso 2.
- El usuario está desactivado en Odoo. Verificar en Odoo > Ajustes > Usuarios.
"Access Denied" en alguna herramienta
- El usuario no tiene permisos sobre el módulo correspondiente. Verificar que tenga rol de Administrador de Ventas o los permisos listados en los requisitos previos.
"HTTP 404" o "connection refused"
- La URL es incorrecta. Verificar que la URL base sea accesible desde un navegador.
- Si es Odoo self-hosted, verificar que el servidor permita conexiones externas al endpoint
/jsonrpc.
"External API not available"
- El plan de Odoo no incluye acceso a la API. El cliente debe actualizar a un plan Custom o contactar a Odoo.
Paso 6: Mapear los productos del menú
Para que los pedidos de WhatsApp se sincronicen correctamente con Odoo, cada producto del menú en Restaurant AI debe estar vinculado a su equivalente en Odoo.
Mapeo automático
El sistema intentará hacer match automático por nombre exacto entre los productos de Restaurant AI y los de Odoo. Si los nombres coinciden (ej. "Pizza Margherita" en ambos sistemas), el mapeo se crea automáticamente.
Mapeo manual
Si los nombres difieren (ej. "Pizza Margarita" en Restaurant AI vs "PIZZA-001 Margherita" en Odoo), el administrador debe crear el vínculo manualmente desde el panel de administración, seleccionando cada producto del menú y su correspondiente producto en Odoo.
Recomendación
Para facilitar el mapeo automático, se recomienda que los nombres de los productos en Odoo coincidan con los nombres del menú en Restaurant AI. Si el cliente usa códigos SKU en Odoo, los nombres de display deben ser legibles y coincidir.
Qué sucede después de configurar
Una vez completada la configuración y el mapeo de productos:
-
Pedidos automáticos: Cuando un cliente hace un pedido por WhatsApp y se confirma, se crea automáticamente una orden de venta (Sale Order) en Odoo con el cliente y los productos mapeados.
-
Clientes sincronizados: Si el cliente de WhatsApp no existe en Odoo, se crea automáticamente como contacto (res.partner) con su nombre y teléfono.
-
Consultas de stock: El asistente de WhatsApp puede consultar la disponibilidad de productos directamente desde el inventario de Odoo.
-
Sin interrupciones: Si Odoo no está disponible temporalmente (mantenimiento, caída), los pedidos se siguen recibiendo con normalidad por WhatsApp. La sincronización se reintenta automáticamente hasta 3 veces. Si falla, el pedido queda registrado en Restaurant AI y se puede sincronizar manualmente después.
Revocar el acceso
Si el cliente desea desconectar Restaurant AI de su Odoo:
- Desde Odoo: Ir a Preferencias > API Keys y eliminar la clave "Restaurant AI". Esto revoca el acceso inmediatamente.
- Desde Restaurant AI: El administrador desactiva el plugin desde el panel. Los pedidos dejan de sincronizarse pero siguen funcionando por WhatsApp normalmente.
Revocar el acceso no elimina las órdenes ya creadas en Odoo ni los datos de Restaurant AI.
Resumen de datos necesarios
| # | Dato | Donde obtenerlo | Formato |
|---|---|---|---|
| 1 | URL de Odoo | Barra del navegador | https://xxx.odoo.com |
| 2 | Base de datos | Subdominio o pantalla de login | Texto (ej. mirestaurante) |
| 3 | Email de usuario | Odoo > Preferencias | Email válido |
| 4 | API Key | Odoo > Preferencias > API Keys | Cadena alfanumérica |
Versiones soportadas
La integración es compatible con:
- Odoo 17 (LTS)
- Odoo 18
- Odoo Online (SaaS) y Self-hosted
El protocolo utilizado es JSON-RPC, soportado de forma nativa en todas las versiones de Odoo desde la versión 8.