Integrazione Magento con i sistemi gestionali esterni – [Guest Post]

Uno dei temi più scottanti quando si parla di Magento e che i nostri clienti ci chiedono spesso, è l’integrazione di Magento con Gestionali Esterni. Le esigenze sono molteplici: spesso capita che il cliente abbia già un gestionale dal quale estrapolare i dati dei prodotti, in altri il cliente ha già un sito ecommerce e vuole esportare gli ordini all’interno del suo gestionale. Alessandro Gnola, sviluppatore Magento che ci racconta la sua esperienza con l’integrazione Magento e il gestionale Gamma.

integrazione magento gestionali
5/5 (1)

Uno dei temi più scottanti quando si parla di Magento e che i nostri clienti ci chiedono spesso, è l’integrazione di Magento con Gestionali Esterni.

Le esigenze sono molteplici: spesso capita che il cliente abbia già un gestionale dal quale estrapolare i dati dei prodotti, in altri il cliente ha già un sito ecommerce e vuole esportare gli ordini all’interno del suo gestionale.

Esistono moltissimi gestionali in commercio e il processo di integrazione non è sempre semplice ed immediato come si pensa.

Tra le integrazioni più frequenti, citiamo:

  • Integrazione Magento e AS400
  • Integrazione Magento e Passpartout
  • Integrazione Magento e Gamma, di Team System
  • Integrazione Magento e gestionali proprietari.

L’integrazione di E-commerce con i gestionali è un’operazione complessa. Magento non fa differenza. La difficoltà è proporzionale al livello di integrazione. Ogni gestionale è sviluppato in modo diverso e anche le procedure sono molto simili fra loro l’organizzazione tabelle sono tutte diverse.
Non c’è la cosiddetta “best pratice”, o un modulo magico che si installa e fa tutto per tutti i gestionali, ma ogni progetto va analizzato per capirne le criticità e va fatta un’integrazione ad hoc.

Integrazione Magento e gestionale Gamma

L’ultima integrazione su cui ho lavorato è stata quella tra Magento e il gestionale Gamma di Team System.

Il cliente aveva l’esigenza di non voler mai mettere le mani sul backend di Magento: desiderava gestire tutto dal suo gestionale.

Il mio scopo quindi è stato delineare un progetto di massima per definire le operazioni che il cliente poteva eseguire dal suo gestionale senza creare un progetto troppo complesso.

Ad esempio, un dettaglio che mi è stato subito chiaro è stato quello di non replicare la gestione degli attributi perché le problematiche che sarebbero potute nascere sarebbero state enormi.

Le macro aree su cui ho deciso di concentrarmi sono state quattro:
­

  • anagrafica clienti
  • anagrafica articoli
  • ordini ­prezzi live
  • relativi sconti

Affrontare tutte le problematiche a cui sono andato incontro sarebbe troppo complesso e dispersivo, perciò affronterò brevemente il discorso ordini perché riassume, in se, molte criticità del progetto affrontato.

Esportazione degli Ordini da Magento verso il Gestionale: Spiegazione Tecnica

Se si effettua una ricerca su google su una stringa del tipo: “magento export orders programmatically” abbiamo diversi risultati.

Diciamo, che per i meno esperti di Magento, capire come funziona l’esportazione dei dati potrebbe essere un’ottimo punto di partenza.

Nel mio caso le problematiche erano doppie: non dovevo solo esportare gli ordini, i clienti, gli articoli e gli sconti da Magento, ma anche popolare il gestionale o meglio, popolare il database di interscambio posto tra la rete e il gestionale.

Il mio progetto prevedeva una struttura di questo tipo:

integrazione magento gestionali

Il database di interscambio è stato inserito per un discorso sicurezza.

Esportazione in files CSV

Per facilità di spiegazione parlerò di esportazione dati verso file csv, ovvero file con dati delimitati da una virgola.

Solitamente, o almeno per la mia esperienza, nell’esportazione degli ordini, si utilizzano sempre due file:

  • File Testata: dove vengono inseriti i dati di fatturazione e spedizione.
  • File Riga: dove vengono inseriti i dati relativi agli articoli con un campo “join”. In questo caso il mio campo join è stato il numero ordine.

Un consiglio importante è quello di usare, quando possibile, le api di Magento. Sicuramente non è sempre possibile ma spesso si.

Nel mio caso ho dovuto fare un mix. Questo perchè il cliente, nella testata, non voleva solo i dati “Billing” e “shipping” ma anche il codice cliente e il codice destinazione, campi che prelevavo in fase di importazione (aggiornamento) delle anagrafiche clienti.

Non ne ho fatto cenno, ma in fase di importazione/aggiornamento anagrafiche, il cliente voleva venissero importati non solo i dati di fatturazione ma anche quelli di spedizione. Ogni cliente poteva avere infiniti indirizzi di destinazione merce. Quindi ogni notte, non dovevo solo aggiornare i dati di fatturazione, ma anche l’email e le anagrafiche spedizione.

Gestione degli sconti

Quando si parla del file riga bisogna considerare che i gestionali, in genere, ha una gestione degli sconti molto vasta e complessa.

Nel mio caso avevo 4 livelli di sconto:
­

  1. sconto articolo
  2. sconto cliente articolo
  3. sconto quantità ­
  4. sconto famiglia articolo

Per ognuno degli sconti di cui sopra avevo due livelli di sconto.

Anche la gestione sconti va riportata nel file riga per permettere, al gestionale, di avere sia il prezzo di listino che quello scontato. E’ quindi necessario riprodurre, tramite una serie di funzioni, il corretto funzionamento degli sconti.

Conclusioni

In questo breve articolo ho cercato di riassumere alcune delle criticità riscontrate in un’integrazione personalizzata per un cliente, tra il sito Magento e il suo gestionale. Un’integrazione di questo tipo può nascondere molte difficoltà, non lo nego.

Per affrontare un’integrazione è necessario quindi conoscere il funzionamento, almeno in linea teorica, delle problematiche e criticità aziendali.

Bisogna avere chiaro il funzionamento della parte commerciale di un’azienda (ordini, sconti, fatture, bolle,listini,creazione del prezzo, ecc…) e in alcuni casi anche della gestione industriale (distinte basi, gerarchie figli/padre, fogli istruzione, creazione del codice prodotto, ecc…).

Per fare quindi un’integrazione tra Magento e un gestionale, bisogna analizzare moltissime casistiche e fare molti test al fine di avere una procedura snella, veloce e sicura. Consiglio quindi di fare un’attenta analisi preliminare del progetto prima di avventurarsi in un lavoro complesso di questo tipo.

Se avete domande relativamente a questo argomento, lasciate un commento, sarò felice di rispondervi!

Ti è piaciuto questo articolo? Votalo!

Vuoi imparare meglio Magento?

Abbiamo preparato per te un Video corso di oltre 20h di formazione: dall'installazione alla configurazione. Dalla gestione prodotti, alla SEO on page, marketing e molto altro ancora!

Impara in fretta come creare e gestire un e-commerce con Magento, con l'esperienza degli esperti Magento.

Scopri di più

  • Giuseppe De Domenico

    Buonasera Sig. Gnola, utilizzo il gestionale gamma e sono nella fase di configurazione di magento e desideravo creare un collegamento tra i due gestionali anche più semplice di quello che sopra citato.

  • Francesco Dp

    Esiste un sistema per integrare Magento con Business Net di Nts ?

    • Marco Macari

      Modulo MAGENTO BUSINESS

      • Francesco Dp

        Grazie Marco, sapresti indicarmi dove posso acquistarlo?

        • Marco Macari

          Direttamente da un partner NTS.
          Se hai BUSINESS presuppongo che sei seguito da un partner, chiedi a lui e ti potrà seguire.
          Se hai difficoltà scrivi pure a me direttamente [email protected].

  • Still looking for a good Open Source ERP for Magento v1.

  • Giacomo

    Interessante articolo! Se dovessi consigliare ad un cliente che ha sia sito che negozio, un gestionale nuovo in grado di interfacciarsi agilmente con magento cosa proporresti?

    • Ciao Giacomo. Diversi gestionali hanno un loro ecommerce proprietario ma, a dire la verità, sono un pò scarsini. E’ comprensibile: ognuno fa il suo lavoro e un’azienda che sviluppa gestionali difficilmente saprà fare uno strumento focalizzato sulla vendita online.
      Sinceramente non conosco gestionali che si integrino completamente con
      Magento. Le eisgenze di un gestionale e di un ecommerce sono diverse. Ad esempio se parliamo di anagrafica prodotto, l’esigenza dell’ecommerce è quella di aggregare(più prodotti) per migliorarne la visibilità sul web(un esempio sono i prodotti configurabili). Vinceversa per le aziende che producono e vendono(quindi che hanno la necessita di gestire il magazzino, distinte basi, statistiche di vendita, ecc…) ogni prodotto viene trattato come articolo codice. Certo un prodotto potrà condividere in distinta base (articoli) figli con altri prodotti, ma sarà trattato cmq come prodotto finale singolo. Troppo prolisso? 🙂

Magento è un marchio registrato di Magento Inc. MagenTiamo è un progetto indipendente non affiliato direttamente dal progetto Magento o chi ne detiene il trademark.