Antes de pulsar: dónde está y qué hace Odoo solo
La ficha de la instancia se abre desde el menú Ventas (Sales): entra en Shopify, después en Control Center y por último en Instances. El botón Sincronizar productos está en las ramas 17, 18, 19 y 20 de Odoo y, según la condición de su vista, se ve siempre.

El botón no es el único camino. Lo que hace lo hace también la tarea programada Shopify Sync Products, cada hora, que viene desactivada al instalar el módulo. Lo que sigue describe el código publicado para Odoo 20.0.
- Decide si te basta la tarea programada
Shopify Sync Products(cada hora, desactivada al instalar): si no la activas, puedes lanzar la sincronización de productos con este botón.
- Abre la ficha de la instancia y anota el valor de
Last Product Sync. Se ve en la ficha y en la lista de instancias, en solo lectura: lo escribe el módulo, no tú.
- En la pestaña
Operations, grupoConfiguración de sincronización(Sync Settings), revisaPage Size(50 por defecto) yMax Pages(20 por defecto). Si pones menos de uno en cualquiera de los dos, el módulo usa uno.
- Si la instancia no pasa por FlexigoTech Cloud, el código exige que tenga token de acceso antes de enviar nada.

Qué hace el botón, en orden
- Crea un registro de sincronización de la instancia, de tipo productos, marcado como en curso.
- Prepara la consulta a Shopify. Pide los productos ordenados por fecha de actualización y, de cada uno, entre otros datos: título, proveedor, tipo de producto, estado, descripción, etiquetas, fecha de actualización, imagen destacada, opciones y hasta 250 variantes con su SKU, precio, precio de comparación, código de barras y cantidad de inventario.
- Decide el filtro. Si
Last Product Syncestá vacío, no pone ninguno. Si tiene fecha, pide solo los productos actualizados en Shopify desde ese momento. - Llama a Shopify por páginas del tamaño de
Page Size, pasando en cada llamada el cursor de la página anterior. - Entrega cada producto recibido al vínculo de producto de Shopify del módulo y lo suma al total.
- Se para cuando Shopify indica que no hay más páginas o cuando llega al número de páginas de
Max Pages. - Escribe en
Last Product Syncla fecha y la hora de ese momento y cierra el registro de sincronización, con el total contado como productos actualizados.
Un detalle del último paso: la fecha se escribe al salir del bucle, tanto si ya no quedaban más páginas como si se cortó por Max Pages. La siguiente ejecución parte, por tanto, de esa fecha. Tenlo presente al fijar Page Size y Max Pages en una tienda con muchos productos.
Qué hace la llamada a Shopify
- Si la instancia va por FlexigoTech Cloud, la petición pasa por el servicio, que añade el token que guarda (y renueva). Odoo no se conecta a la tienda ni recibe el token.
- Sin esa ruta, Odoo llama a Shopify con el token de la instancia.
- Si Shopify responde que has superado su límite de peticiones, la llamada espera (el tiempo que indique Shopify o unos segundos, con un tope de treinta, y más tiempo en cada reintento) y repite. Hace hasta tres intentos.
- Si Shopify rechaza el token en el primer intento y la instancia tiene token de renovación, el módulo repite la llamada una vez, con el token que tenga la instancia en ese momento.
- Cualquier otra respuesta de error, una respuesta con errores o una respuesta con errores de usuario detiene la acción con ese error. También se detiene si se agotan los reintentos.
Si falla: qué cambia y qué no
- Ante un error, el módulo marca el registro de sincronización como fallido, guarda en él el texto del error (recortado si es muy largo) y vuelve a lanzar el error, así que la acción se detiene.
- En una ejecución fallida,
Last Product Syncno se actualiza: ese paso viene después del bucle.
- Si FlexigoTech Cloud pausa la ejecución, el módulo borra el registro de esa ejecución (no queda como fallida) y la acción se detiene igualmente.
Después de pulsar: qué comprobar
Last Product Syncmuestra la fecha y hora actuales en la ficha y en la lista de instancias.
- Si tu tienda tiene más productos de los que caben en
Page SizeporMax Pages, recuerda que la fecha se escribe igualmente y que la siguiente ejecución pide solo lo actualizado desde ahí.
- Comprueba cómo se llama el botón en tu idioma de Odoo. Con Odoo en castellano es
Sincronizar productos; las demás traducciones publicadas están en el esquema.

Sincronizar productos; en alemán, Produkte synchronisieren; en francés, Synchroniser les produits; en italiano, Sincronizza prodotti; en portugués, Sincronizar produtos.Para el stock de Shopify tienes otro artículo: qué hace el botón «Pull Stock».
Precio y ayuda
Shopify Connector cuesta 9 € por versión de Odoo, sin IVA, en pago único (para 17, 18, 19 y 20; consulta la ficha), y necesita la suscripción a FlexigoTech Cloud: plan Conector, 49 €/mes o 490 €/año sin IVA.
Si estás implantando Odoo y quieres dejar la sincronización de productos bien configurada, FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida.
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_connector 20.0 (c7078cd8): views/shopify_instance_views.xml
- Código del módulo: flexigobe_shopify_connector 20.0 (c7078cd8): models/shopify_instance.py
- Código del módulo: flexigobe_shopify_connector 20.0 (c7078cd8): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/17.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/18.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/19.0/flexigobe_shopify_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
