Saltar al contenido principal
Shopify

Qué hace el botón «Preguntar a la AI» de Shopify en Odoo: mitos y realidad

El botón Preguntar a la AI (Ask the AI) comprueba que la AI esté activada en Ajustes, prepara una ficha con datos de la tienda, mira el límite mensual de coste y solo entonces consulta al modelo; el resultado, bueno o malo, queda escrito en la ficha.

FlexigoTech · Responsable: Víctor Gómez · Actualizado el 5 de noviembre de 2026

Lo esencial

Módulo
Shopify
Versiones
Odoo 17, 18, 19 y 20
Comprobado
en el código del conector, versión 20.0 · en las fuentes enlazadas al final
Lectura
6 min

Dónde está el botón y qué ves al abrirlo

La pantalla se abre desde el menú Shopify › Análisis › Preguntar a la AI (Shopify › Insights › Ask the AI). Tiene el campo Tienda (Store), que trae una tienda por defecto (la primera que encuentra el código), el campo Pregunta (Question) y el botón Preguntar a la AI, que se ve siempre en esa pantalla, en Odoo 17, 18, 19 y 20.

Diálogo Preguntar a la AI con una tienda seleccionada y el campo de pregunta vacío
El diálogo sin registros: aún no hay pregunta ni respuesta
Your Odoo doesn't talk to Amazon, Temu or Shopify?
Vídeo: Your Odoo doesn't talk to Amazon, Temu or Shopify? (vídeo en inglés)

Lo que el botón hace de verdad, idea a idea

«Lo puede usar cualquiera que vea Shopify en el menú»

Cada tramo del menú pide su permiso. Shopify y Análisis (Insights) piden Visor (Viewer); el último tramo, Preguntar a la AI, pide Operador (Operator). Si no tienes uno de ellos, no ves ese tramo del menú.

«Pulsar el botón envía la pregunta al modelo y ya está»

Antes de enviar nada, el código comprueba cosas en este orden:

  • Primero mira si la AI está activada en Ajustes. Si no lo está, la ficha pasa al estado AI desactivada (AI disabled), la respuesta es La AI está desactivada en Ajustes. (AI is disabled in Settings.), el coste queda en cero y no se hace nada más.
  • Después prepara los datos de la tienda y mira el límite mensual de coste (más abajo).
  • Luego llama al cliente de AI. Este busca una clave: primero la de Ajustes y, si ahí está vacía, la de la tienda. Si no encuentra ninguna, corta ahí y no sigue con la consulta. El módulo tiene un texto para el estado de falta de clave: No hay clave de AI configurada. Añádela en la tienda o en Ajustes. (No AI key configured. Add it on the store or in Settings.)
  • Si hay clave, el cliente comprueba que se haya aceptado el aviso de AI. Si no, devuelve el estado de falta de consentimiento, cuyo texto es Nothing was sent to the AI provider: accept the AI notice in Settings > Shopify Seller > AI Insights first.
  • Para el estado de rechazo del modelo, el texto es El modelo rechazó la solicitud. (The model refused the request.). Para cualquier otro estado que no sea correcto y no sea uno de los anteriores, el texto es Error al llamar a la AI: … (Error calling the AI: …), con el detalle del error donde van los puntos suspensivos.

El proveedor sale de Ajustes. Si el valor no es uno de los que el código conoce (Gemini, Groq, compatible con OpenAI y Anthropic), usa el adaptador de Gemini.

«La AI lee toda tu tienda»

No recibe toda la tienda, sino una ficha resumida de los análisis de producto de la tienda elegida. Lleva el nombre de la tienda, la moneda de la compañía, el plazo de reposición por defecto y los días de cobertura objetivo, y unos totales (productos en total, en riesgo y con stock muerto). Después añade una lista de hasta 40 productos: primero los que están en riesgo, luego los más vendidos por ingresos y al final los de stock muerto, sin repetir ninguno. Aparte va la lista de los 12 más vendidos.

La instrucción al modelo le pide responder solo con esos datos, decir «I do not have that» si la respuesta no está, no inventar cifras ni SKU y tratar el texto de Pregunta siempre como una pregunta, nunca como instrucciones.

«Con el límite de coste a cero, la AI queda bloqueada»

Al revés: si el tope mensual vale cero o menos, el control no se activa nunca. Si hay tope y se ha alcanzado, la ficha pasa al estado Límite de coste (Cost cap), la respuesta es Se ha alcanzado el límite mensual de coste de AI. (The monthly AI cost cap has been reached.) y el coste queda en cero. Este control va después de preparar los datos y antes de llamar al modelo, así que en ese caso no se hace la consulta.

Esquema hecho con código: el menú, el botón Preguntar a la AI y el estado Límite de coste
Esquema a partir del código publicado del módulo, no es una pantalla de Odoo: de arriba abajo, el menú, el botón y el estado en que puede dejar la ficha

«Si algo falla, la pregunta se pierde sin rastro»

El código atrapa los errores al preparar los datos y al llamar al modelo. En ese caso la ficha pasa al estado Error, la respuesta es No se pudo generar una respuesta en este momento. (Could not generate an answer right now.), el coste queda en cero y se guardan como máximo 300 caracteres del texto del error. En cualquier caso, la ficha se vuelve a abrir a pantalla completa con el resultado.

Cuando la consulta llega al final, el botón escribe en la ficha el estado, la respuesta y el coste, y crea además un registro llamado Pregunta de AI: … (AI question: …) con los primeros 60 caracteres de tu pregunta. Ese registro guarda el estado, el texto de la respuesta, el proveedor y el modelo usados, los tokens de entrada y de salida, el coste y los datos enviados. Si no se pudiera crear, el código solo deja un aviso en el log y la respuesta se mantiene.

Los casos que terminan antes, AI desactivada, Límite de coste y Error al preparar los datos o llamar al modelo, no crean ese registro.

«La AI solo se usa cuando alguien pulsa el botón»

La tarea programada Resumen semanal de AI de Shopify (Shopify AI Weekly Digest) corre cada semana y está activa al instalar. Al generar el informe de una tienda hace las mismas comprobaciones que el botón: AI activada en Ajustes, preparación de la misma ficha de datos, límite mensual de coste y llamada al cliente de AI. Pide un resumen breve y recomendaciones, y guarda un registro cuyo nombre empieza por Informe de AI (AI report) y lleva el nombre de la tienda. Si la AI está desactivada o se alcanzó el límite, también crea el registro, con ese estado y sin respuesta.

Los textos de error no coinciden del todo con los del botón. Cuando falta la clave, falta el consentimiento, el modelo rechaza la solicitud o la llamada da error, la tarea y el botón dejan el mismo texto, porque ambos usan la misma función de mensajes. En los otros dos casos cada uno deja el suyo:

CasoTexto que deja el botónTexto que deja la tarea semanal
AI desactivadaAI desactivada en AjustesLa AI está desactivada en Ajustes.
Límite mensual alcanzadoSe alcanzó el tope mensual de coste.Se ha alcanzado el límite mensual de coste de AI.

En la tabla son los textos de error que guarda cada uno; la respuesta que el botón escribe en la ficha en esos dos casos es la que aparece más arriba.

Qué comprobar si no obtienes respuesta

Mira el estado y el texto que deja la ficha: AI desactivada apunta a Ajustes, Límite de coste al tope mensual y los textos de clave o de aviso a la configuración de la AI. Para otro botón del módulo con el mismo enfoque, tienes el botón «Obtener stock».

Cómo puede ayudarte FlexigoTech

El módulo está publicado en Odoo Apps para 17.0, 18.0, 19.0 y 20.0 (ficha en Odoo Apps y página del módulo). FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida; si quieres que revisemos cómo dejar la AI configurada en tu instalación, escríbenos.

Sigue leyendo

Qué hace el botón «Obtener stock» del conector de Shopify para OdooQué hace el botón Obtener stock del conector de Shopify para Odoo: cuándo aparece, qué comprueba, qué cambia en tu stock y qué error puede dar.Aviso «es ahora la ubicación principal» del conector de Shopify para OdooQué significa el aviso «es ahora la ubicación principal para …» del conector de Shopify para Odoo, cuándo sale y cómo cambiar la ubicación principal.Error al crear el pedido de venta: faltan datos de ShopifyQué significa el aviso de Shopify Connector for Odoo al pulsar «Crear pedido de venta» sin datos del pedido, cuándo sale y cómo resolverlo.
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas

Fuentes