
Temu, los botones de preventa y el mensaje, presente en Odoo 17.0, 18.0 y 19.0. Los rótulos del esquema van en inglés, como en el código.Este error pertenece a la edición del estado de preventa de un producto en Temu. Es una comprobación previa: el módulo prepara los datos de la petición de cambio de preventa y, si le falta alguno imprescindible, se detiene antes de montarla.
Qué significa el mensaje y cuándo sale
¿Qué quiere decir el mensaje?
Que para cambiar el estado de preventa hacen falta dos cosas: el identificador de producto en Temu (el goodsId) y, al menos, una fila en la lista de SKU (skuInfoList). Si falta cualquiera de las dos, el módulo lanza Temu pre-sale status edit requires goodsId and at least one skuInfoList row. y la acción se detiene.
¿Cuál es la condición exacta?
Sale cuando se cumple una de estas dos cosas, una vez que el módulo ha ordenado los datos recibidos: el goodsId está vacío, o la lista de SKU se ha quedado sin ninguna fila. Un goodsId vacío es el que no trae valor, el que es texto vacío o el que es falso.
Si el goodsId llega como texto, ¿da error?
No por ser texto. El módulo le quita los espacios de los extremos y, si lo que queda son solo dígitos, lo convierte en número. Si lo que queda tiene otros caracteres, lo deja como texto y no es motivo de este mensaje. Solo cuenta como vacío el texto que se queda sin nada tras quitar los espacios.
¿Qué cuenta como fila válida de SKU?
El módulo recorre la lista que recibe y descarta dos tipos de entradas: las que no son un conjunto de datos con clave y valor, y las que no traen identificador de SKU. Si tras ese repaso no queda ninguna fila, sale el mensaje. Lo demás de la fila no decide si se supera la comprobación: si trae un stock objetivo de preventa se conserva, y si trae una fecha de fin de preventa se convierte a una marca de tiempo.

Desde dónde llegas al error
¿Qué botones pueden darlo?
Dos botones de la vista de producto: Activar preventa Temu y Desactivar preventa Temu. Los dos llegan a la misma comprobación, así que el mensaje es el mismo con cualquiera de ellos.

Activar preventa Temu.¿Cuándo se ven esos botones?
Según la condición de la vista, los dos botones se ocultan cuando falta cualquiera de estas condiciones: que el producto tenga enlace con una instancia de Temu (un indicador que no se ve en ninguna vista), que el campo Temu Display Goods tenga valor y que el campo Temu Display Sku tenga valor. Además, hay otro indicador interno, Show Temu Ui, que tampoco se ve en ninguna vista y que también los oculta. Para ver los botones, el producto tiene que cumplir todo eso a la vez.
Si los botones solo se ven con goods y SKU, ¿cómo puede salir el error?
Porque son dos comprobaciones distintas. La condición de la vista decide si ves el botón; la comprobación del método decide si la petición de cambio de preventa llega a montarse. El mensaje te dice que lo que recibió esa segunda comprobación no tenía goodsId o no tenía ninguna fila de SKU utilizable.
¿Sale en todas las versiones de Odoo?
El mensaje está en el código publicado de las ramas 17.0, 18.0 y 19.0, y la condición de visibilidad de los botones es la misma en las tres.
Qué hacer cuando sale
¿Se ha enviado algo a Temu?
La petición de cambio de preventa, no. La comprobación se hace antes de montar esa petición, así que no llega a salir hacia Temu.
¿Cómo lo resuelvo?
Empieza por lo que puedes ver desde Odoo. Primero, confirma que estás en la variante de producto que corresponde al anuncio de Temu que quieres cambiar. Segundo, comprueba que siguen apareciendo Activar preventa Temu y Desactivar preventa Temu: si desaparecen, el producto ya no cumple la condición de la vista (enlace con la instancia, goods y SKU de Temu, además del indicador interno que no se ve en pantalla). Tercero, vuelve a pulsar el botón. Si el error persiste con el botón visible, anota la variante de producto y cuál de los dos botones pulsaste, y cuéntanoslo: es el caso en el que conviene revisar el módulo con el dato concreto delante.
La ficha de la instancia de Temu se abre desde el menú Temu.
¿Qué pasa cuando la comprobación sí se supera?
El módulo monta la petición con el estado de preventa objetivo, el goodsId y la lista de SKU, y la manda a Temu probando los métodos de la API que tiene como candidatos. Si el método que ha respondido es distinto del que había anotado en la instancia, el módulo lo actualiza. Cualquier otro error que devuelva Temu es un asunto distinto de este mensaje.
Cómo te ayuda FlexigoTech
FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida. Si trabajas con Temu desde Odoo y quieres que alguien revise contigo tus productos y tu instancia, tienes la página del módulo y la ficha en Odoo Apps.
En una frase: el módulo se ha detenido antes de montar la petición porque faltaba el goodsId o una fila de SKU con identificador.
Sigue leyendo
Comprobado en el código del conector (versión 19.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigobe_temu_connector 19.0 (455b3f0f): models/temu_instance.py
- Código del módulo: flexigobe_temu_connector 19.0 (455b3f0f): views/product_template_views.xml
- Código del módulo: flexigobe_temu_connector 19.0 (455b3f0f): models/fgt_cloud.py
- flexigotech.com/en/services.html
