Τα 10 πιο συχνά λάθη στο Skroutz XML feed (και πώς διορθώνονται)
6' ανάγνωση
Έχουμε περάσει από διάγνωση πραγματικά feeds ελληνικών e-shops και τα ίδια λάθη επιστρέφουν ξανά και ξανά — από WooCommerce plugins μέχρι custom λύσεις. Εδώ είναι τα 10 πιο συχνά, ταξινομημένα από «σπάει όλο το feed» μέχρι «σου κοστίζει ποιότητα», με τη διόρθωση για το καθένα.
Πώς «διαβάζει» το Skroutz το feed σου
Ο crawler του Skroutz κατεβάζει το XML σου σε τακτά διαστήματα και το ελέγχει σε δύο επίπεδα: πρώτα τη δομή (είναι έγκυρο XML; διαβάζεται το encoding;) και μετά το περιεχόμενο κάθε προϊόντος (υπάρχουν τα υποχρεωτικά πεδία; είναι στις αποδεκτές μορφές;).
Αυτό σημαίνει ότι ένα λάθος δομής ρίχνει ΟΛΟΚΛΗΡΟ το feed — κανένα προϊόν δεν περνάει — ενώ ένα λάθος περιεχομένου απορρίπτει μεμονωμένα προϊόντα. Γι' αυτό η ίδια λέξη «απορρίφθηκε» μπορεί να σημαίνει από «χάθηκαν 3 προϊόντα» μέχρι «εξαφανίστηκε το κατάστημα».
Λάθη δομής: αυτά που ρίχνουν όλο το feed
1. Άκυρο XML (INVALID_XML). Ένα tag που δεν κλείνει, ένας ειδικός χαρακτήρας χωρίς escape (&), ένα κομμένο αρχείο από timeout του server. Το πιο ύπουλο: το feed δούλευε χθες και σήμερα ένας τίτλος προϊόντος με «&» το έσπασε.
2. Λάθος encoding (BAD_ENCODING). Το αρχείο δηλώνει UTF-8 αλλά τα bytes είναι windows-1253 (ή το αντίστροφο) — κλασικό σε παλιά OpenCart και custom scripts. Τα ελληνικά γίνονται αλαμπουρνέζικα ή ο parser σταματά.
3. HTML μέσα στα πεδία (HTML_IN_FIELD). Περιγραφές με <b>, <br>, <div> από τον editor του e-shop. Το spec το απαγορεύει ρητά σε κάθε πεδίο.
Λάθη περιεχομένου: αυτά που κόβουν προϊόντα
4. Λείπουν MPN/EAN (MISSING_MPN, MISSING_EAN). Το Skroutz τα χρειάζεται για να ομαδοποιήσει το προϊόν σου με τα ίδια προϊόντα άλλων καταστημάτων. Προσοχή: ΔΕΝ εφευρίσκουμε ποτέ κωδικούς — ψεύτικα EANs οδηγούν σε αποκλεισμό.
5. Ελλιπές category path (BAD_CATEGORY_PATH). «Δίσκοι» αντί για «Ηλεκτρονικά > Hardware > Δίσκοι». Χωρίς πλήρες μονοπάτι, το Skroutz δεν ξέρει πού να κατατάξει το προϊόν.
6. Availability εκτός λίστας (BAD_AVAILABILITY). Το spec δέχεται ΜΟΝΟ συγκεκριμένα strings («Άμεσα διαθέσιμο», «Διαθέσιμο από 1 έως 3 ημέρες»…). Το «Σε στοκ» ή το «In Stock» απορρίπτεται — και είναι το πιο συχνό λάθος που βλέπουμε σε πραγματικά feeds.
7. Διπλότυπα IDs (DUPLICATE_ID). Το ίδιο uniqueID σε δύο προϊόντα — συνήθως από variations που εξάγονται λάθος. Το ID πρέπει να μένει σταθερό και μοναδικό.
Δες τι από τα 10 έχει το δικό σου feed
Δωρεάν διάγνωση σε 1 λεπτό — επικόλλησε το feed URL σου και πάρε πλήρη αναφορά.
Δωρεάν διάγνωση feed — χωρίς κάρταΛάθη εικόνων και συνδέσμων
8. Εικόνες σε http:// (IMAGE_NOT_HTTPS) ή σπασμένα/λάθος format URLs (BAD_IMAGE_URL — π.χ. AVIF που δεν υποστηρίζεται). Οι εικόνες απορρίπτονται συχνότερα απ' όσο νομίζεις, και προϊόν χωρίς εικόνα δεν ανεβαίνει.
9. Λάθος τιμές (MISSING_PRICE, INVALID_PRICE). Τιμή 0, αρνητική, με τρία δεκαδικά ή χωρίς ΦΠΑ. Η τιμή στο feed πρέπει να συμφωνεί με το storefront — αλλιώς έρχονται καταγγελίες χρηστών.
10. Μπαγιάτικο feed (STALE_TIMESTAMP). Το created_at δείχνει μέρες ή μήνες πίσω γιατί το cron που παράγει το XML σταμάτησε σιωπηλά. Έχουμε δει production feed με ημερομηνία 3 χρόνια πίσω — και ο ιδιοκτήτης δεν το ήξερε.
Πώς να τα εντοπίσεις όλα σε 1 λεπτό
Μπορείς να ελέγξεις καθένα από τα παραπάνω με το χέρι — ή να επικολλήσεις το feed URL σου στη δωρεάν διάγνωση του FeedClinic και να πάρεις σε ~1 λεπτό πλήρη αναφορά: κάθε λάθος, σε ποια προϊόντα, πόσο σοβαρό, και ποια διορθώνονται αυτόματα. Χωρίς εγγραφή, χωρίς κάρτα, χωρίς όριο.
Checklist πριν την επανυποβολή
Πριν ξαναϋποβάλεις το feed, τσέκαρε:
- ✓Το XML ανοίγει καθαρά σε browser (χωρίς parse error)
- ✓Encoding δηλωμένο και σωστό (UTF-8 ή windows-1253 — όχι μείγμα)
- ✓Καθόλου HTML tags μέσα σε πεδία
- ✓MPN ή EAN σε κάθε προϊόν — πραγματικά, όχι επινοημένα
- ✓Πλήρη category paths με «>»
- ✓Availability ΜΟΝΟ από την επίσημη λίστα
- ✓Μοναδικά uniqueIDs
- ✓Όλες οι εικόνες σε https:// και έγκυρο format
- ✓Τιμές με ΦΠΑ, ίδιες με το site
- ✓created_at φρέσκο — και το cron σου να δουλεύει
Δες τι από τα 10 έχει το δικό σου feed
Δωρεάν διάγνωση σε 1 λεπτό — επικόλλησε το feed URL σου και πάρε πλήρη αναφορά.
Δωρεάν διάγνωση feed — χωρίς κάρτα