Importa e sincronizza in sicurezza i prodotti PrestaShop

Importa prodotti e combinazioni, associa prezzi e scorte, diagnostica errori parziali e verifica i feed dei fornitori prima di aggiornare il negozio.

mypresta.rocks · Aggiornato 01/11/2026

Scegli un metodo di importazione adatto ai tuoi dati e alla frequenza con cui cambiano. Mappa prima identità, prezzi, combinazioni e scorte, poi rendi il processo riprendibile prima di eseguirlo sul catalogo live. Concorda quale sistema gestisce ogni campo e prova l'esecuzione su una copia di staging: il percorso giusto dipende dal tuo catalogo, dai tuoi fornitori e dagli altri sistemi che vi scrivono.

Come procederemmo

Il percorso dipende dal catalogo esistente e dalla qualità dei dati, dai feed dei fornitori, dai moduli installati, dalle integrazioni e dai requisiti del tema, oltre che da quali campi il personale gestisce a mano. Per un caricamento occasionale da foglio di calcolo, proveremmo prima l'importatore CSV nativo su una copia di staging, usando il formato di esempio di quel negozio. Per aggiornamenti ricorrenti dei fornitori, valuta un modulo di sincronizzazione feed verificato prima di commissionare uno script API. Per le esportazioni, parti dai campi richiesti dal sistema che le riceve. Per un collegamento ERP bidirezionale, definisci responsabilità, conflitti e recupero prima di scegliere un'interfaccia.

AttivitàPercorso inizialeDecisione da prendere
Caricamento occasionale di prodotti o combinazioniL'importatore CSV nativo con una mappatura verificata.L'importatore installato copre i campi richiesti e il comportamento di aggiornamento?
Scorte, prezzi o contenuti ricorrenti dei fornitoriUn modulo di sincronizzazione feed valutato.Quali campi gestisce ogni fornitore e cosa deve restare sotto controllo manuale?
Esportazione prodotti o feed per marketplaceUno strumento di esportazione adatto alla destinazione.Quali campi, trasformazioni, lingue, valute e pianificazione richiede il destinatario?
Collegamento ERP o PIM bidirezionale, o un contratto della sorgente che nessuno strumento supportaUn'integrazione con ambito definito che usa interfacce verificate per il negozio installato.Chi gestisce ogni valore, come si risolvono i conflitti e come può riprendere in sicurezza il lavoro fallito?
Modifica massiva dei prezzi al dettaglio o all'ingrossoUno strumento dedicato ai prezzi, se il calcolo è l'unico requisito.Una modifica con anteprima può sostituire un'operazione di esportazione e reimportazione?

Se il flusso richiede un'integrazione specifica, il nostro PrestaShop Custom Module Development Service inizia con una specifica scritta che copre regole commerciali, collegamenti, esclusioni e criteri di accettazione, seguita da un preventivo fisso; costi di terze parti e modifiche infrastrutturali sono separati.

Scegli CSV, un'API o un feed ricorrente

Usa Parametri avanzati > Importa per un CSV preparato e un caricamento una tantum o occasionale. Usa un processo di integrazione quando servono sincronizzazioni ricorrenti con fornitori o ERP, nuovi tentativi affidabili o trasformazioni che un foglio di calcolo non può mantenere. Un PIM può gestire dati di catalogo più ricchi, ma richiede comunque un'associazione testata verso PrestaShop.

L'importatore CSV nativo non legge un feed XML arbitrario di un fornitore. Converti quel feed nel formato CSV dell'entità selezionata, usa un connettore che ne supporti esplicitamente la struttura o scrivi un'integrazione su un'API disponibile. Varianti annidate, valori di immagine ripetuti e campi per lingua richiedono una mappatura ragionata; cambiare l'estensione del file non converte i dati. Un modulo di esportazione/feed pianificato può produrre file ricorrenti per i marketplace; un'esportazione manuale dalla griglia del catalogo non è un backup completo.

Scegli tra questi approcci in base a una prova rappresentativa e alle tue esigenze operative. Le dimensioni del catalogo da sole non determinano il metodo. Download delle immagini, combinazioni, hook, limiti del server e qualità dei dati incidono sulla capacità. Inizia con un campione rappresentativo che contenga accenti, più categorie, varianti e immagini. Scegli le dimensioni dei lotti in base ai tempi di completamento misurati.

Quando l'importazione fa parte del passaggio a un nuovo negozio, il percorso abituale è un negozio di destinazione pulito in staging, caricato con una migrazione dei dati già provata, poi un passaggio definitivo pianificato. Per la gestione di account, ordini e URL specifica della migrazione, consulta la guida alla migrazione di piattaforma.

Concorda la responsabilità dei campi prima di importare

Annota quale sistema gestisce ogni campo: il fornitore, il tuo ERP o PIM, oppure il personale nel back office. Un'esecuzione dovrebbe modificare solo i campi che gestisce. Descrizioni scritte dal personale, le tue fotografie e un prezzo di vendita approvato restano protetti, salvo che la regola concordata stabilisca diversamente.

La seguente è una specifica di mappatura illustrativa, non un CSV importabile né una promessa che un determinato strumento esponga questi nomi di campo:

Valore sorgenteDestinazione concordataRegola
Fornitore A + SKU MUG-BLUERiferimento prodotto esistente MUG-BLUE, negozio MainAggiorna soltanto dopo una corrispondenza univoca; sospendi i casi senza corrispondenze o con corrispondenze multiple per una verifica.
Prodotto principale TEE + variante TEE-BLUE-MCombinazione mappata sotto il prodotto principale mappatoNon usare il solo riferimento del prodotto principale per identificare una variante.
available_qtyCampo scorte concordatoVerifica se il fornitore comunica scorte fisiche o vendibili e come gli ordini del negozio le influenzano.
net_cost + currencyCampo costo, con una regola di prezzo al dettaglio approvata separatamenteConferma formato decimale, valuta, base fiscale e arrotondamento prima di aggiornare i prezzi.
Descrizione e URL delle immaginiLascia invariati in questa esecuzioneProteggi i contenuti scritti dal personale e le immagini esistenti; non mappare campi non gestiti dal fornitore.

Accanto, scrivi le regole per creazione, aggiornamento e record mancanti, separatamente per prodotti padre, combinazioni e ogni negozio. Concorda se una cella vuota significa lasciare invariato, cancellare il valore o rifiutare la riga. Risolvi riferimenti duplicati, identificativi vuoti, padri sconosciuti e categorie mancanti prima di applicare un lotto.

Per un collegamento bidirezionale, concorda anche come una vendita successiva nel negozio interagisce con un aggiornamento delle scorte più vecchio proveniente dall'ERP. Chiedi allo sviluppatore di dimostrare ordinamento, risoluzione dei conflitti e recupero, invece di lasciare che l'ultima scrittura arrivata diventi per caso la regola.

Prepara il CSV e associa i campi

  1. Conserva una copia intatta del file sorgente ed esegui ogni correzione su una copia.
  2. Scarica il file di esempio per l'entità selezionata nella schermata Importa effettiva. I campi disponibili differiscono per entità e versione.
  3. Salva in UTF-8. L'importatore nativo di PrestaShop 1.7.8 e 9.1 ignora automaticamente il byte-order mark UTF-8. Rimuovere il BOM non è una correzione necessaria per quell'importatore.
  4. Imposta separatore dei campi e separatore dei valori multipli in modo che corrispondano al file. Il separatore predefinito dei campi è il punto e virgola. Racchiudi tra virgolette i campi contenenti delimitatore, virgolette interne o interruzioni di riga, usando l'escape CSV.
  5. Associa esplicitamente le colonne, salta la riga d'intestazione e salva una mappatura con nome se la riutilizzerai. Verifica lingua, contesto del negozio e tutte le opzioni distruttive prima di iniziare.
  6. Esegui un piccolo campione e ispeziona i prodotti effettivi. Verifica l'associazione di imposte, identità e scorte sui prodotti importati oltre alla sintassi CSV.
Active;Name;Reference;Price tax excluded;Tax rule ID;Quantity
1;Blue widget;WIDGET-BLUE;100.00;1;12

Questa è un'intestazione illustrativa, non un contratto di mappatura automatica. Mappa ogni colonna nella tua installazione. Quando carichi la sorgente in un foglio di calcolo, imposta riferimenti, GTIN e codici postali come testo prima che la conversione automatica possa rimuovere gli zeri iniziali o alterare identificativi lunghi. Confronta il file salvato con l'originale per verificare che zeri iniziali e riferimenti lunghi siano rimasti intatti. La codifica di Excel dipende dal formato di esportazione e dalla piattaforma selezionati; ispeziona il file risultante, per esempio con il nome di un prodotto accentato, invece di fidarti dell'etichetta dell'esportazione. Indaga sulla riga fallita prima di cambiare i fine riga CRLF.

Le virgolette contano non appena un valore contiene il separatore. Questo frammento di un file fornitore illustra solo l'uso delle virgolette; non è un modello di importazione nativo:

supplier_sku;description
MUG-BLUE;"Blue mug; gift range"

Il punto e virgola all'interno della descrizione deve restare parte di quel valore. Apri il file con le impostazioni di analisi previste e verifica che ogni riga abbia il numero di colonne atteso prima di mapparlo.

Importa le categorie prima di assegnarvi prodotti. Mantieni una mappatura esplicita delle categorie. Verifica se il campo scelto accetta un ID o un nome e se un nome sconosciuto crea una categoria. Non trattare colonne arbitrarie delle entità come identificativi intercambiabili.

Aggiorna i prodotti esistenti e importa le combinazioni

Decidi se un record aggiorna un prodotto esistente o ne crea uno. In PrestaShop 1.7.8 e 9.1, l'abbinamento per riferimento prodotto richiede l'apposita opzione. Per abbinare la colonna ID prodotto, abilita “Forza tutti i numeri ID”: altrimenti l'importatore prodotti scarta quell'ID prima dell'abbinamento. Con l'opzione abilitata, un ID inesistente può creare un prodotto con quell'ID. Verifica ogni ID e riferimento di destinazione prima di importare e rifiuta i riferimenti ambigui.

Importa prima i prodotti padre, poi esegui un passaggio separato per le Combinazioni. Per il padre, fornisci l'ID prodotto di destinazione oppure abilita l'abbinamento per riferimento e fornisci il Riferimento prodotto. Lo SKU/riferimento proprio di una combinazione è diverso dal riferimento del padre.

  1. Associa gli assi delle varianti, come Taglia e Colore, a gruppi di attributi e valori. Controlla nomi e valori degli attributi per individuare grafie incoerenti prima di creare le combinazioni.
  2. Associa alle caratteristiche le specifiche descrittive che non selezionano una variante.
  3. Imposta per ogni combinazione riferimento, riferimento fornitore, identificativi, scorte e impatti su prezzo/peso secondo necessità.
  4. Usa il flag predefinito dell'importazione Combinazioni per la combinazione che vuoi rendere predefinita.
  5. Verifica valore selezionabile, prezzo finale, immagine e quantità di ogni variante importata.

Per esempio, se il prezzo tasse escluse del padre è 100 EUR e una variante deve essere venduta a 120 EUR tasse escluse, il suo impatto sul prezzo è 20 EUR. Non importare l'intero valore di 120 EUR come impatto. Prova una seconda importazione per verificare che aggiorni i record previsti invece di duplicarli. Dimostra la regola di corrispondenza con un prodotto esistente e una variante esistente, poi riesegui lo stesso campione e controlla descrizioni, immagini e prezzi protetti oltre al numero di duplicati.

Associa imposte, prezzi e scorte nell'ambito corretto

L'importatore nativo espone campi separati Prezzo tasse escluse e Prezzo tasse incluse. Usa il campo corrispondente all'origine. Quando importi prezzi lordi, conferma l'aliquota usata per ricavare il prezzo base memorizzato. Assegna il gruppo di regole fiscali corretto e verifica i totali del carrello per destinazione. Associare 120 EUR lordi a 120 EUR netti non diventa corretto solo selezionando un gruppo fiscale.

Mantieni separati costo di acquisto dal fornitore, prezzo di vendita, conversione valutaria, sconti e trattamento fiscale. Verifica i prezzi effettivi dopo combinazioni, prezzi specifici e sconti di catalogo, senza affidarti solo alla colonna del prezzo base.

Se l'attività è solo una modifica massiva dei prezzi, Mass Price Updater offre modifiche percentuali o fisse ai prezzi al dettaglio o all'ingrosso, un'anteprima obbligatoria e la registrazione dei valori precedenti per un ripristino verificato, senza esportazione e reimportazione. È un'attività diversa dalla sincronizzazione di un catalogo fornitore.

Le scorte appartengono a stock_available. Usa i servizi di magazzino PrestaShop, StockAvailable o la risorsa API supportata anziché aggiornare direttamente il vecchio campo quantità del prodotto. Le operazioni corrette sulle scorte notificano anche gli hook pertinenti.

Limita i prezzi al record product_shop previsto. Limita le scorte al negozio o al gruppo di negozi con magazzino condiviso. Le quantità delle combinazioni richiedono i propri ID di attributo prodotto; una riga a livello prodotto non è un bacino aggiuntivo da sommare a tutte le righe delle combinazioni.

L'impostazione out_of_stock seleziona vieta, consenti o eredita. Il comportamento ereditato legge PS_ORDER_OUT_OF_STOCK nel contesto di configurazione applicabile. Una quantità pari a zero può comunque essere acquistabile se è consentito ordinare prodotti esauriti.

Gestisci immagini e importazioni di grandi dimensioni

L'importatore nativo elabora lotti con offset/limite. Non recupera necessariamente ogni immagine in un'unica richiesta lunga. Un'immagine remota lenta o non funzionante può comunque esaurire i limiti di un lotto.

  1. Importa prima i dati principali dei prodotti, omettendo le immagini, e convalidali.
  2. Se l'importatore scelto supporta un passaggio separato di aggiornamento delle immagini, provalo con i campi richiesti e la regola di corrispondenza dimostrata prima di applicarlo. Controlla accesso remoto, certificati, reindirizzamenti, dimensioni delle immagini e spazio su disco del server. Prova quel passaggio senza eliminazione e verifica che ripeterlo non aggiunga copie indesiderate.
  3. Usa l'opzione dell'importatore per saltare la rigenerazione delle miniature quando opportuno, poi genera quelle necessarie dopo il caricamento. Mantieni i formati richiesti dal tema.
  4. Usa “Elimina immagini esistenti” solo per una sostituzione pianificata: può rimuovere immagini aggiunte manualmente ai prodotti abbinati.
  5. Misura se prevalgono download, ridimensionamento, scritture nel database, hook o indicizzazione. Se sospendi l'indicizzazione automatica della ricerca durante un caricamento controllato, ricostruisci poi gli indici di ricerca e navigazione a faccette pertinenti.

Ispeziona upload_max_filesize, post_max_size, memory_limit, max_execution_time e max_input_time. Per i caricamenti multipart, verifica anche i limiti applicabili al numero di file. Limiti di terminazione PHP-FPM, timeout di lettura di server web/proxy e limiti delle richieste CDN sono vincoli separati. Aumentare un valore PHP non li supera tutti.

Un processo CLI o cron elimina la richiesta del browser dal processo ma conserva limiti di memoria, esecuzione e operatività. Non presumere che esista un comando nativo prestashop:import. Verifica i comandi disponibili nell'installazione oppure usa un importatore mantenuto con un processo di esecuzione identificato.

Prova una simulazione e un ripristino selettivo

Prova le importazioni di routine su una copia di staging isolata del negozio live. Per una migrazione, prova sul negozio di destinazione pulito descritto sopra. Un'importazione riuscita non stabilisce che le modifiche siano corrette per la tua attività: ispeziona pagine prodotto, combinazioni e totali del carrello.

  1. Prepara il recupero. Esegui il backup di database, file e immagini, verifica che il recupero sia possibile e usa lo staging. Isola la copia da pagamenti live, messaggi ai clienti, fornitori e sistemi di evasione degli ordini.
  2. Crea un campione rappresentativo. Oltre ad accenti, più categorie, varianti e immagini, includi un articolo esistente, un articolo nuovo, identificativi mancanti, un prezzo sospetto e un'immagine che non si carica, più i casi pertinenti di lingua e negozio.
  3. Esamina le modifiche proposte. Usa l'anteprima di uno strumento, se disponibile. Altrimenti confronta lo staging prima e dopo; non chiamare simulazione un'importazione live non verificata. Conta creazioni, aggiornamenti, esclusioni ed errori.
  4. Controlla il negozio. Esamina pagine prodotto, combinazioni, disponibilità, immagini e totali del carrello effettivi, insieme al log di importazione. Dimostra che i campi protetti restino invariati e che ripetere l'esecuzione sia sicuro.
  5. Dimostra la reversibilità. Prova il ripristino documentato dello strumento o un recupero circoscritto. Tieni conto delle modifiche successive del personale e degli ordini, così il recupero non sovrascrive dati commerciali più recenti.
  6. Avvia un lotto misurato. Scegline la dimensione in base al tempo di completamento misurato in staging. Riconcilia conteggi, errori e valori modificati prima di continuare e sospendi la pianificazione se i risultati differiscono dalle regole concordate.

Un ripristino completo del database su un negozio in attività può cancellare ordini e pagamenti più recenti. Concorda come verrebbero conservati prima di qualsiasi operazione distruttiva; nemmeno i valori del feed conservati sostituiscono un backup recuperabile del negozio. Non eliminare prodotti, non sfoltire i formati delle immagini e non aumentare i limiti del server come prima reazione a un'importazione fallita.

Cosa deve consegnare l'agenzia

  • Una mappatura di responsabilità dei campi e identità, inclusi prodotti, varianti, negozi e lingue.
  • L'importatore o le operazioni API provati, i formati sorgente e i permessi, con credenziali escluse dai normali log di esecuzione.
  • Prove per i casi di duplicati, valori vuoti, record mancanti, prezzi sospetti, righe rifiutate ed esecuzioni interrotte, più le condizioni di arresto concordate e cosa succede quando due esecuzioni si sovrappongono.
  • Il responsabile della pianificazione, il canale degli avvisi di errore, la procedura di ripresa e i passaggi di recupero collaudati che proteggono ordini e modifiche successivi.

Se il problema più ampio è la responsabilità delle scorte, consulta la guida alla gestione del magazzino. L'integrazione dovrebbe seguire il processo operativo concordato.

Diagnostica un'importazione fallita o parziale

  1. Salva il file fallito, la mappatura, le opzioni, l'ora e gli ultimi record confermati. Sospendi le esecuzioni pianificate o sovrapposte che potrebbero scrivere sugli stessi record. Esegui un backup prima della riparazione.
  2. Ispeziona i log degli errori di applicazione, PHP-FPM e server web. Usa i percorsi effettivi configurati per l'installazione; var/logs/ è una posizione comune per l'applicazione.
  3. Se fallisce la stessa riga, isolala e ispeziona valori richiesti, separatori, virgolette, codifica, riferimenti alle categorie e URL delle immagini.
  4. Se l'errore dipende da durata o dimensione del lotto, misura la richiesta fallita e confronta tutti i limiti di timeout e memoria.
  5. Ispeziona database e vetrina per identificare i record salvati definitivamente. Una pagina vuota o un lotto fallito non implicano che non sia stata salvata alcuna riga.
  6. Riprendi usando riferimenti stabili o ID mappati. Riconcilia i record ambigui prima di ritentare. Non abilitare l'eliminazione del catalogo per aggirare un'importazione incompleta.
  7. Ripara immagini incomplete, flag attivi o associazioni e ricostruisci gli indici applicabili dopo l'ultimo lotto.
Cosa vediPrimo controlloPasso successivo controllato
“La proprietà X è vuota” oppure una categoria viene rifiutata.Il campo obbligatorio indicato e la sua mappatura, i valori richiesti della riga rifiutata e la categoria di destinazione.Risolvi la mappatura; non dare per scontato che l'importatore crei la categoria prevista.
Accenti errati o colonne spostate.La codifica della sorgente prima di qualsiasi conversione, poi separatori, virgolette e gestione dell'intestazione nel file grezzo.Correggi una copia e prova righe rappresentative in staging prima di un altro lotto.
I prezzi differiscono dal foglio di calcolo.Interpretazione dei decimali, costo rispetto a prezzo di vendita, valuta, base fiscale e regole di prezzo attive.Confronta un valore mappato con pagina prodotto e carrello nel contesto cliente previsto.
Compare solo una parte del lotto o le immagini falliscono.Log di esecuzione, identificatori applicati con successo, accesso alle immagini remote e uso misurato delle risorse.Riprendi dai risultati riconciliati con la regola di corrispondenza dimostrata, senza eliminare il lavoro riuscito.
Prodotti invisibili.Stato attivo, associazioni a negozi e categorie, visibilità e indicizzazione.Distingui un problema della pagina prodotto aperta direttamente da un problema di ricerca o di elenco prima di modificare i dati; la reindicizzazione non è una riparazione universale.
Duplicati ricorrenti.La chiave di aggiornamento e la sua univocità.Sospendi le esecuzioni pianificate, confronta le chiavi sorgente dei duplicati e dimostra in staging la regola di corrispondenza corretta prima di rieseguire.

Esporta negozio, lingua e scorte corretti

Un'esportazione SQL utile deve includere l'ambito di negozio e lingua. Il seguente esempio in sola lettura esporta quantità aggregate dei prodotti per il negozio 1 e la lingua 1 quando quel negozio ha scorte proprie. Sostituisci prefisso delle tabelle e ID per la tua installazione.

SELECT p.id_product, pl.name, p.reference,
       ps.price AS price_tax_excluded, sa.quantity
FROM ps_product p
JOIN ps_product_shop ps
  ON ps.id_product = p.id_product AND ps.id_shop = 1
JOIN ps_product_lang pl
  ON pl.id_product = p.id_product
 AND pl.id_shop = 1 AND pl.id_lang = 1
LEFT JOIN ps_stock_available sa
  ON sa.id_product = p.id_product
 AND sa.id_product_attribute = 0
 AND sa.id_shop = 1 AND sa.id_shop_group = 0;

Per il magazzino condiviso, seleziona la riga effettiva del gruppo che condivide le scorte, normalmente id_shop = 0 e il pertinente id_shop_group. Non aggiungere un OR generico che unisca entrambi gli ambiti. Per scorte a livello di variante, esporta separatamente i record delle combinazioni e i loro riferimenti. Verifica il rapporto tra quantità aggregate e quei record.

La query restituisce il prezzo base memorizzato, che non è necessariamente quello che paga un cliente dopo imposte, impatti delle combinazioni e prezzi specifici. Se usi Gestione SQL per un'estrazione in sola lettura di questo tipo, fai verificare a uno sviluppatore i join e l'ambito di negozio, lingua e combinazione.

Usa un'esportazione feed ricorrente quando la destinazione ha bisogno di prezzi e disponibilità aggiornati secondo una pianificazione. Serve un generatore oltre a una pianificazione, controlli di consegna e un responsabile degli errori; consulta la guida ai feed prodotto per i requisiti delle destinazioni. Le esportazioni di ordini e fatture sono insiemi di dati separati (vedi esportazioni di ordini e fatture). Né un elenco prodotti né questa query forniscono un backup del database ripristinabile.

Scrivi il contratto di esportazione prima di creare l'esportazione

Non dare per scontato che un'esportazione dell'elenco prodotti contenga combinazioni, immagini, contenuti tradotti o i prezzi di cui la destinazione ha bisogno. Decidi se ogni riga rappresenta un prodotto padre o una combinazione vendibile e identificane negozio e lingua. Specifica quale prezzo serve al destinatario, comprese valuta, base fiscale ed eventuale contesto del gruppo di clienti. Includi requisiti di disponibilità, immagini e destinazione in un campione che il sistema ricevente accetta e confronta ogni esportazione di esempio con quell'elenco scritto di campi. Per un feed pianificato, controlla l'aggiornamento e il contenuto del file consegnato, non solo se un'attività segnala di essere riuscita.

Usa correttamente richieste XML e risposte JSON

Il Webservice precedente e l'Admin API di PrestaShop 9 sono interfacce diverse. Il Webservice precedente di PrestaShop 1.7.8 e 9.1 accetta scritture di entità in XML e può restituire JSON usando output_format=JSON. Non serve l'API più recente solo per ricevere una risposta JSON.

GET /api/products?display=full&output_format=JSON
GET /api/products?schema=blank

Abilita il servizio legacy in Parametri avanzati > Webservice e concedi solo i permessi necessari sulle risorse. Proteggi le chiavi e usa HTTPS. Tieni le chiavi fuori dai file condivisi con i fornitori. Esamina lo schema della risorsa di destinazione prima di creare le richieste e conferma la versione esatta, le estensioni installate, i permessi e il formato di scrittura accettato per ogni risorsa di cui hai bisogno. Un output JSON non dimostra che le scritture JSON siano accettate e un'altra API potrebbe non esporre tutte le risorse che ti servono.

Le implementazioni delle richieste di PrestaShop 1.7.8 e 9.1 iterano su più entità XML in una richiesta di scrittura. Questo non garantisce una transazione in blocco atomica. Le entità precedenti possono essere salvate prima che una convalida o associazione successiva fallisca. Testa il comportamento multientità per la tua versione e risorsa esatte.

Registra ID dell'esecuzione, chiave sorgente, ID di destinazione, operazione e risposta depurata dai dati sensibili. In caso di timeout o errore ambiguo, recupera lo stato di destinazione prima di ripetere una creazione. Ritenta gli errori transitori con attese crescenti limitate. Correggi errori di autenticazione, permessi, schema e convalida prima di ritentare. Non presumere che ogni HTTP 500 possa essere ripetuto in sicurezza.

Usa l'endpoint supportato di caricamento delle immagini prodotto per le immagini binarie. Pianifica prodotti, combinazioni, associazioni e scorte come operazioni correlate con punti di controllo e prova separatamente sul negozio installato le operazioni su prodotti, combinazioni, scorte e immagini. Misura la velocità di elaborazione e rispetta i limiti dell'hosting o del WAF; un ritardo fisso tra le richieste non permette di prevedere la durata totale dell'esecuzione.

Usa aggiornamenti controllati dei fornitori e pianificali in sicurezza

Smart Wholesaler Feed Sync parte da una sorgente, un test di connessione e la mappatura delle colonne di esempio. La sua descrizione di prodotto include campi gestiti, priorità dei fornitori, regole di prezzo e protezione per valori manuali o bloccati. Una revisione prima e dopo, limiti alle azioni e la quarantena dei prezzi sospetti proteggono gli aggiornamenti; ogni feed ha una propria pianificazione e le esecuzioni applicate conservano i valori precedenti per il ripristino.

Prima di sceglierlo, verifica che il formato della tua sorgente, l'autenticazione e i campi richiesti siano supportati. Decidi cosa succede quando un file arriva in ritardo, è vuoto o incompleto, quando più fornitori corrispondono allo stesso articolo e quando un prezzo viene rifiutato. La sua descrizione indica che gli aggiornamenti sicuri di scorte e contenuti possono proseguire mentre un prezzo sospetto del fornitore resta invariato. I valori precedenti conservati consentono un ripristino selettivo delle modifiche di quello strumento; non sono un backup recuperabile del negozio e da soli non risolvono i conflitti con modifiche successive del personale.

Il prezzo del fornitore cambia, ma la tua descrizione non deve cambiare

Hai riscritto la descrizione di MUG-BLUE e scattato le tue fotografie. Un file fornitore contiene un nuovo costo, informazioni sulle scorte e una vecchia descrizione. L'esecuzione concordata gestisce il costo fornitore e il suo contributo definito alle scorte; i tuoi contenuti modificati restano protetti. Un prezzo al dettaglio cambia soltanto attraverso la regola di prezzo approvata.

Ora il fornitore invia un prezzo sospetto. Esamina l'importo rifiutato e il motivo, verificando al tempo stesso che gli aggiornamenti consentiti abbiano seguito la politica concordata. Se il file è troncato, sospendilo per una verifica invece di trattare l'assenza come una modifica delle scorte sull'intero catalogo. Conserva il file sorgente e il registro dell'esecuzione, così il personale può spiegare quali valori sono cambiati e perché.

Cron Manager può pianificare attività in background e mostrarne risultati ed errori. È uno strumento di pianificazione: non fornisce la mappatura dell'importazione né trasforma un feed non supportato in un connettore. Verifica che l'importatore scelto esponga un'attività compatibile e non aggiungere un altro pianificatore dove lo strumento del feed pianifica già il processo.

Blocca i dati errati dei fornitori prima della pubblicazione

Documenta le regole concordate con il fornitore per l'identificazione dei prodotti. Un identificativo fornito dal fornitore può essere stabile o riutilizzato. Un GTIN, MPN o riferimento commerciale può mancare, essere duplicato o assegnato a un livello diverso. Abbina nell'ambito previsto di fornitore, produttore, prodotto/combinazione e negozio. Rifiuta gli abbinamenti ambigui.

Verifica indipendentemente lunghezze GTIN richieste e cifre di controllo. Nel modello prodotto di PrestaShop 1.7.8 e nel modello combinazione di 9.1, ean13 usa isEan13(), che accetta fino a 13 cifre. Il modello prodotto di PrestaShop 9.1 usa invece isGtin(), il cui schema accetta fino a 14 cifre. Nessuno dei due schemi verifica da solo l'insieme delle lunghezze GTIN richieste o la cifra di controllo. I campi MPN non sono disponibili in ogni versione precedente, inclusa la 1.6.1.24 standard.

  1. Prepara il file scaricato in un'area temporanea. Verifica completamento del trasferimento, checksum atteso dove fornito, data e ora della sorgente e risultati dell'analisi.
  2. Registra inizio/fine dell'esecuzione, fornitore, numero di righe, numero precedente, checksum, stato e motivo di rifiuto.
  3. Rifiuta variazioni implausibili o un file troncato prima di applicare rimozioni. Una riga mancante significa prodotto ritirato solo quando il contratto della sorgente lo definisce così.
  4. Applica prezzi minimi e protezioni sulle variazioni di quantità prima della pubblicazione. Segnala le modifiche rifiutate anziché sostituirle silenziosamente con un valore ipotizzato.
  5. Registra valori prima/dopo e ID di destinazione. Convalida prima di inoltrare le modifiche ai marketplace.
  6. Distingui le scorte non più disponibili presso il fornitore da quelle locali effettive. Vendi le scorte residue solo secondo la politica di disponibilità prevista.

Distingui un'informazione mancante da un'istruzione per cancellarla

Un fornitore omette una tazza dal file di oggi. Potrebbe trattarsi di un articolo fuori produzione, di un download incompleto o di un file che contiene solo le modifiche. Concorda il significato di ogni condizione della sorgente prima che un'esecuzione la tratti come un'istruzione sulle scorte o sulla visibilità.

Condizione della sorgenteDomanda da chiarireGestione proposta
Scorte disponibili esplicitamente pari a zeroDescrive le scorte del fornitore, il tuo magazzino o una quantità vendibile combinata?Applica soltanto la regola approvata sulla gestione delle scorte.
Cella scorte vuotaSignifica sconosciuto, invariato o cancellato deliberatamente?Mantieni il valore salvo che il formato concordato ne definisca il significato.
Prodotto assente dal fileÈ un'istantanea completa o un file di sole modifiche?Mettilo in attesa di verifica; applica una rimozione solo da un'istantanea completa secondo il contratto concordato.

Queste sono regole operative da specificare e provare, non una dichiarazione che ogni importatore fornisca questi controlli.

Le scorte fantasma possono causare vendite oltre la disponibilità; abbinamenti errati possono pubblicare il prezzo di un altro prodotto. Le conseguenze sui marketplace dipendono dal canale e dall'operazione eseguita. Rifornire, modificare e sostituire un'offerta non ne azzerano universalmente lo storico.

Indaga identificativi duplicati e prezzi sottocosto

Queste query individuano casi da indagare. Non dimostrano un errore. Sostituisci ps_ con il prefisso del tuo database.

SELECT ean13, COUNT(*) AS records_found
FROM ps_product
WHERE ean13 <> ''
GROUP BY ean13
HAVING COUNT(*) > 1;

SELECT p.id_product, p.reference, ps.id_shop,
       ps.price, ps.wholesale_price
FROM ps_product p
JOIN ps_product_shop ps ON ps.id_product = p.id_product
WHERE ps.id_shop = 1 AND ps.active = 1
  AND ps.wholesale_price > 0
  AND ps.price < ps.wholesale_price;

Ripeti i controlli degli identificativi per combinazioni e altri campi solo dove esistono. Ispeziona l'ambito di negozio e fornitore prima di dichiarare errati i duplicati. Un prodotto sotto il costo base registrato può riflettere costi obsoleti, una liquidazione intenzionale o una mappatura errata. Verifica comparabilità di imposte/valute, impatti delle combinazioni e sconti effettivi prima di decidere cosa cambiare.

Mantieni una traccia attribuibile delle scritture sulle scorte e uno snapshot recuperabile. Se un feed errato raggiunge i clienti, sospendi l'ulteriore propagazione, identifica offerte e ordini interessati e valuta gli obblighi contrattuali e verso i consumatori effettivi. Non esiste una regola finanziaria universale secondo cui annullare tutti gli ordini o evaderli tutti sia sempre più economico.

Caricamento...
Torna su