Specyfikacja feedu XML
Jak to działa
- Generujesz plik XML z aktualnymi ofertami i udostępniasz go pod stałym adresem HTTPS
(np.
https://twojafirma.pl/smart-okazje-feed.xml). - Przekazujesz nam ten adres — podpinamy go do Twojego zweryfikowanego konta firmowego.
- Pierwszy import trafia do moderacji — nasz zespół sprawdza poprawność ofert.
- Po akceptacji feed przechodzi w tryb automatyczny: pobieramy go cyklicznie (domyślnie co 6 godzin, częstotliwość ustalamy indywidualnie) i aktualizujemy oferty.
Ważne: plik ma zawierać pełną, aktualną listę ofert. Oferta, która zniknie z feedu, zostanie automatycznie oznaczona jako wygasła.
Format pliku
- Kodowanie: UTF-8
- Element główny:
<oferty>, każda oferta w<oferta> - Maksymalnie 2000 ofert w jednym pliku
- Ceny: kropka lub przecinek jako separator dziesiętny (np.
899.00lub899,00)
Przykład
<?xml version="1.0" encoding="UTF-8"?>
<oferty>
<oferta>
<id_zewnetrzny>SKU-12345</id_zewnetrzny>
<tytul>Robot odkurzający CleanBot S5 z mopowaniem</tytul>
<url>https://twojafirma.pl/produkty/cleanbot-s5</url>
<kategoria>Elektronika</kategoria>
<cena>899.00</cena>
<cena_przed>1499.00</cena_przed>
<opis>Robot sprzątający z mapowaniem laserowym.</opis>
<zdjecie_url>https://twojafirma.pl/zdjecia/cleanbot-s5.jpg</zdjecie_url>
<wygasa>2026-08-31T23:59:00</wygasa>
</oferta>
</oferty>
Pola
| Pole | Wymagane | Opis |
|---|---|---|
id_zewnetrzny | tak | Twój unikalny identyfikator oferty (np. SKU). Po nim rozpoznajemy, że to ta sama oferta przy kolejnych synchronizacjach — nie zmieniaj go dla istniejącego produktu. Maks. 120 znaków. |
tytul | tak | Nazwa oferty, maks. 150 znaków. |
url | tak | Pełny link do produktu (http:// lub https://). |
kategoria | tak | Nazwa kategorii z serwisu (lista niżej). Nierozpoznana kategoria = oferta pominięta. |
cena | tak | Cena promocyjna brutto, większa od 0. |
cena_przed | nie | Cena przed obniżką. Uwzględniana tylko gdy wyższa od cena — na jej podstawie liczymy % rabatu. |
opis | nie | Opis oferty, maks. 5000 znaków. Gdy pusty, użyjemy tytułu. |
zdjecie_url | nie | Pełny adres zdjęcia produktu (JPG, PNG lub WebP, do 8 MB). Pobieramy je raz i przechowujemy u siebie — szczegóły w sekcji „Zdjęcia produktów” niżej. |
wygasa | nie | Data i godzina końca promocji w formacie ISO 8601 (2026-08-31T23:59:00). |
Zdjęcia produktów
To ważne dla wyglądu Twoich ofert — prosimy o zapoznanie się przed przygotowaniem feedu.
Jak wyświetlamy zdjęcia
- Na kartach ofert (strona główna, listingi) zdjęcie jest kadrowane do proporcji 4:3 — wypełnia całe pole, a nadmiar jest przycinany symetrycznie od góry i dołu (lub z boków). Dzięki temu siatka ofert wygląda równo.
- Na stronie oferty pokazujemy produkt w całości (bez przycinania), wpisany w pole 4:3 na białym tle — kupujący widzi cały przedmiot.
Zalecenia
- Proporcje 4:3 (np. 1200×900 px) — wtedy nic nie zostanie przycięte na kartach.
- Minimum 800 px szerokości. Zdjęcia większe niż 1200 px zmniejszamy automatycznie.
- Produkt wyśrodkowany, z niewielkim marginesem — przy zdjęciach pionowych kadrowanie 4:3 obetnie górę i dół, więc nie umieszczaj ważnych elementów przy krawędziach.
- Jednolite, jasne tło wygląda najlepiej w siatce ofert.
- Formaty: JPG, PNG lub WebP, plik do 8 MB. Przezroczystość PNG zastępujemy białym tłem.
Jak to działa technicznie
- Zdjęcie pobieramy raz i przechowujemy na naszym serwerze — nie obciążamy Twojego hostingu przy każdym wyświetleniu oferty (brak hotlinkowania).
- Ponowne pobranie następuje tylko gdy zmienisz adres w polu
zdjecie_url. Podmiana pliku pod tym samym adresem nie zostanie wykryta — aby wymusić aktualizację, użyj nowej nazwy pliku. - Adres musi być publicznie dostępny (bez logowania). Jeśli pobranie się nie powiedzie, oferta i tak zostanie zaimportowana — po prostu bez zdjęcia.
Kategorie
Wartość <kategoria> musi odpowiadać jednej z kategorii serwisu (wielkość liter
i polskie znaki nie mają znaczenia — dopasowujemy też po formie uproszczonej, np. dom-i-ogrod):
Jeśli potrzebujesz nowej kategorii — napisz do nas.
Częste błędy
- Oferta pominięta przy imporcie — brak
id_zewnetrzny,tytullubcena, cena ≤ 0, niepoprawnyurlalbo nierozpoznanakategoria. - Cały import nieudany — plik nie jest poprawnym XML-em, nie zawiera elementów
<oferta>albo adres zwraca błąd HTTP. - Zdublowane oferty — użycie różnych
id_zewnetrznydla tego samego produktu przy kolejnych generowaniach pliku.
Wymagania techniczne
- Adres feedu musi być dostępny publicznie (bez logowania), z limitem czasu odpowiedzi do 30 s.
- Zalecamy HTTPS oraz nagłówek
Content-Type: application/xml. - Nie stosujemy uwierzytelniania do pobierania feedu — nie umieszczaj w nim danych wrażliwych.