Antes de empezar: en qué versiones salen estos mensajes
Todo lo que sigue vale para Odoo 19 y 20. En Odoo 17 y 18 el módulo publicado con este nombre es otro producto: su ficha lo presenta como multitransportista, su código llama directamente a los transportistas y no usa FlexigoTech Cloud. Por eso ninguno de estos mensajes se aplica a esas dos versiones.
Errores al dar de alta y conectar un transportista
Son los mensajes que hablan del transportista en sí: sus credenciales, su código, su conexión y si se puede borrar.
¿Por qué no me deja guardar un transportista activado?
El módulo pide credenciales a todo transportista activado. Verás API Key and Secret are required for enabled carrier '{record.name}' o API Key is required for enabled carrier '{record.name}': el mensaje nombra el transportista y dice si falta solo la clave API o también el secreto. Rellena lo que pide y vuelve a guardar. Si el aviso es Code '{record.code}' must be unique within the company., el código tiene que ser único dentro de la empresa: cámbialo. Y si el transportista es genérico, Custom endpoint URL required for generic carriers significa que falta la URL del endpoint propio.
¿Qué significan los errores de conexión?
{self.name}: Connection timeout (>5s) indica que la conexión con ese transportista tardó más de 5 segundos. {self.name}: Connection failed - {str(e)} dice que la conexión falló y añade detrás el error técnico: esa parte final es la que tienes que leer. Si el transportista usa OAuth2, OAuth2 token refresh requires a configured carrier token endpoint adapter. avisa de que refrescar el token exige un adaptador de endpoint de token configurado para ese transportista.
¿Por qué no puedo borrar un transportista ni cambiar cómo se conecta?
Con Cannot delete: {recent_shipments} shipments use this carrier in the last 90 days. Archive instead. el módulo te dice cuántos envíos de los últimos 90 días usan ese transportista y te propone archivarlo en lugar de borrarlo. El otro mensaje es The connection of a carrier (direct, or through FlexigoTech Cloud) does not change: a carrier of another type is a new connection.: la conexión de un transportista, directa o a través de FlexigoTech Cloud, no cambia. Si necesitas la otra, das de alta un transportista nuevo.

Record Carrier Invoice abierto sobre la lista de envíos, con DHL Express como transportista.FlexigoTech Cloud y la clave MyDHL
¿Qué transportistas funcionan a través de FlexigoTech Cloud?
Según los mensajes del módulo, solo DHL Express. Con otro transportista verás Only DHL Express works through FlexigoTech Cloud: nothing was sent., Only DHL Express works through FlexigoTech Cloud. o %s does not work through FlexigoTech Cloud yet: only DHL Express does. Nothing was sent.. Incluso con DHL Express hay peticiones que no pasan por esa vía: This DHL request is not available through FlexigoTech Cloud: nothing was sent.. Varios de estos textos confirman que no se envió nada (nothing was sent).
¿Qué pide el módulo antes de guardar la clave MyDHL?
Si no has aceptado que el transportista funciona a través de FlexigoTech Cloud, sale Accept first that this carrier works through FlexigoTech Cloud: nothing was sent and nothing was saved.. Y como la clave API de MyDHL va junto con el secreto, Enter the MyDHL API key first: it goes with the secret. te pide escribir primero la clave. La marca de clave guardada no se pone a mano: Only Odoo marks a MyDHL key as saved in FlexigoTech Cloud, when an administrator saves it. deja claro que solo Odoo la marca, cuando un administrador la guarda.
¿Quién puede borrar la clave MyDHL y qué bloquea mientras existe?
Only an administrator deletes the MyDHL key saved in FlexigoTech Cloud. indica que borrar la clave guardada es cosa de un administrador. Mientras esa clave exista, This carrier has a MyDHL key saved in FlexigoTech Cloud for its environment: an administrator deletes it first. Nothing was changed. frena el cambio que intentabas en el transportista. Pide a un administrador que borre la clave de ese entorno y repite el cambio; el mensaje confirma que no se modificó nada.
Errores al cotizar, crear, etiquetar y seguir envíos
¿Por qué un envío no se cotiza, no se crea o no imprime etiqueta?
Empieza por el transportista. No enabled carriers configured. Please configure at least one carrier. pide al menos un transportista activado; No carrier configured y No carrier is configured for this shipment. dicen que falta transportista, el segundo en ese envío concreto. Si el envío está bloqueado, el módulo no lo cotiza (Blocked shipments cannot be quoted.), no lo crea (Blocked shipments cannot be created.) ni imprime su etiqueta (Cannot print label for a blocked shipment.). Y Failed to obtain tracking number from carrier indica que no se obtuvo número de seguimiento del transportista.

Bulk Print Labels al diálogo Record Carrier Invoice, pasando por Create Return.¿Qué datos pide un envío internacional o con mercancía peligrosa?
El código HS aparece en dos mensajes: HS code is required before creating an international shipment. lo pide antes de crear un envío internacional y HS code is required to generate customs documents. para generar los documentos de aduana. Complétalo antes de repetir la acción. Para mercancía peligrosa, Hazmat category is required for hazardous shipments. pide la categoría hazmat, y Selected carrier does not support hazardous materials. dice que el transportista seleccionado no admite materiales peligrosos: revisa qué transportista lleva ese envío.

Export Intrastat sobre la lista de envíos DHL Express en Ready to Ship y Delivered.¿Por qué no puedo borrar un envío o una etiqueta?
A shipment that went to the carrier cannot be deleted. protege los envíos que fueron al transportista y A generated label cannot be deleted. protege las etiquetas ya generadas.

Create Return sobre un envío en estado Delivered.¿Qué errores dan los lotes, el webhook y los ajustes en días?
En los lotes, Batch job can only be executed from Draft or Paused status significa que el lote solo se ejecuta desde Draft o Paused, y Batch job failed: {str(e)} que la ejecución falló, con el error técnico detrás. En el webhook, Webhook payload is missing a tracking number. dice que lo recibido no trae número de seguimiento y No shipment found for tracking number %s. que ese número no corresponde a ningún envío. En los ajustes, %s must be a number of days above 0. pide un número de días mayor que 0.
Si el mensaje no te basta
Si quieres ver dónde encaja cada pieza antes de tocar nada, tienes la puesta en marcha del módulo y cómo funciona por dentro. En la ficha de Odoo Apps cuesta 9 € por versión de Odoo (17, 18, 19 y 20), pago único sin IVA; en Odoo 19 y 20 necesita además la suscripción a FlexigoTech Cloud, con el plan Conector a 49 €/mes o 490 €/año sin IVA. Tienes más detalle en su página en flexigotech.com. En FlexigoTech implantamos Odoo 17, 18, 19 y 20 y desarrollamos conectores e integraciones a medida, por si tu caso pide algo distinto.
Sigue leyendo
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/carrier.py
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/carrier_batch_job.py
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/carrier_config.py
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/carrier_label.py
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/fgt_cloud.py
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/rate_lookup.py
- Código del módulo: flexigo_advanced_shipping_carrier_integration 20.0 (ffa31c5f): models/shipment.py
- apps.odoo.com/apps/modules/20.0/flexigo_advanced_shipping_carrier_integration
- apps.odoo.com/apps/modules/17.0/flexigo_advanced_shipping_carrier_integration
- apps.odoo.com/apps/modules/18.0/flexigo_advanced_shipping_carrier_integration
- apps.odoo.com/apps/modules/19.0/flexigo_advanced_shipping_carrier_integration
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
