Προδιαγραφές XML feed για BestPrice: πεδία & διαφορές
5' ανάγνωση
Αν το e-shop σου βγάζει ήδη feed για τη μορφή Skroutz, τα περισσότερα τα έχεις. Η μορφή BestPrice όμως έχει δικές της ιδιαιτερότητες — διαφορετικά availability strings, ένα επιπλέον πεδίο instock, καθόλου πεδίο ΦΠΑ. Εδώ είναι όλη η εικόνα, μαζί με το τι σπάει όταν κάτι λείπει.
Η δομή του αρχείου
Το root element είναι ελεύθερο (συνηθισμένα: <webstore> ή <store>) και μέσα του: το <date> — το timestamp δημιουργίας (YYYY-MM-DD HH:MM) — και το <products> με τα <product> elements. Προσοχή: εδώ το timestamp λέγεται date, όχι created_at όπως στη μορφή Skroutz — οι σωστοί parsers δέχονται και τα δύο. Αν λείπει → λείπει ημερομηνία δημιουργίας· αν είναι παλιό → μπαγιάτικο feed.
Ισχύουν τα βασικά: έγκυρο XML (αλλιώς τίποτα δεν διαβάζεται) και σωστό encoding (αλλιώς αλλοιωμένα ελληνικά).
Τα πεδία προϊόντος (με τα tags που βλέπεις στην πράξη)
Για κάθε πεδίο: τα συνηθισμένα tags και τι σπάει όταν λείπει ή είναι λάθος:
- ID (productId) → Λείπει ID · Διπλότυπο
- Τίτλος (title, name) → Λείπει όνομα
- Link (productURL, link) → Λείπει link · Χωρίς HTTPS
- Εικόνα (imagesURL, image) → Λείπει εικόνα · Χωρίς HTTPS
- Κατηγορία (category_path, categoryPath) → Λείπει · Ελλιπές μονοπάτι
- Τιμή (price, με ΦΠΑ) → Λείπει · Άκυρη
- Διαθεσιμότητα (availability + instock Y/N) → Λείπει · Εκτός λίστας · Άκυρο instock
- Brand (brand, manufacturer) → Λείπει brand
- MPN (mpn) → Λείπει MPN
- Barcode (barcode, ean) → Άκυρο EAN · Λάθος check digit
- Απόθεμα (stock, quantity) → Λείπει · Άκυρο
- Περιγραφή (description) → HTML σε πεδίο · Φτωχή περιγραφή
Μια πρακτική παγίδα από πραγματικά ελληνικά feeds
Η τιμή με ελληνικό κόμμα («47,90») είναι πολύ συχνή στα BestPrice feeds — βεβαιώσου ότι το plugin σου τη βγάζει σε μορφή που διαβάζεται, και χωρίς σύμβολο νομίσματος μέσα στο πεδίο.
Έλεγξε το feed σου με το ruleset του BestPrice
Δωρεάν διάγνωση με επιλογή καναλιού — δες σε 1 λεπτό τι θέλει διόρθωση για τη μορφή BestPrice, χωρίς ψευδο-λάθη του άλλου spec.
Δωρεάν διάγνωση feed — χωρίς κάρταAvailability: τα 4 tiers της μορφής BestPrice
Σύγκρινε με τη μορφή Skroutz: εκεί το αντίστοιχο πρώτο tier είναι «Άμεσα διαθέσιμο» και τα εύρη ημερών διαφέρουν (1–3 / 4–6 / 7–12). Δεν μπορείς να στείλεις το ίδιο availability string και στα δύο κανάλια — αυτός είναι και ο πιο συχνός λόγος που ένα «έτοιμο» feed θέλει δουλειά ανά κανάλι. Το FeedClinic κανονικοποιεί αυτόματα τις μονοσήμαντες τιμές στα σωστά strings του κάθε καναλιού, με καταγραφή πριν/μετά. Τα 4 tiers:
- Άμεση παραλαβή
- Παράδοση σε 1 έως 3 ημέρες
- Παράδοση σε 4 έως 10 ημέρες
- Παράδοση σε 10 έως 30 ημέρες
Οι 4 βασικές διαφορές από τη μορφή Skroutz
1. Χωρίς πεδίο ΦΠΑ. Τα BestPrice feeds δεν έχουν vat — οι έλεγχοι λείπει ΦΠΑ / άκυρος ΦΠΑ αφορούν μόνο τη μορφή Skroutz. Η τιμή παραμένει πάντα με ΦΠΑ.
2. Επιπλέον πεδίο instock. Δίπλα στο availability, ένα σκέτο Y/N: υπάρχει απόθεμα ή όχι. Οτιδήποτε άλλο («yes», «1», «ναι») → άκυρη ένδειξη instock.
3. Διαφορετικά availability strings (βλ. παραπάνω) — και επειδή το επίσημο spec της πλατφόρμας είναι πίσω από merchant login, ο έλεγχος εδώ είναι πιο ελαστικός: το κείμενο εκτός λίστας επισημαίνεται ως προειδοποίηση, όχι ως blocker.
4. <date> αντί για <created_at> στην κορυφή του feed.
Θες την πλήρη σύγκριση των δύο μορφών σε ένα άρθρο; Δες τον οδηγό BestPrice XML feed: οι διαφορές από το Skroutz.
Ένα feed, δύο κανάλια — χωρίς διπλή δουλειά
Αν στέλνεις το ίδιο XML και στα δύο κανάλια, κάπου θα «τρίζει»: ή τα availability strings ή το instock ή το timestamp tag. Η δωρεάν διάγνωση του FeedClinic ελέγχει το feed σου με το ruleset του καναλιού που επιλέγεις — ώστε να μη βλέπεις ψευδο-λάθη του ενός spec όταν στοχεύεις το άλλο — και σου δείχνει σε 1 λεπτό τι θέλει διόρθωση, τι διορθώνεται αυτόματα και τι πρέπει να αλλάξει στην πηγή. Χωρίς κάρτα, χωρίς εγγραφή.
Έλεγξε το feed σου με το ruleset του BestPrice
Δωρεάν διάγνωση με επιλογή καναλιού — δες σε 1 λεπτό τι θέλει διόρθωση για τη μορφή BestPrice, χωρίς ψευδο-λάθη του άλλου spec.
Δωρεάν διάγνωση feed — χωρίς κάρτα