Aller au contenu principal
Shopify

La tâche « Synchroniser les produits Shopify », passage après passage

La tâche planifiée Synchroniser les produits Shopify (Shopify Sync Products) s'exécute toutes les heures, mais elle est désactivée à l'installation du module. Une fois active, elle parcourt les boutiques qui remplissent ses conditions, demande les produits à Shopify page par page et les enregistre un par un : si un produit échoue, les autres continuent.

FlexigoTech · Responsable : Víctor Gómez · Mis à jour le 5 novembre 2026

L'essentiel

Module
Shopify
Versions
Odoo 17, 18, 19 et 20
Vérifié
dans le code du connecteur, version 17.0 et 20.0 · dans les sources citées à la fin
Lecture
5 min

Ce qu'est cette tâche et quand elle s'exécute

C'est une tâche planifiée d'Odoo qui s'appelle Synchroniser les produits Shopify (Shopify Sync Products). Elle s'exécute toutes les heures et elle est désactivée à l'installation du module : tant que personne ne l'active, elle ne fait rien. Elle existe dans toutes les branches publiées du module (Odoo 17, 18, 19 et 20) ; dans Odoo 17, elle est configurée pour se répéter sans fin.

Schéma réalisé avec du code, pas un écran d'Odoo : la tâche planifiée Shopify Sync Products, qui s'exécute toutes les heures et est désactivée à l'installation, et le menu Shopify › Configuration › Stores
Schéma réalisé à partir du code publié du module (ce n'est pas une capture d'Odoo) : la tâche, sa fréquence et le menu des boutiques, avec les libellés en anglais du code.

Les boutiques s'ouvrent depuis le menu Shopify › Configuration › Boutiques. Si vous ne voyez pas une partie du menu, c'est une question de droits : la partie Shopify demande Lecteur et la partie Configuration demande Opérateur.

Schéma réalisé avec du code, pas un écran d'Odoo : le nom de la tâche en espagnol, allemand, français, italien et portugais
Schéma réalisé avec les traductions publiées du module (ce n'est pas une capture d'Odoo) : en espagnol, la tâche s'appelle « Sincronizar productos de Shopify » ; en allemand, « Shopify-Produkte synchronisieren » ; en français, « Synchroniser les produits Shopify » ; en italien, « Sincronizza prodotti Shopify » ; en portugais, « Sincronizar produtos Shopify ».
Your Odoo doesn't talk to Amazon, Temu or Shopify?
Vidéo : Your Odoo doesn't talk to Amazon, Temu or Shopify? (vidéo en anglais)

Un cas pour suivre un passage complet

Exemple Cas illustratif : l'entreprise et ses chiffres sont inventés pour expliquer le flux.

Casa Olivar est une entreprise fictive d'articles de maison, avec une boutique Shopify principale et une seconde petite boutique, toutes deux connectées à son Odoo. Marta, l'administratrice, installe le module et active la tâche Synchroniser les produits Shopify. Dans Odoo 20, à chaque passage, la tâche fait ce qui suit lorsque l'heure de la prochaine exécution arrive :

  1. Odoo lance la tâche et vérifie d'abord que la personne qui l'exécute est administratrice. Si ce n'est pas le cas, elle s'arrête avec le message Only an administrator can run this scheduled action. et ne fait rien de plus.
  2. Elle choisit les boutiques avec lesquelles travailler : celles qui sont actives, qui ont la synchronisation des produits activée et qui ont des identifiants enregistrés, que ce soit un jeton d'accès ou le secret de l'API de l'app. La seconde boutique de Casa Olivar n'a encore ni l'un ni l'autre, elle n'entre donc pas dans le passage.
  3. Pour chaque boutique choisie, la tâche demande les produits à Shopify page par page.
  4. Chaque produit est enregistré de façon isolée. Si l'un échoue, la tâche note un avertissement dans le journal technique et passe au suivant : un mauvais produit n'interrompt pas le passage. La tâche compte les produits qui ont bien été enregistrés.
  5. Le passage se termine quand il n'y a plus de pages ou quand la limite de pages de la boutique est atteinte. S'il se termine complètement, la tâche enregistre l'heure actuelle comme dernier moment de synchronisation des produits. S'il a été interrompu par la limite alors qu'il restait des pages, la tâche peut enregistrer à la place la date de mise à jour du dernier produit vu, à condition qu'elle soit postérieure à celle qui existait déjà : jamais en arrière. L'idée est que le passage suivant reprenne à partir de là au lieu de considérer comme vu tout ce qui n'a pas été lu.
  6. Si la synchronisation d'une boutique entière échoue, la tâche note l'échec dans le journal technique et continue avec la boutique suivante.
  7. Il y a une exception : si FlexigoTech Cloud met la synchronisation en pause, le passage de cette boutique s'arrête sans sauter aucun produit et n'est pas enregistré comme échoué.

Dans le cas de Casa Olivar, la boutique principale a plus de pages de produits que la limite. Le premier passage est interrompu et celui de l'heure suivante reprend depuis le dernier produit vu, jusqu'à ce qu'un passage arrive à la fin.

Quoi vérifier si elle ne fait rien

Parcourez ces vérifications dans l'ordre.

  • La tâche est désactivée. Elle l'est à l'installation. Tant qu'elle n'est pas activée, elle ne s'exécute pas.
  • La boutique ne remplit pas les conditions. La tâche ne prend que les boutiques actives, avec la synchronisation des produits activée et avec un jeton d'accès ou le secret de l'API de l'app enregistrés. Une boutique avec des identifiants client peut ne pas avoir de jeton avant son premier appel, c'est pourquoi il suffit d'avoir des identifiants. Ouvrez les boutiques depuis Shopify › Configuration › Boutiques.
  • La personne qui l'exécute n'est pas administratrice. La tâche s'arrête avec Only an administrator can run this scheduled action..
  • FlexigoTech Cloud a mis la synchronisation en pause. Le passage de la boutique concernée est interrompu et n'est pas enregistré comme échoué. Sans abonnement, ou avec le service suspendu, ce que fournit l'abonnement s'arrête ; les données restent dans votre Odoo.
  • Le passage a été interrompu par la limite de pages. S'il restait des pages, le passage suivant reprend depuis le dernier produit vu.
  • Il manque un produit précis. Si ce produit échoue à l'enregistrement, la tâche le saute, laisse un avertissement dans le journal technique et continue avec les autres.

Ce qu'il faut retenir du cas

Un produit qui pose problème est sauté, et une boutique qui échoue n'empêche pas de traiter la suivante. Ce qui arrête vraiment la tâche, c'est qu'elle ne soit pas exécutée par un administrateur ; une pause de FlexigoTech Cloud interrompt le passage de la boutique concernée. C'est pourquoi, quand elle « ne fait rien », il convient de vérifier d'abord que la tâche est activée et que la boutique remplit les conditions.

Comment FlexigoTech vous aide

Le module est en paiement unique par version et nécessite l'abonnement à FlexigoTech Cloud (plan Connecteur : 49 €/mois ou 490 €/an HT). La connexion passe par FlexigoTech Cloud, qui conserve les identifiants chiffrés, surveille la synchronisation et prévient par e-mail en cas d'échec. Il est publié pour Odoo 17, 18, 19 et 20 ; le prix de chaque version figure sur la fiche d'Odoo Apps et sur la page du module. Avec l'abonnement, le module pour les nouvelles versions d'Odoo est inclus si vous l'avez acheté sur flexigotech.com ; sur l'Odoo App Store, chaque version s'achète là-bas.

Si vous êtes en train de mettre en place Odoo et souhaitez vérifier comment se présente la synchronisation de votre catalogue, FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure.

À lire aussi

Ce que fait le bouton « Récupérer le stock » du connecteur Shopify pour OdooCe que fait le bouton Récupérer le stock du connecteur Shopify pour Odoo : quand il apparaît, ce qu'il vérifie.Avertissement « est maintenant l'emplacement principal » du connecteur Shopify pour OdooQue signifie l'avertissement « est maintenant l'emplacement principal pour … » du connecteur Shopify pour Odoo, quand il apparaît et comment changer.Erreur de création du bon de commande : données Shopify manquantesQue signifie l'avis de Shopify Connector for Odoo en cliquant sur « Créer un bon de commande » sans données de commande.
Vérifié dans le code du connecteur (version 17.0 et 20.0) et dans les sources citées

Sources