Saltar al contenido principal
Temu

El error «Could not determine Temu regionId for this order.» en Odoo

El mensaje Could not determine Temu regionId for this order. sale al pulsar Enviar tracking a Temu (Send Temu Tracking) cuando el módulo no encuentra la región del pedido de Temu y la correspondencia de transportista no trae ya un identificador de Temu. Aquí tienes la condición exacta del código, un caso para verlo y por dónde se arregla.

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

Lo esencial

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

Cuándo sale el mensaje

El mensaje Could not determine Temu regionId for this order. sale al pulsar el botón Enviar tracking a Temu (Send Temu Tracking) de la vista de la transferencia. Ese botón solo se ve cuando la transferencia es de un pedido de Temu y está en estado Hecho (Done); la condición de la vista es la misma en Odoo 17, 18 y 19. Cuando el mensaje aparece, la acción se detiene.

Esquema hecho con código: arriba el botón para enviar el tracking a Temu y debajo el mensaje de error sobre regionId
Esquema generado a partir del código publicado del módulo (no es una captura de Odoo): el botón y, debajo, el mensaje, en Odoo 17, 18 y 19.

El módulo lanza el mensaje al buscar el transportista de Temu para el pedido, cuando no consigue sacar una región. La condición del código es exactamente esa: la región está vacía.

Temu orders in Odoo every 15 minutes. Stock out every 5
Vídeo: Temu orders in Odoo every 15 minutes. Stock out every 5 (vídeo en inglés)

Qué hace el módulo antes de lanzarlo

El orden que sigue el código de Odoo 19 al pulsar el botón es este:

  1. Averigua el transportista de Odoo: el de la propia transferencia o, si no tiene, el del pedido de venta.
  2. Busca en la instancia de Temu una correspondencia de transportista activa para ese transportista. Si no hay una específica pero solo existe una correspondencia activa, usa esa. Lo mismo ocurre si no hay transportista: solo sirve la correspondencia activa si es única.
  3. Si esa correspondencia ya trae un identificador numérico del transportista de Temu, el módulo lo usa y termina ahí. No llega a mirar la región, así que por este camino el mensaje no puede salir.
  4. Si no, busca la región del pedido. Aquí está la condición: si no la encuentra, lanza el mensaje.
  5. Si la encuentra, consulta a Temu las empresas de logística de esa región y sigue eligiendo transportista a partir de la respuesta.

Dónde busca la región

Cuando el módulo llega al paso cuatro, busca la región del pedido en dos sitios, por este orden.

  • Primero, en los datos del pedido tal como llegaron de Temu: los del propio pedido, los de su pedido padre y los de envío (incluidos los de envío descifrados). Busca una clave regionId o region_id, en el primer nivel o dentro de un bloque anidado, y la da por buena si su valor se puede convertir en un número entero.
  • Si ahí no hay nada utilizable, mira el número de pedido de Temu (y, si está vacío, el identificador de pedido de Temu). Toma lo que haya antes del primer guion, o el número entero si no tiene guion, y si son solo cifras, esa es la región.

Si ninguno de los dos sitios da una región, sale el mensaje, antes de que el módulo consulte a Temu las empresas de logística.

Un caso para verlo

Ejemplo Caso ilustrativo: la empresa y sus datos son inventados para explicar el flujo.

Imagina una tienda inventada, Hogar Norte, que vende menaje en Temu y gestiona los envíos desde Odoo. Un operario valida la entrega de un pedido de Temu. La transferencia pasa a Hecho, aparece el botón Enviar tracking a Temu y lo pulsa. Sale Could not determine Temu regionId for this order. y la acción se detiene.

Qué ha pasado, paso a paso según el código:

  • La transferencia tiene un transportista de Odoo, pero la correspondencia activa que le corresponde no trae un identificador de Temu. El módulo no puede cerrar el asunto en el paso tres.
  • Pasa a buscar la región. En los datos del pedido no hay una clave regionId ni region_id con un valor que sea número entero, y lo que hay antes del primer guion del número de pedido de Temu (o el número entero, si no tiene guion) no son solo cifras.
  • Sin región, el módulo lanza el mensaje y no consulta a Temu nada más.

La causa, por tanto, no está en el botón ni en el estado de la transferencia: está en que el pedido importado no ofrece ninguna región al módulo.

Qué aprender del caso

El mensaje habla de la región, no del transportista

Sale antes de que el módulo compare transportistas. Puede que el transportista de Odoo esté perfectamente elegido y aun así el mensaje aparezca, porque lo que falta es la región.

Un identificador ya fijado evita el mensaje

Si la correspondencia de transportista activa para ese transportista ya trae su identificador numérico de Temu, el módulo lo devuelve en el paso tres y no comprueba la región. Es el único camino que muestra el código para no depender de la región.

Qué necesita el módulo del pedido

Para sacar una región, el pedido tiene que traer en sus datos una región numérica, o un número de pedido de Temu cuyo tramo antes del primer guion (o el número entero, si no lleva guion) sean solo cifras. Si no se da ninguna de las dos cosas, el módulo no tiene de dónde sacarla.

Versiones

El orden de comprobaciones que has leído es el del código de Odoo 19. El mensaje está publicado en el código de Odoo 17, 18 y 19, y el botón tiene la misma condición de vista en las tres.

Cómo se ve el botón con Odoo en castellano

Con Odoo en castellano, el botón se llama Enviar tracking a Temu y el estado en el que aparece, Hecho. Es el texto que debes buscar en la transferencia.

Esquema hecho con código: el texto del botón tal como se lee con Odoo en castellano, Enviar tracking a Temu
Esquema generado a partir de las traducciones publicadas del módulo (no es una captura de Odoo): así se lee el botón con Odoo en castellano.

Cómo ayuda FlexigoTech

FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida. Si trabajas con Temu Connector for Odoo y tus pedidos no ofrecen región o necesitas ajustar cómo se eligen los transportistas, podemos revisarlo contigo.

Sigue leyendo

Qué hace el botón Ejecutar de Temu Connector for Odoo, paso a pasoQué hace el botón Ejecutar de Fulfillment en Temu Connector for Odoo: qué comprueba, qué estados escribe y qué mensajes pueden pararlo.
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/stock_picking.py
  • Código del módulo: flexigobe_temu_connector 19.0 (455b3f0f): views/stock_picking_views.xml
  • flexigotech.com/en/services.html