Dove si trova il pulsante e quando si vede
Le schede di spedizione si aprono dal menu Temu › Orders & Fulfillment › Fulfillment. In quella schermata c'è il pulsante Execute, che è sempre visibile nella scheda, senza condizioni nella vista, ed è presente in Odoo 17, 18 e 19. Quanto segue sul suo funzionamento corrisponde al codice pubblicato per Odoo 19.
Il pulsante lancia l'operazione che la scheda porta con sé attraverso l'istanza di Temu assegnata. Prima controlla che ci sia l'istanza e che la richiesta si possa costruire; poi scrive gli stati e salva ciò che risponde Temu.


Execute.
Cosa succede senza premere nulla
Una parte del lavoro di questo pulsante avviene anche senza premerlo. Il modulo estende il salvataggio di una scheda di bolla di consegna e il pulsante standard di convalida della bolla, e da lì può riconciliare una spedizione che Temu considerava già inviata. Lo fa solo se si verifica tutto quanto segue:
- Ci sono scheda di spedizione, ordine di Temu e riferimento di tracciabilità.
- L'ultimo errore della scheda di spedizione indica che l'ordine è già stato spedito: riporta il codice
120012004, oppure un testo di Temu che dice che l'ordine è già stato spedito e che la modifica non è efficace per un ordine spedito. - L'ordine ha il numero di ordine padre di Temu (o l'identificativo dell'ordine di Temu) e il numero d'ordine.
Allora interroga Temu sullo stato della spedizione propria. Se la risposta contiene il numero di tracciabilità, la scheda passa a Done, l'ultimo errore viene svuotato, si applica lo stesso riepilogo del risultato che usa il pulsante, la bolla risulta contrassegnata come sincronizzata e vi viene lasciata una nota. Se la consultazione fallisce o la tracciabilità non compare, non cambia nulla.
Per lanciare l'operazione a mano dalla scheda, resta il pulsante Execute.
Il caso: Hogar Norte lancia un'operazione
Esempio Caso illustrativo: l'azienda e i suoi dati sono inventati per spiegare il flusso.
Hogar Norte è un negozio inventato che vende su Temu e gestisce le sue spedizioni da Odoo. Una persona del team apre Temu › Orders & Fulfillment › Fulfillment ed entra in una scheda nuova. Vediamo cosa succede a ogni tentativo.
Primo tentativo: senza istanza
Preme Execute con il campo Instance vuoto (si vede nella scheda e nella lista di Fulfillment). Il metodo lo controlla per prima cosa e si ferma con Temu instance is required.. Non ha scritto alcuno stato né salvato alcuna richiesta: la scheda resta com'era.
Secondo tentativo: manca un dato
La scheda contiene una consultazione di aziende di logistica. Con l'istanza impostata, il modulo prova a costruire la richiesta e si ferma con regionId is required for logistics companies query.. Ancora non è stato scritto nulla. Il messaggio dice quale dato manca: lo completa e preme di nuovo.
Terzo tentativo: va a buon fine
Ora il metodo segue quest'ordine:
- Costruisce la richiesta con i dati della scheda. Se il campo
Request Override Json(schedaPayload Override) è compilato ed è un oggetto, usa quel contenuto così com'è come richiesta. - Scrive lo stato
Running, salva la richiesta costruita e l'ora della richiesta, e svuota l'ultimo errore. - Chiama l'istanza di Temu con l'operazione che corrisponde alla scheda.
- Se Temu risponde bene, prepara un riepilogo del risultato: se la risposta contiene numeri di pacco, li salva ordinati e senza ripetizioni, e se la scheda non aveva un numero di pacco, prende il primo; se contiene avvisi, li salva uno per riga; se contiene una prenotazione di ritiro, salva il suo numero.
- Scrive in un colpo solo
Done, la risposta, il risultato, quel riepilogo e l'ora di completamento, e lascia vuoto l'ultimo errore.
Il riepilogo viene calcolato prima di scrivere Done. Se il riepilogo fallisce, Done non viene scritto: il metodo lo tratta come qualsiasi altro errore.
Quando qualcosa fallisce dopo Running
Se l'operazione o il riepilogo falliscono dopo aver scritto Running, il codice scrive Failed con l'ora di completamento e il testo dell'errore, e rilancia l'errore, che è l'avviso che vede la persona quando preme. Controlla lo stato nella scheda invece di dare per scontato quale sia rimasto.
Messaggi che possono bloccare il pulsante
Quando premi Execute, questi messaggi compaiono mentre il modulo prepara la richiesta, prima di scrivere Running. Sono alcuni di quelli che può dare:
Temu instance is required.: la scheda non ha istanza.Request Override JSON must be an object/dict payload.: il contenuto del campoRequest Override Jsondella scheda non è un oggetto.Provide orderSnList or payload lines for shipping services query.: nella consultazione dei servizi di spedizione non ci sono né elenco di ordini né righe.regionId is required for ship logistics type query.: manca quel dato nella consultazione dei tipi di logistica di spedizione.regionId is required for logistics companies query.: manca quel dato nella consultazione delle aziende di logistica.packageSnList is required for buy shipping result query.: manca l'elenco dei pacchi nella consultazione del risultato della spedizione acquistata.packageSnList is required for shipping document query.: manca l'elenco dei pacchi nella consultazione dei documenti di spedizione.parentOrderSn and orderSn are required for self shipment status query.: mancano questi dati nella consultazione dello stato della spedizione propria.mainPackageSn (package_sn) is required for shipment sub confirm.: manca il pacco principale nella conferma dei sottopacchi.At least one sub package request is required.: manca almeno una richiesta di sottopacco.pickupStartTime and pickupEndTime are required for pickup reservation creation.: mancano gli orari della prenotazione di ritiro.packageSnList is required for pickup reservation creation.: manca l'elenco dei pacchi nella creazione della prenotazione di ritiro.packageSnList is required for pickup reservation result query.: manca l'elenco dei pacchi nella consultazione del risultato della prenotazione.reservationSn is required for pickup reservation cancellation.: manca il numero di prenotazione nell'annullamento.packageSn is required for tracking info query.: manca il pacco nella consultazione della tracciabilità.Set Request Override JSON for cooperative warehouse operation '…'.: nelle operazioni di magazzino cooperativo, il messaggio chiede di compilare il campoRequest Override Json.
Cosa imparare dal caso
- L'ordine è fisso: prima l'istanza, poi la richiesta, poi gli stati.
- I messaggi qui sopra bloccano l'azione prima di scrivere qualsiasi cosa: si risolvono completando ciò che chiedono.
Donesi scrive in un'unica volta insieme alla risposta, al risultato e al riepilogo; se il riepilogo fallisce, la scheda passa aFailed.- Il riepilogo del risultato è lo stesso che usa la riconciliazione automatica della bolla di consegna.
- Un errore successivo a
Runningviene rilanciato e lascia la scheda inFailed; dopo aver premuto, controlla lo stato.
Come ti aiuta FlexigoTech
Temu Connector for Odoo si paga una volta sola per versione e richiede l'abbonamento a FlexigoTech Cloud (piano Connettore: 49 €/mese o 490 €/anno, IVA esclusa). È pubblicato per Odoo 17, 18, 19 e 20. La connessione passa per FlexigoTech Cloud, che conserva cifrate le credenziali e avvisa via e-mail se la sincronizzazione fallisce. Puoi vedere il modulo nella sua pagina o nella scheda di Odoo Apps.
Se stai implementando Odoo e devi impostare la logistica con Temu o un'integrazione su misura, FlexigoTech implementa Odoo 17, 18, 19 e 20 e sviluppa connettori e integrazioni.
Continua a leggere
Verificato nel codice del connettore (versione 19.0) e nelle fonti collegate
Fonti
- Codice del modulo: flexigobe_temu_connector 19.0 (455b3f0f): views/temu_fulfillment_views.xml
- Codice del modulo: flexigobe_temu_connector 19.0 (455b3f0f): models/temu_fulfillment.py
- Codice del modulo: flexigobe_temu_connector 19.0 (455b3f0f): models/stock_picking.py
- apps.odoo.com/apps/modules/19.0/flexigobe_temu_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
