Skip to main content
Shopify

Picking must be done before updating Shopify tracking

The message Picking must be done before updating Shopify tracking. appears when the picking is not in the Done state and you try to update the tracking in Shopify. Validate the picking and the action stops before it ever talks to Shopify.

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

Key facts

Module
Shopify
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
4 min

This warning appears on the picking of a Shopify sale when you ask to update the tracking and the picking is not finished yet. Going by the published code for Odoo 20, here is exactly what happens and what you can do about it.

What lies behind the message

There is a single condition: the picking is not in Done

The method that updates the tracking looks at the state of the picking. If it is not Done, the action stops and Odoo shows Picking must be done before updating Shopify tracking. Any state other than Done meets the condition, and no other check is mixed into this warning.

It is the first thing the method checks

After making sure it is working on a single picking, the first thing the method does is look at the state. Everything else comes afterwards: checking the Shopify fulfillment ID, finding the Shopify instance of the sales order and asking Shopify to update the tracking. Because the message stops the action, nothing the action was going to change is saved and Shopify is not called.

Code-generated diagram: the Update Shopify Tracking button at the top and, below it, the message Picking must be done before updating Shopify tracking.
Diagram generated from the module's published code (not an Odoo screenshot): the button and the message, with the English labels from the code, in Odoo 17, 18, 19 and 20.

How you get to the message

The message can appear when you click the Update Shopify Tracking button in the picking view. That button calls a method that leads to the internal method described above, and it is the latter that raises the warning if the picking is not in Done.

The button is already hidden outside Done, and the method checks again

In Odoo 17, 18, 19 and 20 the view hides the Update Shopify Tracking button when any of these three things is true:

  • the picking does not belong to a Shopify order (the internal flag Is Shopify Order does not appear in any view);
  • the picking is not in Done;
  • the Shopify Fulfillment field is empty.

In other words, to see the button you need a Shopify picking in Done with Shopify Fulfillment filled in. Even so, the method repeats the state check before doing anything.

Your Odoo doesn't talk to Amazon, Temu or Shopify?
Video: Your Odoo doesn't talk to Amazon, Temu or Shopify?

What to do and what comes next

Validate the picking and run the update again

The message says it plainly: the picking has to be validated. Bring the picking to Done. In that state the Update Shopify Tracking button appears as long as the other two conditions of the view are met: the picking belongs to a Shopify order and it has Shopify Fulfillment. If the button still does not appear after validating, one of those two conditions is missing. Once it appears, you can ask for the tracking update again.

With the picking in Done, the method carries on with other checks

With the picking already in Done, the method confirms that the picking has a Shopify fulfillment ID, finds the Shopify instance through the sales order and asks Shopify to update the tracking. If everything works, it stores the fulfillment status returned by Shopify, the date and time of the last tracking sync, clears the previous error, keeps what was sent and the response received, and posts a message on the picking. If one of those checks fails, you will get a different warning: the message we are looking at here concerns only the state of the picking.

The same message in all four versions

The message is in the published code for Odoo 17, 18, 19 and 20, and the visibility condition of the button is the same in all four. The method code walked through above is the one from Odoo 20. With Odoo in English you see Picking must be done before updating Shopify tracking.; the diagram shows how the same text appears with the module's published translations.

Code-generated diagram showing the same message in Spanish, German, French, Italian and Portuguese.
Diagram generated from the module's published translations (not an Odoo screenshot): the text of the message according to the language of Odoo, in Spanish, German, French, Italian and Portuguese.

Cost and help

Shopify Connector costs €9 per Odoo version, for 17, 18, 19 and 20, one-off payment, excluding VAT, according to its Odoo Apps listing. It also needs a FlexigoTech Cloud subscription, Connector plan: €49 per month or €490 per year, excluding VAT.

If you are implementing Odoo with Shopify and want to review how pickings and shipments fit together, FlexigoTech implements Odoo 17, 18, 19 and 20 and builds custom connectors and integrations.

Keep reading

What the Shopify Connector Pull Stock button does, step by stepWhat the Pull Stock button in Shopify Connector does in Odoo: when it shows, what it checks, what inventory adjustments it makes and which errors it gives.
Checked in the connector's source code (version 20.0) and the linked sources

Sources