Ce que fait la tâche et sa fréquence
La tâche travaille sur les commandes Amazon enregistrées par le module et prend au maximum 100 commandes par passage. Elle s'exécute toutes les 30 minutes et est active à l'installation. Elle est présente dans les branches 17.0, 18.0, 19.0 et 20.0 ; dans Odoo 17.0, elle est configurée pour se répéter sans fin. Ce qui suit décrit le comportement du code d'Odoo 20.0.


Détail de chaque passage
Ne regarde que les comptes qui ont activé l'envoi
La première chose que fait le passage est de chercher les comptes Amazon où l'envoi des factures est activé. S'il n'y en a aucun, il s'arrête sans examiner une seule commande. L'envoi est facultatif : il est désactivé par défaut et s'active dans la configuration du compte Amazon. Vous trouverez les champs du compte expliqués dans cet article sur le compte SP-API.
Ne retient que les factures publiées et pas encore envoyées
Parmi ces comptes, le passage choisit les commandes dont la facture client est publiée et qui n'ont pas encore de date d'envoi. Si le compte limite l'envoi aux commandes professionnelles, les commandes de consommateurs restent de côté. Le code applique ces filtres d'entrée à dessein : une facture en brouillon, ou une commande de consommateur sur un compte uniquement professionnel, occuperaient le lot devant le reste des commandes de tous les comptes. Et une commande déjà envoyée n'est pas renvoyée : la tâche ne signale pas deux fois à Amazon la même facture.
Chaque passage a un plafond, et les échecs passent après
Le plafond est de 100 commandes. Entrent d'abord celles qui n'ont aucune erreur enregistrée, par ordre de création. Ce n'est que si le plafond n'est pas atteint qu'on ajoute celles qui ont déjà échoué lors d'un passage précédent, en commençant par celle qui attend depuis le plus longtemps. Chaque échec réécrit la commande, donc les échecs se relaient au lieu de toujours revenir les mêmes.
Un échec n'arrête pas le passage
Si l'envoi d'une commande génère une erreur, le module enregistre le texte de l'erreur sur cette commande, laisse un avertissement dans le journal du serveur et passe à la suivante. La commande n'est pas marquée comme envoyée : elle revient dans la file des échecs pour un passage ultérieur.
Enregistre le travail après chaque commande
Après chaque commande, la tâche enregistre en base de données les marques de ce qui a été fait. La raison donnée dans le code : Odoo interrompt une tâche qui dépasse sa limite de temps (120 s par défaut) et annule sa transaction ; sans cet enregistrement, le passage suivant renverrait à Amazon les mêmes factures. Dans les tests automatiques, cet enregistrement n'est pas effectué, car Odoo l'interdit à cet endroit.
Ce qui est envoyé à Amazon et ce qui est noté
Pour chaque commande, le module génère le PDF de la facture publiée, le transmet à Amazon et crée un flux de factures TVA avec ces données : le numéro de commande Amazon, le numéro de facture, le type de document (facture), le montant total et le montant de TVA. Il utilise la place de marché de la commande ou, si elle n'en a pas, celle du compte. Uniquement lorsque tout l'envoi se termine sans erreur, il inscrit la date d'envoi sur la commande, efface l'erreur précédente et, si la commande Amazon est liée à une commande de vente, laisse une note dans son chatter : Factura … subida a Amazon (feed de facturas de IVA) para el pedido … (Invoice … uploaded to Amazon (VAT invoice feed) for order …).
Trouver la tâche selon votre langue
Le nom de la tâche dépend de la langue de votre Odoo : avec Odoo en français, c'est Amazon SP-API - Envoyer les factures TVA à Amazon. Le module fournit aussi des traductions en allemand, espagnol, italien et portugais.

Si rien ne part : que vérifier
Vérifiez ce que le code exige de chaque commande :
- Que l'envoi des factures soit activé sur le compte de la commande. Pour le savoir, ouvrez la commande depuis le menu
Amazon › Commandes(Amazon › Orders) et regardez les champsCompte(Account) etCommande Amazon(Amazon Order) de la ficheCommandes Amazon(Amazon Orders). Le champCommande Amazonest en lecture seule. - Que la commande ait une facture client et qu'elle soit publiée : si la facture est en brouillon, la tâche ne l'envoie pas.
- Que le compte ne limite pas l'envoi aux commandes professionnelles si la commande est celle d'un consommateur.
- Que la commande n'ait pas déjà été envoyée : avec une date d'envoi, elle n'est pas renvoyée.
- Qu'il n'y ait pas plus de commandes en attente que le plafond de 100 : les passages suivants, toutes les 30 minutes, traitent le reste.
- Que la tâche soit toujours active : elle l'est dès l'installation.
Pour voir le menu Amazon › Commandes, il faut des droits : le niveau Amazon demande Lecteur (Viewer) et le niveau Commandes (Orders) aussi.
Coût et accompagnement
Le module est en paiement unique par version (publié sur Odoo Apps pour 17.0, 18.0, 19.0 et 20.0) et nécessite l'abonnement à FlexigoTech Cloud, formule Connecteur : 49 € par mois ou 490 € par 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. Plus de détails sur la page du module et sur la fiche Odoo Apps.
FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et intégrations sur mesure, au cas où votre circuit de factures avec Amazon demanderait davantage.
À lire aussi
Vérifié dans le code du connecteur (version 17.0 et 20.0) et dans les sources citées
Sources
- Code du module : flexigobe_amazon_seller_connector 20.0 (8c5900d9): data/ir_cron_data.xml
- Code du module : flexigobe_amazon_seller_connector 17.0 (51d6a72c): data/ir_cron_data.xml
- Code du module : flexigobe_amazon_seller_connector 20.0 (8c5900d9): models/amazon_order.py
- apps.odoo.com/apps/modules/20.0/flexigobe_amazon_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
