Skip to main content
Mirakl

The Mirakl Connector error «Post the invoice before sending it to Mirakl.»

The message is raised by the Send to Mirakl button when, at the moment you press it, the invoice is not in the Posted state. Because the button is only shown on posted invoices, you fix it by posting the invoice; until then nothing is sent to Mirakl.

FlexigoTech · Editor in charge: Víctor Gómez · Updated 5 November 2026

Key facts

Module
Mirakl
Versions
Odoo 17, 18, 19 and 20
Checked
in the connector's source code, version 20.0 · against the sources linked at the end
Reading time
5 min

What the message means and when it appears

What exactly does the message say, and what does it mean?

You see Post the invoice before sending it to Mirakl. It is an error: the action stops and nothing that action was going to change is saved. It means the invoice you asked to send is not in the Posted state, and the send to Mirakl only goes ahead with invoices in that state.

Code-built diagram of the error text in other Odoo languages
Code-built diagram based on the module's published translations, not a screenshot of Odoo. The same text depending on the language: in German, «Buchen Sie die Rechnung, bevor Sie sie an Mirakl senden.»; in French, «Comptabilisez la facture avant de l'envoyer à Mirakl.»; in Italian, «Conferma la fattura prima di inviarla a Mirakl.»; in Portuguese, «Lance a fatura antes de a enviar para o Mirakl.».

When exactly does it appear?

It appears when you press the Send to Mirakl button. The method behind that button goes through the invoices it receives, one by one, and looks at the state of each: if it is anything other than Posted, it raises the message Post the invoice before sending it to Mirakl. and the action stops. The state is checked at the moment you press the button, not before.

Code-built diagram: the «Send to Mirakl» button with the error message «Post the invoice before sending it to Mirakl.» below it
Code-built diagram based on the module's published code, not a screenshot of Odoo. Top to bottom: the button and the message, with the labels in English as in the original text, for Odoo 17, 18, 19 and 20.

Why can't I see the button on an invoice that isn't posted?

Because the view hides it when any of these is true: the invoice is not of type Customer Invoice, it is not a Mirakl invoice, or its state is not Posted. The Mirakl invoice indicator is the Mirakl invoice field, which does not appear in any view. Put the other way round, the button only shows on a customer invoice that is a Mirakl invoice and is posted. This view condition is the same in Odoo 17, 18, 19 and 20. Even so, the button's method checks the state on its own, and that check is where the message comes from.

Same stock on every Mirakl marketplace, sent from Odoo
Video: Same stock on every Mirakl marketplace, sent from Odoo

How to fix it

What do I do to make the error go away?

Post the invoice, which is exactly what the message asks for. Once the invoice is Posted and meets the other two conditions of the view, the Send to Mirakl button appears on it and you can press it.

What if the invoice is already posted and I still don't see the button?

Then the cause is one of the other conditions of the view, which hides the button when the invoice is not of type Customer Invoice or when it is not a Mirakl invoice, even though it is posted. The first thing you can look at on the form is the invoice type, because its value shows as Customer Invoice. Since the Mirakl invoice field does not appear in any view, there is no tick box to check: if the invoice is a customer invoice, it is posted and the button does not show, the view is treating it as an invoice that is not a Mirakl one.

Has anything been sent to Mirakl when the error appears?

No. The state check comes before the invoice PDF is generated and before anything is sent to Mirakl. If the state is not Posted, the method stops there and that action uploads nothing to the order.

What happens with a posted invoice, and what the connector needs

What does the send do with a posted invoice, and what other failures can there be?

It generates the invoice PDF and uploads it to the Mirakl order the invoice belongs to, replacing the invoice previously sent to that order. If FlexigoTech Cloud does not let the request through (because there is no subscription or because of a relay pause), the error is raised again and nothing is marked. Any other failure during the send is also raised again so that you see it, and those will be different errors from this one. For other actions and messages in the module, there is the step-by-step guide to the cancel button and the marketplace discount message.

Does it behave the same in every Odoo version?

The message is in the published code of branches 17, 18, 19 and 20, and the condition that hides the button is the same in all four. The module is published on Odoo Apps for those versions.

What do I need for the button to send the invoice to Mirakl?

The connection goes through FlexigoTech Cloud, which stores the credentials encrypted, watches the synchronisation and emails you if it fails. The Connector plan costs €49 a month or €490 a year, excluding VAT, for up to 3 platform accounts (the Pro plan, €98 a month or €980 a year, excluding VAT, for up to 10). Without a subscription, or with the service suspended, what the subscription provides stops; your data stays in your Odoo. With the subscription, the module for newer Odoo versions is included if you bought it on flexigotech.com; on the Odoo App Store, each Odoo version is bought there.

FlexigoTech implements Odoo 17, 18, 19 and 20 and builds custom connectors and integrations. If you are setting up invoicing for your Mirakl orders, see the module page or its listing on Odoo Apps.

Keep reading

The Mirakl - Accept Orders scheduled action, pass by passWhat the Mirakl - Accept Orders scheduled action in Mirakl Connector does on each pass in Odoo, how often it runs and what to check when it accepts nothing.What the Cancel in Mirakl button of Mirakl Connector does, step by stepWhat the Cancel in Mirakl button of Mirakl Connector for Odoo does: when it shows, what it checks, what changes on the order and which errors it can raise.The out-of-range marketplace discount error in Mirakl ConnectorWhat the out-of-range marketplace discount error in Mirakl Connector means, when it appears on saving the record and how to fix it step by step.
Checked in the connector's source code (version 20.0) and the linked sources

Sources