FeedMender

FeedMender/Cosa controlliamo

Copertura

Cosa si può controllare in un file di feed

I controlli distinti sono 225. Questa pagina li raggruppa come fa il report dell'analisi e spiega il ragionamento dietro quelli che contano di più. Se vuoi l'elenco grezzo, con ogni codice, l'attributo che legge e la sua gravità, è l'elenco completo dei controlli.

Google pubblica diverse centinaia di pagine di requisiti sui dati di prodotto. Un file non può dimostrarli tutti, e noi non fingiamo il contrario. Quello che segue è la parte che si può stabilire dal file stesso, più le due aree che richiedono una richiesta di rete: le immagini e le regole robots. Cosa un file non può dire è una pagina a parte, di proposito.

Riusciamo anzitutto a leggere il file

Questo passaggio viene eseguito prima di guardare qualsiasi valore, perché un controllo sui valori di un file letto male è peggio di nessun controllo: è una risposta sicura sui dati sbagliati. Il delimitatore viene scelto in base a quale produce un numero di campi coerente, non a quale compare più spesso. Le codifiche diverse da UTF-8 vengono lette e transcodificate. Un byte order mark viene rimosso prima che qualsiasi passaggio successivo lo veda. L'XML viene verificato per la buona formazione, per il namespace Google e per la presenza di elementi item.

Quando un file è ambiguo in un modo che sposterebbe dati tra le colonne, l'analisi si ferma invece di tirare a indovinare. Con il delimitatore sbagliato i prezzi finiscono nel campo della disponibilità e ogni risultato successivo è finzione. Quando invece alcune righe vengono semplicemente scartate, il conteggio lo dice in numeri chiari: un report su 48 prodotti su 50 che si presenta come completo è l'unico errore che un cliente non può scoprire, quindi è l'unico che ci rifiutiamo di produrre.

Prezzi e valuta

Separatori decimali con la virgola, un codice valuta mancante e separatori delle migliaia e dei decimali mescolati vengono tutti rilevati. Il caso davvero ambiguo viene dichiarato apertamente invece di essere indovinato: 1.234 è 1234 nella notazione continentale e 1,234 in quella inglese, e nulla nel file stabilisce quale delle due. Lo rifiutiamo piuttosto che riprezzare un prodotto di un fattore mille.

Oltre al formato, l'analisi legge le relazioni tra i campi di prezzo: un sale_price in una valuta diversa da price, una finestra di sconto senza prezzo scontato al suo interno, un prezzo per soci o fedeltà messo nel campo del prezzo ordinario, e misure di prezzo unitario prese da una famiglia diversa dalla misura di base, chilogrammi contro litri. Un prezzo di zero viene segnalato solo fuori dai casi in cui Google lo consente davvero, come un dispositivo mobile venduto con un contratto. Il ragionamento completo è nella pagina su prezzo e valuta.

Identificatori di prodotto

Ogni GTIN viene verificato con la cifra di controllo GS1 mod-10, e quelli riparabili, un ISBN-10 in ISBN-13, un UPC-E in UPC-A, vengono riparati. I controlli che quasi nessun altro fa sono i prefissi riservati: un codice a barre con una cifra di controllo corretta che Google rifiuta comunque perché inizia con 2, 02 o 04, o perché è un prefisso coupon letto sulla forma a 13 cifre riempita di zeri. La distinzione conta: un UPC-A a 12 cifre che inizia con 98 si normalizza in 098, un prefisso aziendale perfettamente legittimo, quindi la stringa grezza è la cosa sbagliata da testare.

La notazione scientifica di Excel (8,71234E+12) viene rilevata, un brand mancante viene distinto da un MPN mancante perché rispondono a regole diverse, e un identifier_exists: no che contraddice un GTIN o una coppia brand e MPN forniti viene segnalato. La pagina sugli identificatori spiega perché un codice a barre dall'aspetto valido viene rifiutato.

Titoli e descrizioni

Il testo promozionale che porta alla mancata approvazione di un prodotto, la spedizione gratuita, la parola SALE, una percentuale, un prezzo nel titolo, viene segnalato. Oltre 150 caratteri vengono riportati come avviso e non come mancata approvazione, perché Google tronca e pubblica il prodotto con il titolo tagliato, che è un costo diverso e più silenzioso. Il maiuscolo urlato viene riportato al minuscolo senza appiattire i veri acronimi come USB, LED o XL. Le descrizioni vengono controllate per l'HTML, per il limite di 5.000 caratteri e per l'essere troppo scarne perché Google capisca cosa sia davvero il prodotto.

Scorte, date e disponibilità

Le formulazioni di magazzino in olandese, francese e tedesco vengono ricondotte ai quattro valori che Google accetta, e limited_availability, che nei feed su file non esiste più, viene ritirato. La disponibilità viene derivata da una colonna di quantità a magazzino quando il campo di stato è vuoto. Ogni campo data è tenuto allo standard ISO 8601, un expiration_date a più di 30 giorni di distanza viene rilevato (la confusione tra 30 e 365 giorni), e un sale_price_effective_date che non è composto esattamente da due date, o la cui fine cade prima dell'inizio, viene segnalato.

Le contraddizioni di magazzino, in_stock con una quantità pari a zero, vengono segnalate ma non riparate. Quale campo abbia ragione dipende da chi fa fede, il negozio o il magazzino, e un file non può dirlo. Indovinare nasconderebbe scorte che il commerciante ha oppure pubblicizzerebbe scorte che non ha.

Varianti e attributi

Codici esadecimali e numeri in un campo colore vengono rilevati; i colori attaccati insieme, ZwartWitGrijs, vengono separati, ma solo quando ogni segmento è un colore riconosciuto, quindi MidnightBlue resta un colore solo. Una quantità di confezione nel campo taglia (6-pack) viene segnalata, gli elenchi chiusi di valori per size_system, size_type, gender e age_group vengono applicati, e le varianti di abbigliamento che differiscono solo per taglia o colore senza un item_group_id condiviso vengono segnalate, così ogni taglia smette di competere contro le proprie varianti sorelle. Una dichiarazione sulla condizione viene presa in considerazione solo quando il testo del commerciante la afferma senza negazione: "geen tweedehands" significa il contrario e non conta.

Immagini, video e robots.txt

L'immagine principale di ogni prodotto viene davvero scaricata, sedici alla volta. Un foglio di calcolo non ti mostrerà mai che 212 immagini su 3.400 restituiscono un 404, ed è quello il risultato a cui i commercianti reagiscono. Ogni immagine viene controllata per la risposta, per le dimensioni in pixel sia rispetto al minimo attuale sia rispetto ai 500x500 che diventano obbligatori il 2027-01-31, per il formato reale rispetto all'estensione che dichiara, e per i tetti di megapixel e byte. I link video vengono validati nella forma, compreso l'errore comune di puntare a una pagina con un player invece che al file video vero e proprio.

Poi viene letto il robots.txt, una richiesta per dominio, con tre user agent controllati separatamente: Googlebot, Googlebot-image e AdsBot-Google. Si tratta di un campione, non di una copertura esaustiva: al massimo tre domini e cinque percorsi di pagine di destinazione per dominio. Il motivo per cui i tre vengono controllati separatamente è che AdsBot-Google ignora il gruppo con carattere jolly, il che produce la mancata approvazione più disorientante che esista.

Spedizione, resi e conformità UE

Questa è la parte che gli strumenti costruiti per il mercato statunitense tendono a tralasciare. Spedizione e resi sono attributi compositi i cui sotto-attributi vivono nell'intestazione di colonna e i cui valori sono posizionali, ed entrambi vengono validati contro la sintassi che Google documenta davvero. Un solo prezzo di spedizione a livello di articolo può disattivare le impostazioni di spedizione dell'account per quella località, quindi l'analisi solleva una nota a livello di file ogni volta che ne compare uno. I valori dei resi sono maiuscoli e a elenco chiuso, e un valore giusto scritto con le maiuscole sbagliate viene segnalato indicando come causa proprio le maiuscole.

Sul versante UE: prezzi unitari dove è probabile che si applichi la direttiva sull'indicazione dei prezzi, la forma della certificazione EPREL, e energy_efficiency_class limitato a CH, NO e GB da aprile 2025. In tutto sono supportati 15 attributi compositi, con validazione dei contenuti su 11 di essi e 57 limiti rigidi di caratteri e valori dichiarati a partire dalle costanti anziché digitati a mano.

Ognuno di questi è una riga nell'elenco completo dei controlli, e il numero in cima a quella pagina viene letto dal codice al momento della build. Per vedere quali di questi fa scattare il tuo file, esegui un'analisi.