Aggiornare il catalogo magento tramite excel con sconti/ offerte diversi per store e gruppi utente

Nessun commento

Oggi parliamo di una necessità evidente per chi gestisce un e-commerce in magento, l’aggiornamento dei prezzi.

PREMESSA

Molti utilizzatori di magento avranno avuto l’impressione che il sistema sincrono di aggiornamento del catalogo (attraverso le api) è lento e soprattutto poco customizzato.

Infatti, spesso, ci sono diversi fattori da tenere presente, oltre la velocità, riguardo all’aggiornamento di quantità e prezzi:

  1. diversi store (ita, de, b2c, b2b, amazon ita, amazon de) con prezzi e sconti diversi
  2. offerte automatiche
  3. gruppi di utenti (distributori, gold, platinum, ecc in base anche al fatturato pregresso)
  4. diverse aliquote iva (10% 22%) nello stesso store
  5. sconti su tutti i prodotti di un fornitore

Se anche tu spendi ore e ore ad aggiornare lo stock di magento per i prezzi che variano, continua a leggere !

La procedura standard di Magento non aiuta certamente a risolvere queste questioni, in particolare il prezzo per gruppo di utenti (ad esempio quanto avete degli sconti per fatturato pregresso del cliente) e diversi store. In particolare non è semplice gestire, nella maggior parte dei gestionali o ERP, una vista dei prezzi per store e per utente.

Quando abbiamo delle esigenze così complesse, la soluzione che abbiamo trovato in PENSARE WEB è quella di gestire lo stock e i prezzi in due momenti diversi, avremo quindi:

  • una procedura per i soli stock di ogni singolo prodotto
  • una procedura per i prezzi degli store e dei gruppi di utente.

Entrambe le procedure lavorano in modalità asincrona, tramite csv o xml.

Oggi ci concentriamo sulla seconda procedura, ovvero dell’aggiornamento dei prezzi in “situazioni complesse”, ovvero quando l’e-commerce è maturo e si deve procedere a realizzare prezzi e sconti per diversi target di clienti.

PROCEDURA MAGENTO AGGIORNAMENTO PREZZI PER STORE, PRODUTTORE E GRUPPI UTENTE

La procedura, gestita in modalità semi automatica, lavora in questo modo:

  1. lo store manager, attraverso un documento excel o open office modifica il listino, tenendo conto di:
    • store di riferimento (b2c, b2b, amazon ita, amazon de, ecc)
    • classe di sconto in base al gruppo del cliente (nessuno sconto, sconto base, sconto gold, ecc)
    • produttore / fornitore
  2. dal file excel, tramite una semplice macro, lo store manager esporta un file csv per ogni store;
  3. lo store manager decide se gli sconti si sommano tra loro a cascata oppure no;
  4. via ftp carica i vari file csv, tutti insieme, su una cartella per essere poi processati;
  5. un cron, che di solito gira ogni 5 minuti, prende il file in carico e lo elabora tramite uno script automatica
  6. lo script aggiorna:
    • il prezzo,
    • lo special price,
    • il prezzo di offerta, se il prezzo di offerta è settato associa i prodotti alla categoria “offerta”
    • i prezzi e gli special price specifici in base al gruppo utente di un determinato prodotto individuato dallo SKU presente nel tracciato.

Una procedura in cron (ogni 5 minuti) controlla che ci siano file csv in una cartella denominata “upload”. Nel caso siano presenti file csv da processare controlla che non ci siano già in corso importazioni di file controllando se sono presenti file in una cartella denominata “processing”, nel caso siano già in corso importazioni non fa nulla, in caso contrario prende in carico il file csv e lo sposta il file nella cartella “processing”.

Lo script, in cron, verifica che ci siano file da processare nella cartella “processing”, nel caso ci siano file da processare legge il file e lo rinomina aggiungendo la data di inizio elaborazione (timestamp) “_20181117-15:43:12”.

La procedura apre il file in lettura e recupera i dati che deve aggiornare. Di seguite le fasi della procedura di aggiornamento:
1) Recupera lo store dal nome del file (es STORE_STORE.csv, in caso di multistore) e in base allo store, imposta una serie di variabili quali: id del guppo base, gold, premium, silver del customer, storeview, website, nome dello store.
2) Aggiorna gli attributi “prezzo”, “special price”, “special From”, “sconti gruppi utenti” del singolo prodotto per la storeview
3) Se presente un prezzo di offerta associa i configurabili alla categoria “offerta”, se il prezzo di offerta è vuoto controlla se il prodotto è associato alla categoria e lo dissocia
4) Esegue il reindex dei prodotti (solo quelli aggiornati)
5) Esegue il flush delle categorie e dei (SOLI) prodotti aggiornati
6) Sposta in una cartella denominata “processed” il file e lo rinomina aggiungendo al label del file “_PROCESSED”.
7) Genera un report dell’importazione nella quale viene indicato:
– Il nome del file processato
– Totale prodotti nel file
– Totale prodotti abilitati nello store
– # Prodotti Semplici nello store
– # Prodotti Semplici aggiornati
– # Prodotti Semplici che hanno generato errore
– # Prodotti Configurabili nello store
– # Prodotti Configurabili aggiornati
– # Prodotti Configurabili che hanno generato errore
– # Prodotti non aggiornati nello store con indicazione della riga del file csv a cui corrisponde l’errore
– Numero “Errori campo listino non settato o uguale a 0 “
– “Errori import (prodotti non esistenti a catalogo)”
8) Invia la mail all’indirizzo indicato con il report generato
9) Per velocizzare il tutto, i prodotti senza cambiamenti (rispetto allo stato di fatto) vengono “skippati”.

RISULTATI OTTENUTI

Su un catalogo di oltre 10.000 prodotti, il processo di elaborazione di uno store necessita circa 5 minuti

Inoltre lo store manager, in una sola vista di foglio elettronico, riesce ad avere sottocchio tutti i prodotti e le categorie, fare sconti (aumenti) e offerte (cambiando 1 solo valore in una cella) su:

  • singolo prodotto e relativa messa in offerta
  • tutti i prodotti di un produttore
  • tutti gli utenti non loggiati su tutto lo stock o su categorie di utenti (in base al fatturato)
  • tutti i prodotti in vendita in un determinato store
  • o su le mille combinazioni che ci possono essere tra quelle precedenti

Se sei interessato ad una integrazione di questo tipo che ti farà risparmiare tempo e denaro, contattaci.

 

fabio tontiAggiornare il catalogo magento tramite excel con sconti/ offerte diversi per store e gruppi utente

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *