La Web agency a Torino e Milano specializzata in e-commerce, siti web e consulenza SEO

Integrazione Magento 2 e AS400. Problematiche e Soluzioni

Sono innumerevoli le potenzialità di Magento 2 che abbiamo descritto nei nostri approfondimenti e che fanno di questa piattaforma e-commerce una tra le migliori sul mercato. Il suo essere aperto ad integrazioni di qualsiasi tipo richiede però cospicue attività di integrazione con applicativi di terze parti.

magento 2 e erp as400

Oggi, tramite un caso di studio recente, vogliamo evidenziare le problematiche e le soluzioni procedurali dell’integrazione con i software aziendali che presidiano le aree amministrative e logistiche.

Stiamo parlando dei gestionali (o ERP, Enterprise Resource Planning), adottati da aziende di tutte le dimensioni per ottimizzare i processi aziendali in ogni loro fase.

Quando una di esse decide di aprirsi all’e-commerce deve risolvere i problemi legati all’integrazione della gestione della contabilità, della logistica e del magazzino con la vetrina on-line, in questo caso presidiata da Magento 2.

In uno dei nostri ultimi rilasci, sono state affrontate e risolte importanti criticità legate all’integrazione tra sistema gestionale aziendale (in questo caso il celebre  AS400) ed i flussi di dati generati dallo store e-commerce.

Le criticità dell’integrazione tra l’e-commerce Magento 2 e il software gestionale AS400

Quali flussi di dati Magento 2 deve comunicare ad AS400?

Nel caso in oggetto, l’e-commerce basato su Magento 2 doveva scambiare (in ingresso e in uscita) tutti i dati essenziali dell’attività di vendita del cliente, e cioè:

  • Dettagli prodotto (organizzati sia in prodotti semplici, sia in pordotti configurabili)
  • Variazioni dell’inventario a seguito di ordini on-line (decrementi), nuovi arrivi in magazzino (incrementi e decrementi) e reintegro magazzino a seguit resi (incrementi)
  • Variazione del listino prezzi
  • Anagrafiche clienti (in esportazione ad AS400)
  • Ordini (in esportazione ad AS400)
  • Fatture (in esportazione ad AS400)
  • Scontrini fiscali (in esportazione ad AS400)
  • Tracciati relativi alle spedizioni (in ingresso i dati relativi ai prodotti da fare ritirare al corriere, in uscita gli avvisi di preparazione pacchi e di ritiro pacchi per il corriere)
  • Note di credito (in esportazione ad AS400)
  • Resi (in esportazione al magazzino e al corriere per la presa, in importazione per comunicare al cliente l’esito del suo reso)
Enterprise resource planning

Ricezione dei flussi di dati

Il problema tutto sommato più semplice consisteva nella definizione delle procedure di importazione flussi dati da AS400.
È stato realizzzato un componente ad hoc per prelevare i flussi depositati su cartella FTP condivisa, estrarre i dati disaggregati e, mediante le librerie di Magento 2, inserirli nel database del sito.

Apposite oprazioni pianificate si occupano di eseguire tutte queste operazioni più volte nel corso della giornata.
Il risultato è un sito di vendita costantemente aggiornato sia nei prezzi sia nelle disponibilità dei prodotti in vendita.

esempio tracciato fisso erp magento 2

Invio del flusso dei dati

La problematica più complessa sui cui ci siamo concentrati ha riguardato l’implementazione delle procedure di integrazione delle vendite con il magazzino ed il corriere. Ciascuno di essi presentava requisiti di strutturazione del dato e tempistiche di comunicazione differenti.

Ogni operazione di vendita doveva determinare la generazione di un set di flussi dati che da Magento 2 dovevano essere esportati sia verso la contabilità (AS400), sia verso alla struttura logistica (sempre su AS400 ma presso una società esterna) per la predisposizione delle spedizioni.

Al termine della giornata lavorativa invece dovevano essere prima importati dal magazzino gli identificativi dei colli pronti per la consegna al corriere e successivamente dovevano essere avvisati sia il corriere (per recarsi presso il magazzino a ritirare le prese) sia il cliente (track code).

Corretta codifica dei dati ricevuti

Superato il primo scoglio della definizione delle procedure, è stato necessario occuparsi della corretta codifica dei dati a seconda della tipologia richiamata per la funzione interessata.

Uno stesso dato può infatti essere utilizzato più volte. Pensiamo all’anagrafica di un cliente e ad alcuni dati che vengono richiamati in più processi. Il nome e il cognome del cliente, ad esempio, sono utilizzati nell’elaborazione di un ordine, nell’emissione di scontrino/fattura e nel corso della preparazione della spedizione. Un campo quindi, una volta codificato, potrà essere utilizzato in processi differenti che si sviluppano parallelamente.

Tempistica corretta

Quando vengono processati molti dati è necessario che non vi sia eccessiva lentezza nell’elaborazione e che la coda con l’ordine dei dati venga rispettata.

Uno dei processi più comuni in una piattaforma e-commerce è il passaggio di stato dell’ordine da ‘Processato‘ a ‘Completato‘. Questo dato viene aggiornato solo se nel flusso dei dati trasmesso a Magento dal corriere viene comunicato che l’ordine è stato consegnato al cliente.

Un flusso di dati non ordinato può creare problemi. Un esempio scolastico è l’eventualità che il magazzino si trovi a predisporre ordini di cui non è ancora stato confermato il pagamento. Un esempio più degno di nota é il rischio di non avvisare il magazzino dell’arrivo di un reso per il quale il corriere è già stato notificato.

Le soluzioni per una perfetta integrazione tra ERP e Magento 2

La sua natura open source rende la piattaforma Magento 2 una scelta estremamente efficace, soprattutto i requisiti di integrazione con i sistemy legacy sono elevati. Come risolvere quindi le criticità di integrazione tra l’erp AS400 e il nostro e-commerce?

ERP integrazione con Magento2

Sicuramente la realizzazione di script efficaci di sincronizzazione tra i due strumenti non può essere garantita SE il cliente che necessita dell’integrazione non fornisce l’adeguata documentazione sui tracciati a struttura fissa e sulle tempistiche di esecuzione.

Riuscire ad elaborare un dialogo tra Magento e un sistema gestionale senza conoscere il sistema in cui è organizzato il flusso dei dati è pressoché impossibile.

È un po’ come voler tradurre dal russo all’italiano ma senza conoscere l’alfabeto cirillico.

Le uniche due cose che non possono mai mancare, quando si parla di import e export di dati, sono il TEMPO e i TEST.
Rilasciare questa tipologia di integrazioni senza le dovute verifiche e i necessari controlli significa sottovalutare il processo di elaborazione dei dati e la complessità della gestione dell’attività di vendita (e post vendita).

Difficilmente i dati elaborati e codificati infatti saranno interpretati un’unica volta e per soddisfare un’unica richiesta. Maggiori funzionalità, e quindi maggiori richieste, aumentano il margine d’errore che solo delle verifiche e dei test possono evidenziare e risolvere.

La maggior parte dei software gestionali può essere collegata a Magento Commerce.

Aumentare la competitività accorciando i tempi di elaborazione, processando gli ordini con strumenti diversi che diloghino tra loro ed evitando potenziali errori da inserimento manuale dei dati permetterà al vostro business di svilupparsi in un contesto globalizzato e digitale.