Struktura i jej opis
Plik light.xml jest drugim podstawowym plikiem oferty IOF zawierającym informacje o cenach towarów i ich rozmiarów uwzględniających rabaty i walutę indywidualnego odbiorcy, o ich stanach dyspozycyjnych i kodach producenta, oraz wagach. W plikach light dla IOF 3.0 nie znajdziemy zestawów znajdą się natomiast informacje o składowych zestawu.
Ceny
Wszystkie zwracane w pliku ceny:
- cena towaru zawarta w węźle <product><price>,
- sugerowana cena towaru zawarta w węźle <product><srp>,
- przekreślona cena detaliczna towaru zawarta w węźle <product><strikethrough_retail_price>,
- cena rozmiaru zawarta w węźle <product><sizes><size><price>,
- sugerowana cena rozmiaru zawarta w węźle <product><sizes><size><srp>,
- przekreślona cena detaliczna rozmiaru zawarta w węźle <product><sizes><size><strikethrough_retail_price>,
są automatycznie przeliczane na walutę klienta docelowego (atrybut @currency w węźle <products>) z uwzględnieniem również rabatów przypisanych do jego konta w serwisie dostawcy, a w przypadku, gdy konto odbiorcy ma status hurtownika ich wartości pobierane są z pól cen hurtowych towarów po stronie dostawcy.
Węzeł każdej ceny zawiera informacje o wartości brutto (opcjonalny atrybut @gross) oraz o wartości netto (wymagany atrybut @net).
Stawka VAT (atrybut @currency) określana jest dla całego towaru w jego głównym węźle <product>.
Rozmiary
Każdy dostępny w pliku rozmiar (węzeł <size>) opisywany jest przez następujące atrybuty:
Atrybuty wymagane:
- @id – identyfikator rozmiaru,
- @code – unikalny kod produktu np. 1454-03.
Atrybuty opcjonalne:
- @panel_name - unikalna nazwa rozmiaru,
- @name - nazwa rozmiru wyświetlana w sklepie,
- @code_producer – kod producenta,
- @iaiext:code_external - kod zew. systemu (atrybut rozszerzenia IOF Extensions),
- @weight – waga towaru z opakowaniem podana w gramach.
- @iaiext:weight_net - waga towaru bez opakowania podana w gramach (atrybut rozszerzenia IOF Extensions).
Stany magazynowe
Stany dyspozycyjne każdego z rozmiarów zwracane są w węźle <product><sizes><size><stock>, którego wymaganym atrybutem jest identyfikator magazynu (atrybut @id) oraz dostępna ilość (atrybut @quantity). Atrybut @quantity może zawierać wartość ułamkową oraz wartość nieskończoności (-1).
Przykładowe magazyny i ich identyfikatory dostępne w panelu administracyjnym Idosell Shop:
- M0 - id="0",
- M1 - id="1",
- M2 - id="2" itp.
Changelog:
IOF 3.0
- zmieniliśmy nazwę węzła <strikethrough_price> na <strikethrough_retail_price>, aby była zgodna z nazwą tego węzła w pliku full.xml,
- dodaliśmy nowy atrybut @name w węźle <sizes><size> odpowiadający unikalnej nazwie rozmiaru.
Przykładowa struktura pliku XML:
Zależności między danymi:
- product.sizes.size@id jest ściśle powiązany z sizes.group.size@id w pliku sizes.xml,
- product.sizes.size@name jest ściśle powiązany z sizes.group.size@name w pliku sizes.xml,
- product.sizes.size.stock@id jest ściśle powiązany z stocks.stock@id w pliku stocks.xml.
Pliki do pobrania
- Pobierz przykład pliku XML light
- Pobierz walidator schematu XSD light