Ce qui change dans la facture après l'installation du module
Mirakl Connector étend la facture de l'application standard « Facturation » d'Odoo avec un bouton et plusieurs champs : le bouton Envoyer à Mirakl, et les champs en lecture seule Envoyé à Mirakl le (Sent to Mirakl on) et Commande Mirakl (Mirakl order). Le module est publié sur Odoo Apps pour Odoo 17, 18, 19 et 20, et la condition qui décide quand le bouton s'affiche est la même dans les quatre versions.

Tout repose sur une idée : la facture client dont les lignes proviennent d'une commande de vente liée à une commande Mirakl. Le module cherche, parmi les commandes de vente des lignes de la facture, la première qui est liée à Mirakl, et il ne le fait qu'avec les factures de type Facture client. De cette commande, il tire l'instance Mirakl avec laquelle il communique et l'identifiant de la commande dans Mirakl.

Comparatif : envoi automatique ou bouton
La facture peut arriver chez Mirakl de façon automatique, à la validation du transfert, si l'instance est configurée pour cela, ou manuellement avec le bouton. Les deux voies passent par la même routine de téléversement.
| Envoi automatique | Bouton Envoyer à Mirakl | |
|---|---|---|
| Qui le déclenche | Odoo, à la validation d'un transfert | Vous, depuis la facture |
| Quand il agit | Quand l'instance a l'envoi de facture en automatique, que le transfert n'a pas encore de date d'envoi de facture et que l'instance n'est pas en pause | Quand le bouton est visible : facture de type Facture client, à l'état Comptabilisé et marquée comme facture Mirakl |
| Si déjà envoyée | N'agit que si le transfert n'a pas encore cette date | Ne le vérifie pas : il téléverse la facture et remplace le document précédent de la commande |
| Ce qu'il laisse dans la facture | La routine de téléversement renseigne Envoyé à Mirakl le | Idem, et en plus une note dans la facture avec le résultat |
Comment lire le tableau
Le chemin automatique dépend du bouton standard de validation du transfert, que le module étend.
Le bouton téléverse la facture manuellement. Il ne regarde pas si le transfert a déjà une date d'envoi : il lance le téléversement et remplace le document précédent de la commande, y compris si la facture avait déjà été envoyée. Ce remplacement est une tentative au mieux : on demande d'abord à Mirakl les documents de la commande du même type et on les supprime, et si l'opérateur Mirakl ne permet pas de lister ou de supprimer des documents, le précédent reste en place.
Les champs, un par un
| Champ | Où il se trouve | Quand il est masqué |
|---|---|---|
Envoyé à Mirakl le | Fiche de la facture, lecture seule | Quand la facture n'est pas une facture Mirakl |
Commande Mirakl | Fiche de la facture, lecture seule | Quand la facture n'est pas une facture Mirakl |
Facture Mirakl (Mirakl invoice) | N'apparaît dans aucune vue | Sans objet : c'est la condition dont dépendent les autres champs et le bouton |
L'aide de Envoyé à Mirakl le dit : «Date/heure du dernier téléversement de ce PDF de facture vers la place de marché Mirakl.». Par conséquent, si la facture est renvoyée, la date reflète le dernier envoi. Le module la renseigne après avoir téléversé le PDF.
Le bouton pas à pas
Le bouton Envoyer à Mirakl n'apparaît que lorsque ces conditions sont réunies simultanément : la facture est de type Facture client, elle est marquée comme facture Mirakl (le champ Facture Mirakl, qui n'est pas visible) et son état est Comptabilisé. Dans Odoo 20.0, en cliquant dessus, il fait ceci, dans l'ordre :
- Il cherche la commande de vente Mirakl derrière les lignes de la facture et en prend l'instance. S'il n'y a pas d'instance, il s'arrête.
- Il génère le PDF avec le rapport de facture indiqué dans l'instance ou, à défaut, avec le rapport de factures standard d'Odoo.
- Il demande à Mirakl les documents de la commande du même type et supprime ceux qui existent, pour remplacer le précédent au lieu de le dupliquer.
- Il téléverse le PDF vers la commande Mirakl, avec un nom de fichier tiré du numéro de la facture (caractères ASCII uniquement, se terminant par
.pdf) et avec le type de document indiqué par l'instance ; si elle n'en indique aucun, celui de facture client. - Il renseigne
Envoyé à Mirakl leet laisse une note dans la facture :Facture envoyée à Mirakl (…).(Invoice sent to Mirakl (…).), avec l'identifiant de la commande Mirakl à la place des points de suspension.
Avec Odoo en espagnol le bouton s'appelle Enviar a Mirakl ; en allemand, An Mirakl senden ; en français, Envoyer à Mirakl ; en italien, Invia a Mirakl ; en portugais, Enviar para o Mirakl.

Que se passe-t-il en cas d'échec
Si le module ne trouve aucune instance Mirakl derrière la facture, en cliquant sur Envoyer à Mirakl le processus s'arrête avec Cette facture n'est pas liée à une commande Mirakl. (This invoice is not linked to a Mirakl order.). Vérifiez que les lignes de la facture proviennent d'une commande de vente liée à une commande Mirakl.
Si le téléversement échoue pour une autre raison, le module laisse dans la facture une note Échec de l'envoi de la facture Mirakl : … (Mirakl invoice send failed: …), avec le motif à la place des points de suspension, et affiche de nouveau l'erreur. Si FlexigoTech Cloud ne laisse pas passer l'appel (parce qu'il n'y a pas d'abonnement ou que le service est en pause), l'erreur est aussi affichée de nouveau, mais dans ce cas rien n'est marqué.
Coût et aide
Le module est en paiement unique par version d'Odoo et nécessite l'abonnement à FlexigoTech Cloud, plan Connecteur : 49 €/mois ou 490 €/an HT. Sans abonnement, ou avec le service suspendu, ce que fournit l'abonnement s'arrête et les données restent dans votre Odoo. Vous pouvez voir le module sur sa page ou sur la fiche Odoo Apps.
Si vous mettez en place Odoo et souhaitez que les factures de vos commandes Mirakl sortent avec le rapport et le flux que vous utilisez, FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure.
À lire aussi
Vérifié dans le code du connecteur (version 20.0) et dans les sources citées
Sources
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): models/account_move.py
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): views/account_move_views.xml
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
