Dónde está el botón y quién lo ve
Las fichas de las tiendas se abren desde el menú Shopify › Configuración › Tiendas (Shopify › Configuration › Stores). El tramo Shopify pide el permiso Visor (Viewer) y el tramo Configuración (Configuration) pide Operador (Operator); si no tienes uno de ellos, no ves ese tramo. En la pantalla Instancias de Shopify (Shopify Instances) está el botón Sincronizar pedidos, que se ve sin condiciones en Odoo 17, 18, 19 y 20.

Con Odoo en castellano el botón se llama Sincronizar pedidos; el rótulo cambia según el idioma de tu Odoo, como muestra este esquema.


Paso a paso: qué ocurre al sincronizar pedidos
Esto es lo que hace el código, en el orden en que lo hace.
- Primero, el camino automático. La tarea programada
Sincronizar pedidos de Shopify(Shopify Sync Orders) se ejecuta cada 5 minutos y llega a la misma acción que el botón; viene desactivada al instalar. Por eso el botón es la vía para lanzarla a mano, no el paso normal. - Pulsas el botón. El módulo crea un registro de la sincronización, de tipo pedidos, en estado de ejecución.
- Calcula desde cuándo pedir. Si
Última sincronización de pedidos(Last Order Sync) tiene fecha y la tienda ya ha importado algún pedido, pide los pedidos actualizados desde esa fecha. Si no, retrocede desde el momento actual una ventana de horas configurada en la tienda, nunca menor de una hora. El filtro es por fecha de actualización del pedido, no por fecha de creación. - Aplica el alcance de importación de la tienda. Según el alcance configurado, pide todos los pedidos, solo los pagados, o los pagados que siguen pendientes de cumplir.
- Pide páginas a Shopify. Llegan primero los pedidos actualizados hace más tiempo, y cada uno se procesa en Odoo uno a uno. Se detiene cuando Shopify no tiene más o cuando alcanza
Páginas máx.(Max Pages), que por defecto en el código es20y se ve en la ficha, pestañaOperaciones(Operations), grupoConfiguración de sincronización(Sync Settings). - Primera vez: segunda pasada sin filtro de fecha. Si no llegó ningún pedido y la tienda nunca ha importado uno, repite la petición sin el filtro de fecha, recorriendo el historial desde el pedido más antiguo (con el mismo límite de páginas). Si la tienda ya había importado pedidos y no llega nada, no repite: una tienda tranquila es lo normal.
- Si llegaron pedidos, apunta la fecha.
Última sincronización de pedidospasa a ser el momento actual, el contadorErrores de sincronización consecutivos(Consecutive Sync Errors) vuelve a cero y se vacía el último error guardado. Si la ejecución se detuvo por el límite de páginas, la fecha que se guarda es la del último pedido procesado cuando es posterior a la que ya había (o no había ninguna); la fecha nunca se mueve hacia atrás. La siguiente ejecución sigue desde ahí. Si Shopify no devolvió ningún pedido, no se escribe nada de esto. - Cierra el registro. Anota la hora de fin y la duración, cuenta todos los pedidos procesados como actualizados (esta acción no cuenta ninguno como creado) y sin errores, así que el registro queda como correcto. El botón devuelve el total de pedidos sincronizados.
Qué errores puede dar
Al pulsar Sincronizar pedidos, la acción puede pararse con La sincronización del pedido de Shopify falló para …: … (Shopify order sync failed for …: …). Tras «para» va el valor de Dominio de la tienda (Shop Domain) y tras los dos puntos, el texto del error que lo provocó. Antes de mostrar el aviso, el módulo marca el registro de la sincronización como fallido y guarda en él el texto del error.
Otros dos finales posibles, también según el código:
- Si el error ya es un aviso de Odoo de los que se muestran en un diálogo, el registro se marca como fallido y ese aviso se muestra tal cual.
- Si FlexigoTech Cloud ha pausado la sincronización, el módulo borra el registro de esa ejecución, para que no figure como fallida, y la acción se detiene.
El contador Errores de sincronización consecutivos lo escribe el código, no tú. Va sin rótulo en la ficha (solo se ve el número, de solo lectura) y solo aparece cuando es distinto de cero. Lo rellenan el botón Sincronizar pedidos, el botón Ejecutar (Run) y la tarea programada; lo vacía el botón Restablecer sincronización (Reset Sync), que también vacía Última sincronización de pedidos.
Qué comprobar después de sincronizar
- La fecha.
Última sincronización de pedidosse ve en la ficha y en la lista deInstancias de Shopify, de solo lectura. Si no cambia tras una ejecución sin errores, Shopify no devolvió pedidos; si la acción se paró con un aviso o la pausó FlexigoTech Cloud, la fecha tampoco se actualiza. - El dominio.
Dominio de la tiendase ve en la ficha y en la lista. Su ayuda dice: «Use su dominio exacto de Shopify, por ejemplo: flexigobe.myshopify.com». El aviso de fallo lleva ese dominio, así que compara uno con otro. - El límite de páginas. El código corta al llegar a
Páginas máx., así que ese campo limita cuántas páginas de pedidos se piden a Shopify en cada ejecución. Con muchos pedidos pendientes, la fecha avanza hasta el último pedido procesado y la siguiente ejecución continúa desde ahí. - El contador de errores. Si aparece en la ficha, es que hay errores consecutivos anotados; vuelve a cero cuando una ejecución con pedidos termina bien.
Coste y versiones
El módulo está publicado en Odoo Apps para Odoo 17, 18, 19 y 20, y funciona con la suscripción a FlexigoTech Cloud, plan Conector: 49 € al mes o 490 € al año sin IVA, hasta 3 cuentas de la plataforma. La conexión pasa por FlexigoTech Cloud, que guarda cifradas las credenciales, vigila la sincronización y avisa por correo si falla. Sin suscripción, o con el servicio suspendido, se para lo que da la suscripción; los datos se quedan en tu Odoo. El precio del módulo de cada versión está en la ficha de Odoo Apps y en la página del módulo.
Cómo te ayuda FlexigoTech
FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida. Si quieres revisar cómo queda configurada tu tienda de Shopify en Odoo, escríbenos.
Sigue leyendo
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigobe_shopify_seller_connector 20.0 (03641761): views/shopify_instance_views.xml
- Código del módulo: flexigobe_shopify_seller_connector 20.0 (03641761): models/shopify_instance.py
- Código del módulo: flexigobe_shopify_seller_connector 20.0 (03641761): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
