Correggere gli errori del flusso Google Merchant: prodotti non approvati e come risolverli
Hai configurato Google Merchant Center, caricato il flusso PrestaShop e ora metà catalogo risulta segnalata. Triangoli rossi nella scheda Prodotti, un avviso "Account sospeso" che la settimana scorsa non c'era, e articoli che dovrebbero essere visibili in Shopping mostrati invece come Non approvati. La parte più frustrante è che le non approvazioni raramente raccontano tutta la storia in modo chiaro: Google indica un sintomo ("Valore non corrispondente: prezzo") e lascia a te il compito di capire quale impostazione di PrestaShop lo ha causato davvero.
Ultimo aggiornamento: giugno 2026.
Questa guida riguarda in modo specifico la diagnosi e la risoluzione delle non approvazioni: leggere l'errore, risalire all'esatta impostazione di PrestaShop o all'attributo del flusso che lo ha generato, e correggerlo in modo che il prodotto venga riapprovato. È il complemento pratico al lavoro più ampio sul flusso: se i tuoi prodotti sono già approvati e vuoi migliorarne le prestazioni (titoli, tassonomia, etichette personalizzate), quello è un altro lavoro, trattato nella nostra guida all'ottimizzazione del flusso Merchant Center. Qui restiamo strettamente su questo: è rosso, perché, e come farlo tornare verde.
Per prima cosa, leggi correttamente la non approvazione
Prima di toccare una sola impostazione, separa due cose che Merchant Center tende volutamente a sovrapporre. Un problema a livello di articolo blocca un prodotto o pochi articoli: correggi i dati e viene riapprovato al successivo recupero del flusso. Un problema a livello di account (dichiarazioni ingannevoli, norme, account sospeso) può mettere offline tutti i prodotti in una volta e richiede una risposta diversa. Il modo più rapido per distinguerli è la vista Diagnostica, non l'icona rossa del singolo prodotto.
Nell'attuale Merchant Center, apri Prodotti → Diagnostica (oppure Richiede attenzione in Merchant Center Next). Raggruppa le non approvazioni per problema e ti indica, per ciascuno, se è a livello di Account, Articolo o Flusso, quanti prodotti sono coinvolti, articoli di esempio e, quando Google la fornisce, la scadenza prima che il problema inizi a costarti visibilità. Lavora quell'elenco dall'alto verso il basso in base al numero di prodotti coinvolti: una correzione a livello di flusso spesso sblocca decine di articoli insieme, mentre inseguire i singoli prodotti diventa un gioco infinito. Che cosa ottieni in concreto? Investi il tempo di correzione sull'unica impostazione che riapprova quaranta prodotti invece di modificarne quaranta a mano.
Prezzo non coerente: la non approvazione PrestaShop più comune
Errore: "Valore non corrispondente (scansione della pagina): prezzo [price]" o "Articolo non approvato per violazione delle norme: prezzo non corrispondente."
Google esegue la scansione della pagina prodotto pubblica e confronta il prezzo visibile con quello presente nel tuo flusso. Se differiscono oltre una tolleranza minima, l'articolo non viene approvato perché l'acquirente vedrebbe un importo diverso da quello promesso dall'annuncio. In PrestaShop la causa quasi sempre rientra in uno di quattro casi, e ciascuno richiede una correzione diversa: identifica quindi il caso giusto prima di modificare qualsiasi cosa.
| Sintomo | Causa principale in PrestaShop | Dove correggerla |
|---|---|---|
| Il prezzo nel flusso è IVA esclusa, la pagina mostra IVA inclusa (o viceversa) | Il flusso esporta il prezzo tasse escluse; il front office mostra il prezzo tasse incluse (la configurazione B2C più comune) | Fai esportare al flusso i prezzi tax-incl per allinearli alla pagina. Nei termini nativi di PrestaShop significa Product::getPriceStatic($id, true, ...) con il flag delle imposte attivo; in un modulo per flussi è l'opzione "include tax". |
| La pagina mostra il prezzo scontato, il flusso il prezzo pieno | Il flusso invia solo price e ignora i Prezzi specifici di PrestaShop (il motore degli sconti dietro le regole prezzo catalogo) | Invia entrambi: price = il prezzo normale, sale_price = il prezzo scontato che Google deve confrontare con la pagina scansionata. |
| La valuta differisce tra flusso e scansione | Multinegozio/multivaluta: Google scansiona da un'area geografica che risolve una valuta del negozio diversa da quella dichiarata nel flusso | Associa ogni flusso Merchant Center a un solo paese + valuta; in PrestaShop verifica che negozio/valuta in Internazionale → Localizzazione → Valute si risolvano in modo coerente. |
| Il prezzo della pagina è cambiato, il flusso no | Flusso non aggiornato: un XML/CSV statico generato ore o giorni prima | Rigeneralo almeno una volta al giorno (cron), oppure passa a un flusso che legge i prezzi in tempo reale. Vedi "Flusso non aggiornato" più sotto. |
Un modo rapido per confermare che il problema è l'IVA: apri il prodotto non approvato in una finestra in incognito, annota il prezzo visualizzato, poi apri il file del flusso e cerca il <g:price> di quel prodotto. Se il rapporto tra i due valori corrisponde alla tua aliquota IVA (1,19, 1,21, 1,23...), hai una discordanza nella modalità fiscale, non un problema di dati non aggiornati; cambiando la modalità IVA del flusso sistemi l'intero gruppo.
Come riferimento, ecco come dovrebbe apparire un articolo scontato in un flusso XML: invia il prezzo normale come g:price (IVA inclusa, per corrispondere alla pagina B2C scansionata da Google) e il prezzo scontato come g:sale_price, entrambi nella valuta visualizzata dalla pagina; mai solo il prezzo pieno mentre la pagina mostra quello in offerta.
<item>
<g:id>1234</g:id>
<g:price>49.99 EUR</g:price>
<g:sale_price>39.99 EUR</g:sale_price>
<g:availability>in_stock</g:availability>
<g:brand>Acme</g:brand>
<g:gtin>4006381333931</g:gtin>
</item>
E per un prodotto che legittimamente non ha un codice a barre, perché artigianale, personalizzato o a tuo marchio privato, indica a Google di non aspettarsi un GTIN invece di inventarne uno, cosa che genererebbe "Identificativo non corretto":
<item>
<g:id>5678</g:id>
<g:brand>Your Label</g:brand>
<g:identifier_exists>false</g:identifier_exists>
</item>
Flusso non aggiornato: la causa dietro metà delle non approvazioni "casuali"
Errore: incoerenze intermittenti di prezzo o disponibilità che "si risolvono da sole" e poi tornano.
Se il tuo flusso è un file generato una volta e caricato, è una fotografia del catalogo in quel momento. Ogni modifica di prezzo, variazione delle scorte o promozione successiva allontana il flusso dalle pagine pubbliche scansionate da Google, e le non approvazioni che seguono sembrano casuali perché seguono la tua attività di modifica, non una singola impostazione rotta. La soluzione è fare in modo che il flusso venga rigenerato secondo una pianificazione.
In PrestaShop il modo pulito è un'attività cron che richiama il controller del flusso (o l'URL "generate" del tuo modulo per flussi) a intervalli regolari. Il modulo ufficiale Cron tasks di PrestaShop (il modulo cronjobs, gratuito su PrestaShop Addons e gestito da Moduli) può chiamare l'URL ogni giorno; se il tuo hosting offre un vero cron di sistema, puntalo allo stesso URL. Allinea la frequenza a quanto spesso cambi i prezzi: una volta al giorno è il minimo, ogni ora se fai spesso vendite lampo. E quindi? Prezzi e disponibilità nel flusso rispecchiano sempre la pagina che Google sta per scansionare, chiudendo del tutto il ciclo più comune di mancate approvazioni ricorrenti. (Per l'architettura più ampia di generazione del flusso, cioè metodo di esportazione e prestazioni su cataloghi grandi, rimandiamo alla guida all'ottimizzazione del flusso.)
Disponibilità non coerente
Errore: "Valore non corrispondente (scansione della pagina): disponibilità" o "Prodotto non disponibile."
Google ha letto in stock nel tuo flusso, ma la pagina pubblica indicava esaurito, o viceversa. In PrestaShop dipende quasi sempre dall'interazione tra la quantità disponibile di un prodotto e il suo comportamento "Quando esaurito" (impostato per singolo prodotto nella scheda Scorte, con il valore globale predefinito in Parametri negozio → Impostazioni prodotto). Se un prodotto è a quantità zero ma impostato su "Consenti ordini", la pagina lo vende comunque: il tuo flusso dovrebbe quindi riportare in stock, non out of stock. Assicurati che il flusso legga sia la quantità sia la politica per l'esaurito, non solo la quantità, altrimenti i prodotti ordinabili anche se esauriti verranno indicati erroneamente come non disponibili.
Violazioni relative alle immagini
Errore: "Immagine troppo piccola", "Overlay promozionale sull'immagine" o "Immagine non scansionabile."
- Immagine troppo piccola. Il minimo è 100×100 px (250×250 per l'abbigliamento), e 800×800+ è una raccomandazione pratica di qualità che vale la pena rispettare. PrestaShop genera molte copie ridimensionate di ogni immagine (i tipi immagine con nome in Design → Impostazioni immagini:
home_default,large_default,cart_defaulte simili). Il tuo flusso deve puntare all'URL del tipo grande, non a una miniatura: un flusso che punta ahome_defaultfarà scattare "troppo piccola" su ogni prodotto. - Overlay promozionale. Qualsiasi testo, badge, filigrana o logo incorporato nell'immagine, come "SALDI", "-30%", "SPEDIZIONE GRATUITA", causa una non approvazione. Se hai inserito elementi promozionali direttamente nelle foto prodotto, la causa è quella: l'immagine del prodotto deve mostrare solo il prodotto su uno sfondo pulito.
- Non scansionabile. Googlebot non riesce a recuperare l'URL. Controlla tre cose, in quest'ordine:
robots.txtnon deve bloccare/img/, eventuali protezioni anti-hotlink o regole WAF non devono bloccare lo user-agent del crawler immagini di Google, e l'URL dell'immagine non deve restituire 404. Incolla l'URL esatto di<g:image_link>in una finestra in incognito: se non riesci a caricarlo da utente non autenticato, non ci riuscirà neanche Google.
Identificativi mancanti (GTIN / MPN / marca)
Errore: "Valore mancante: GTIN", "Identificativo non corretto" o "Rendimento limitato a causa di identificativi mancanti."
Google abbina i tuoi prodotti al proprio catalogo tramite identificativi. Per la maggior parte dei prodotti di marca e industriali vuole marca + GTIN (il codice a barre EAN/UPC). Il campo codice a barre di PrestaShop, etichettato GTIN (codice EAN, JAN, ITF o UPC/UCC) nel blocco Riferimenti della scheda Dettagli del prodotto (le combinazioni hanno un proprio codice a barre, aspetto importante se vendi varianti), corrisponde direttamente all'attributo gtin di Google. L'attributo Marca deriva dal Produttore assegnato al prodotto in PrestaShop.
- Prodotti di marca con codici a barre: compila in PrestaShop il campo del codice a barre GTIN/EAN-13 e assegna un Produttore. È anche la singola modifica con il maggiore impatto sulla visibilità: i prodotti con GTIN validi vengono abbinati a più ricerche.
- Prodotti che legittimamente non hanno un codice a barre (artigianali, personalizzati, a tuo marchio privato): imposta
identifier_exists = falsenel flusso, così Google smette di aspettarsi un GTIN. Non inventare un codice a barre: un GTIN sbagliato è peggio di nessun GTIN e genera "Identificativo non corretto." - "Identificativo non corretto": di solito è un codice a barre malformato o con cifra di controllo non valida digitato da qualcuno nel campo. Convalida l'EAN-13/GTIN invece di andare a tentativi.
Spedizione non configurata per il paese di destinazione
Errore: "Informazioni sulla spedizione mancanti" o "Nessun costo di spedizione per [paese]."
Google ha bisogno di un costo di spedizione da mostrare prima del pagamento. Puoi fornirlo per singolo prodotto tramite l'attributo shipping del flusso, ma per un negozio PrestaShop la strada più pulita è a livello di account: impostarlo una volta in Merchant Center in Spedizione e resi, allineandolo alle tariffe dei corrieri PrestaShop (Spedizione → Corrieri). Due insidie specifiche di PrestaShop:
- La spedizione gratuita non significa "nessuna spedizione". Se offri la consegna gratuita, configura esplicitamente un servizio di spedizione a costo 0. Un campo spedizione vuoto viene letto da Google come "spedizione non disponibile" e porta alla non approvazione dell'articolo.
- Ogni paese di destinazione richiede una tariffa. Se punti a Germania e Francia ma la spedizione in Merchant Center copre solo la Francia, i prodotti tedeschi non verranno approvati. È lo stesso principio delle zone corriere di PrestaShop: se un corriere non serve una zona in cui fai pubblicità, Google vede il vuoto.
Norme e dichiarazioni ingannevoli: le minacce a livello di account
Errore: "Violazione delle norme", "Dichiarazioni ingannevoli" o il temuto "Account sospeso."
Questi sono i casi più seri perché possono bloccare l'intero account, non un singolo prodotto. Raramente dipendono da un attributo del flusso: riguardano i segnali di affidabilità del tuo negozio, che Google verifica sul sito pubblico. La checklist specifica per PrestaShop:
- Politica di reso/rimborso visibile e completa. Creala come pagina CMS (Design → Pagine) e collegala dal piè di pagina. Una politica nascosta o mancante è una causa frequente di sospensione.
- Recapiti raggiungibili. Il tuo negozio deve mostrare un modo reale per contattarti. Il controller Contatto di PrestaShop e un indirizzo/telefono compilati in Parametri negozio → Contatto coprono questo punto: non lasciare i dati demo.
- HTTPS ovunque, nessun contenuto misto. Attiva Parametri negozio → Generale → Abilita SSL in modo che HTTPS sia imposto su tutto il sito. Un pagamento in HTTPS che carica un'immagine
http://conta come contenuto misto e può essere interpretato come non sicuro. - Titoli coerenti con ciò che vendi davvero. "Custodia Samsung Galaxy S24" è corretto; "Samsung Galaxy S24" per una custodia di terze parti è una dichiarazione ingannevole. Se i titoli PrestaShop iniziano con un marchio che non produci, correggi il nome del prodotto, non il flusso.
Se il tuo account è sospeso per dichiarazioni ingannevoli, correggi ogni punto sopra prima di richiedere la revisione: Google di solito concede un numero limitato di nuove revisioni, quindi una correzione parziale che non supera il controllo brucia una delle tue possibilità.
Un ciclo di correzione e verifica che svuota davvero la coda
Le non approvazioni non spariscono nell'istante in cui salvi un'impostazione. Segui il ciclo con metodo:
- Correggi alla fonte, non in Merchant Center. Modifica l'impostazione PrestaShop o la logica del flusso, così la prossima rigenerazione sarà corretta: correggere a mano un solo prodotto in Merchant Center verrà sovrascritto al recupero successivo del flusso.
- Rigenera il flusso in modo che i dati corretti siano davvero nel file letto da Google. (È esattamente il motivo per cui il cron giornaliero sopra è importante: senza di esso la tua correzione resta in PrestaShop ma non arriva mai a Google.)
- Recupera di nuovo e attendi la scansione. La riapprovazione dell'articolo segue la successiva elaborazione del flusso e scansione della pagina, non il tuo clic su Salva. La maggior parte si risolve entro uno o due giorni; nel frattempo evita modifiche dettate dal panico.
- Ricontrolla Diagnostica, partendo dal problema principale. Conferma che il numero di prodotti coinvolti sia sceso prima di passare al problema successivo.
Mantenerli verdi: monitoraggio

Una volta svuotata la coda, il lavoro diventa prevenzione. Controlla Diagnostica ogni settimana, affronta le nuove non approvazioni entro uno o due giorni (non approvazioni prolungate possono trascinare lo stato dell'account verso un avviso) e mantieni il flusso rigenerato secondo pianificazione, così prezzi e disponibilità non si disallineano mai. La maggior parte delle ondate "improvvise" di non approvazioni è un flusso non aggiornato che recupera un gruppo di modifiche prezzo: un cron affidabile elimina in silenzio tutta quella categoria di problemi.
Lo schema dietro ogni errore sopra è lo stesso: una non approvazione è Google che ti dice che il flusso e la pagina pubblica non concordano su qualcosa: prezzo, disponibilità, immagine, identificativo, norma. Correggi la discordanza alla fonte in PrestaShop, rigenera, e il rosso sparisce. Quando i prodotti sono approvati in modo affidabile, la leva successiva è farli competere: titoli più efficaci, tassonomia corretta, etichette personalizzate per le offerte. Questo è il territorio della guida all'ottimizzazione del flusso. E se stai tornando alla strategia per rendere redditizie le campagne Shopping, parti da Google Merchant per il successo PPC di PrestaShop e non investirci budget prima di leggere come scegliere il budget Google Ads giusto: un flusso pulito rende solo se la spesa dietro è dimensionata correttamente.
FAQ sulle non approvazioni del flusso Merchant
Come distinguo un problema a livello di articolo da uno a livello di account? Usa Prodotti → Diagnostica (oppure "Richiede attenzione" in Merchant Center Next), non l'icona rossa del singolo prodotto. Raggruppa le non approvazioni per problema e contrassegna ciascuna come livello Account, Articolo o Flusso, con il conteggio dei prodotti interessati. Un problema di articolo blocca pochi prodotti e si risolve al successivo recupero del flusso; un problema di account (dichiarazioni ingannevoli, norme, sospensione) può mettere tutto offline in una volta e richiede una risposta diversa.
Perché "prezzo non corrispondente" è la non approvazione PrestaShop più comune? Google scansiona la pagina pubblica e confronta il prezzo visibile con quello del flusso. La causa abituale è una discordanza nella modalità fiscale: il flusso esporta prezzi IVA esclusa mentre il front office B2C mostra prezzi IVA inclusa. Controllo rapido: apri il prodotto in incognito, trova il suo g:price nel flusso; se il rapporto corrisponde alla tua aliquota IVA (1,19, 1,21, 1,23...), passa il flusso a IVA inclusa e l'intero gruppo si sblocca.
Le mie non approvazioni appaiono e scompaiono "a caso": perché? Quasi sempre per un flusso non aggiornato. Un file generato una sola volta è una fotografia del catalogo in quel momento; ogni modifica successiva a prezzi o disponibilità lo disallinea dalle pagine scansionate da Google, quindi le non approvazioni seguono le tue modifiche, non una singola impostazione rotta. Rigenera secondo pianificazione, almeno ogni giorno o ogni ora se fai vendite lampo, tramite il modulo Cron tasks di PrestaShop o un vero cron di sistema.
Le immagini dei miei prodotti non sono state approvate: che cosa non va? Tre cause comuni: il flusso punta a una miniatura (home_default) invece che al tipo immagine grande, quindi scatta "troppo piccola"; un badge promozionale ("SALDI", "-30%") è incorporato nella foto, cosa non consentita; oppure l'URL non è scansionabile (robots.txt blocca /img/, un WAF blocca il crawler di Google o c'è un 404). Incolla l'esatto g:image_link in una finestra in incognito: se non riesci a caricarlo da utente non autenticato, non ci riuscirà neanche Google.
Quanto tempo richiede la riapprovazione dopo una correzione? Non è immediata. Correggi alla fonte in PrestaShop (modificare a mano un prodotto in Merchant Center viene sovrascritto al recupero successivo), rigenera il flusso in modo che i dati corretti siano nel file letto da Google, poi attendi la successiva elaborazione e scansione: la maggior parte si risolve entro uno o due giorni. Ricontrolla Diagnostica partendo dal problema principale e conferma che il conteggio dei prodotti interessati sia sceso prima di andare avanti.
Letture correlate
- Smart Google Merchant feed manager — genera un flusso che legge prezzi e disponibilità in tempo reale, chiudendo il ciclo delle non approvazioni causate da flussi non aggiornati.
- Guida all'ottimizzazione del flusso Merchant Center — una volta approvati i prodotti, come farli competere su titoli, tassonomia ed etichette.
- Scegliere il budget Google Ads giusto — un flusso pulito rende solo se la spesa è dimensionata correttamente.
Commenti
Ancora nessun commento. Sii il primo!
Sii il primo a fare una domanda o a condividere un feedback utile.
Lascia un commento
Condividi una domanda, un dettaglio di installazione o un feedback utile per un altro lettore.