Esempio Caso illustrativo: l'azienda e i suoi dati sono inventati per spiegare il flusso.
Taller Aralar è un'azienda inventata che vende su un marketplace Mirakl e ha appena installato Mirakl Connector nel suo Odoo. I giorni passano e in Odoo non compare nessuna fattura del marketplace. Prima di toccare qualsiasi cosa, la persona che gestisce Odoo ripassa cosa fa l'attività Mirakl - Sincronizza fatture e in quali punti può restare senza fare nulla. Quel ripasso è ciò che segue.
Cosa fa l'attività a ogni passata
L'attività non guarda un marketplace in particolare: li scorre uno dopo l'altro tutti quelli che soddisfano la condizione. In Odoo 20, quando gira, fa quanto segue e in quest'ordine:
- Verifica che chi la esegue sia amministratore. Se non lo è, si ferma con
Solo un amministratore può eseguire questa azione pianificata.(Only an administrator can run this scheduled action.) e non fa altro. - Cerca i marketplace che siano attivi e abbiano abilitata la sincronizzazione delle fatture.
- Tra questi, esclude quelli che non può chiamare: quelli che passano da FlexigoTech Cloud senza chiave salvata e, se il permesso che il modulo ha salvato non include il servizio del modulo, tutti quelli di quel percorso (questo controllo non esce in rete). I marketplace che si collegano in modo diretto vanno per primi.
- Per ogni marketplace rimasto, richiede le sue fatture. Se qualcosa fallisce in uno, il modulo cerca di annotare l'errore e prosegue con il successivo. L'eccezione è una pausa di FlexigoTech Cloud, che interrompe il giro.

Mirakl › Configurazione › Marketplace.
Cosa fa con le fatture di ogni marketplace
Quando tocca a un marketplace, l'attività fa questo:
- Usa l'endpoint delle fatture che ha il marketplace o, se è vuoto,
/invoices. - Richiede le fatture per pagine, con una dimensione di pagina e un massimo di pagine (almeno una). Si ferma quando una pagina arriva vuota, quando contiene meno fatture della dimensione di pagina, quando ha già raggiunto il totale indicato da Mirakl o quando arriva al massimo di pagine.
- Elabora ogni fattura ricevuta. Se una fallisce, annota l'errore con quella fattura e continua con le altre.
Se l'operatore non espone /invoices, il modulo annota l'avviso Endpoint fatture non disponibile (HTTP 404). Questo operatore non espone /invoices. (Invoices endpoint not available (HTTP 404). This operator does not expose /invoices.), registra il momento attuale come data dell'ultima sincronizzazione delle fatture e termina con quel marketplace. Con qualsiasi altro errore nella richiesta annota l'errore e smette di leggere pagine di quel marketplace.
Se FlexigoTech Cloud non lascia passare la chiamata (senza abbonamento o con una pausa del relay), la passata si interrompe: non si segna né si cancella nulla e la passata successiva prosegue. Il modulo conta la pausa, con il suo codice, solo nel report di salute di FlexigoTech Cloud. Poiché i marketplace diretti vanno per primi, nessuno di loro resta senza chiamata a causa di quella pausa.
Ogni quanto gira e da quando
L'attività gira una volta al giorno e viene disattivata all'installazione: finché qualcuno non la attiva, non fa nulla. In Odoo 17 l'attività si ripete senza fine. È presente nei rami pubblicati 17, 18, 19 e 20.
Le schede dei marketplace si aprono dal menu Mirakl › Configurazione › Marketplace (Mirakl › Configuration › Marketplaces).

Mirakl - Sincronizar facturas; in tedesco, Mirakl - Rechnungen synchronisieren; in francese, Mirakl - Synchroniser les factures; in italiano, Mirakl - Sincronizza fatture; in portoghese, Mirakl - Sincronizar Faturas.Il ripasso di Taller Aralar, passo dopo passo
- Conferma che l'attività sia attivata, perché all'installazione è disattivata.
- Tiene conto che l'attività gira una volta al giorno, quindi non si aspetta di vedere le fatture subito.
- Si assicura che l'attività sia eseguita da un amministratore. Altrimenti si ferma con
Solo un amministratore può eseguire questa azione pianificata.. - Tiene presente che l'attività prende solo marketplace attivi e con la sincronizzazione delle fatture abilitata: se il suo non soddisfa entrambe le cose, non entra nella passata. Le sue schede si aprono da
Mirakl › Configurazione › Marketplace. - Se il marketplace passa da FlexigoTech Cloud, tiene presente che senza chiave salvata non viene chiamato, e che non viene chiamato nessuno di quel percorso se il permesso salvato non include il servizio del modulo.
- Se l'operatore non espone
/invoices, il modulo annota l'avvisoEndpoint fatture non disponibile (HTTP 404). Questo operatore non espone /invoices., registra il momento attuale come data dell'ultima sincronizzazione delle fatture e termina con quel marketplace. - Se ci sono altri errori, ricorda che il modulo cerca di salvare una riga di registro associata al marketplace e che scrive l'errore anche nel log del server.
Cosa insegna il caso
Se l'attività non porta nulla, conviene controllare, in quest'ordine: prima che sia attivata, perché all'installazione è disattivata e, finché lo è, non gira. Poi, nell'ordine in cui il codice le applica: amministratore, marketplace che soddisfi le condizioni, percorso di FlexigoTech Cloud e, infine, gli errori annotati.
Sugli errori, il modulo cerca di scrivere una riga di registro con il livello, l'operazione, il metodo, l'indirizzo chiamato, lo stato della risposta e il messaggio di errore. Se alla creazione della riga si verifica un errore, lascia un avviso nel log del server.
Come ti aiuta FlexigoTech
FlexigoTech implementa Odoo 17, 18, 19 e 20 e sviluppa connettori e integrazioni su misura. Mirakl Connector è pubblicato su Odoo Apps per 17, 18, 19 e 20: puoi vedere la scheda di Odoo Apps o la pagina del modulo.
Continua a leggere
Verificato nel codice del connettore (versione 17.0 e 20.0) e nelle fonti collegate
Fonti
- Codice del modulo: flexigobe_mirakl_connector 20.0 (aa05e537): data/ir_cron_data.xml
- Codice del modulo: flexigobe_mirakl_connector 17.0 (e430de3e): data/ir_cron_data.xml
- Codice del modulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- Codice del modulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_ai.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
