Skip to main content
Temu

Temu Connector for Odoo's mainPackageSn error: what you are not told

The message mainPackageSn (package_sn) is required for shipment sub confirm. appears when you click Execute on a Fulfillment record whose operation is the sub-package confirmation and the Package Sn field on the record is empty; fill in that field and click the button again.

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

Key facts

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

Where it appears and what triggers it

You see the message when you click the Execute button on a record opened from the menu Temu › Orders & Fulfillment › Fulfillment. In Odoo 17, 18 and 19 that button is always visible, with no view condition. When you click it, the module reaches the point where it builds the request and, if the condition below is met, stops it with this text: mainPackageSn (package_sn) is required for shipment sub confirm. It is an error: the action is halted.

Put in words, the condition has two parts at once: the operation on the record is the sub-package shipment confirmation (shipment sub confirm), and the Package Sn field on the record is empty. If either one is missing, this message does not appear.

Code-generated diagram, not an Odoo screen: from top to bottom, the Fulfillment menu, the execute button next to the Package Sn field, and the error message
Diagram generated from the module's published code (not an Odoo screenshot): the menu, button and field involved, and the message you get when the field is empty. Labels are in English, as in the code.
Temu orders in Odoo every 15 minutes. Stock out every 5
Video: Temu orders in Odoo every 15 minutes. Stock out every 5

What nobody tells you about this message

Only one specific operation raises it

The module's code goes through the operations one by one, and this check lives inside the sub-package confirmation branch. An empty Package Sn is not enough to see the message: if the record is for another operation, it never goes through that branch. Other operations have their own checks and their own messages, so do not mix them up with this one.

It is the first thing looked at in that operation

Inside the branch, the main package check comes before the lines on the record are read. So with the field empty, the error appears even if the lines are perfectly filled in: the code never gets as far as reading them. And since the action is halted, the request is not built.

The check looks at the field on the record

Package Sn appears on the Fulfillment record and also on the Fulfillment tab, inside the Fulfillment Operations table. The check behind this message is made on the value of the field on the record itself. Once it passes, that value travels as the main package (mainPackageSn) of the request, which is exactly what the error text names.

Once past the check, the lines supply the sub-packages

With the main package present, the code carries on with the lines on the record and assembles the list of sub-package requests. If a line already carries its own written sub-package request, the code uses it as it is. If not, it builds that line's request from the carrier, the self-shipping warehouse and the tracking number, taking from the record whatever the line lacks. This matters because fixing this error only takes you to the next check: if a different message appears afterwards, it is a different condition. What the Execute button does, step by step walks through the button.

A hand-written request skips this check

If the record carries a complete hand-written request that replaces the one the module builds, the code returns it as it is, provided it is an object, before looking at which operation it is. In that case this message cannot appear. If you see the error, the record is using the request the module builds.

Which versions carry it

The message is in the published code of branches 17.0, 18.0 and 19.0. The module is published on Odoo Apps for versions 17.0, 18.0, 19.0 and 20.0.

How to fix it

  1. Open Temu › Orders & Fulfillment › Fulfillment and go into the record that gives the error.
  2. Fill in the Package Sn field on the record with the identifier of the main package, which the message calls mainPackageSn.
  3. Click Execute again. If the message no longer appears, the check has been passed.
Code-generated diagram, not an Odoo screen: the text of the button as the user sees it with Odoo in English, Execute
Diagram generated from the module's published translations (not an Odoo screenshot): with Odoo in English, the button is called Execute.

If you need help with the operation

If you are implementing Odoo and want the Temu shipping flow to fit the way you work, FlexigoTech implements Odoo 17, 18, 19 and 20 and builds custom connectors and integrations. You can see the module on its Odoo Apps page or on the Temu Connector for Odoo page. It is a one-off payment per Odoo version and needs a FlexigoTech Cloud subscription on the Connector plan: €49 a month or €490 a year, excluding VAT.

Keep reading

What the Execute button in Temu Connector for Odoo does, step by stepWhat the Execute button on the Fulfillment form of Temu Connector for Odoo checks, which states it writes and which messages can stop it.
Checked in the connector's source code (version 19.0) and the linked sources

Sources