XML produktų importas iš tiekėjų: kaip jį sutvarkyti patikimai
Kaip patikimai importuoti prekes iš tiekėjų XML: laukų susiejimas, tikrinimas, likučių ir kainų atnaujinimas, dingusios prekės, keli tiekėjai, stebėsena.

Trumpai
Patikimas XML importas – ne vienkartinis failo įkėlimas, o procesas: gauti tiekėjo failą, patikrinti jo struktūrą ir privalomus laukus, susieti tiekėjo laukus su parduotuvės laukais, atnaujinti tik tai, kas priklauso tiekėjui (kainas, likučius), dingusias prekes paslėpti, o ne ištrinti, ir apie kiekvieną nepavykusį importą sužinoti iš karto. Prekes su parduotuve verta sieti pagal SKU ar EAN, ne pagal pavadinimą.
Pagrindinės mintys
- XML importas susideda iš penkių dalių: gavimas, tikrinimas, laukų susiejimas, įkėlimas ar atnaujinimas ir stebėsena. Dažniausiai stringa tikrinimas ir susiejimas.
- Pagal XML specifikaciją netaisyklingas failas yra lemtinga klaida – jo apdorojimas turi sustoti, o ne įkelti pusę katalogo.
- Prekes susiekite pagal nekintamą identifikatorių (SKU, EAN), o tiekėjui leiskite keisti tik kainas ir likučius – aprašymai ir SEO laukai lieka jūsų.
- Dingusios iš tiekėjo failo prekės neturėtų būti trinamos: pažymėkite jas kaip neturimas ar paslėpkite, kad neprarastumėte adreso ir paieškos srauto.
- WooCommerce integruotas importuotojas priima CSV, o Shopify – CSV iki 15 MB, todėl tiekėjų XML beveik visada reikia integracijos ar automatizacijos sluoksnio.
Kas yra tiekėjo XML ir kodėl importas stringa
Daugelis tiekėjų ir didmenininkų savo prekes perduoda XML failu: adresu, iš kurio parduotuvė gali parsisiųsti visą katalogą su kainomis, likučiais, aprašymais ir nuotraukų nuorodomis. Idėja paprasta – prekės pačios atsiranda ir atsinaujina. Praktikoje importas dažnai tampa nuolatiniu rankiniu darbu: dingsta nuotraukos, kainos atsinaujina ne tos, o pusė katalogo atsiduria ne toje kategorijoje.
- Tiekėjo XML (produktų srautas)
- Struktūrizuotas XML failas, kuriame tiekėjas skelbia savo prekių duomenis: identifikatorius, pavadinimus, kainas, likučius, aprašymus, kategorijas ir nuotraukų adresus. Kiekvieno tiekėjo struktūra ir žymų pavadinimai skiriasi, todėl universalaus formato nėra.
- Laukų susiejimas (mapping)
- Taisyklių rinkinys, nurodantis, kuris tiekėjo XML laukas į kurį parduotuvės lauką patenka ir kaip jis pakeičiamas pakeliui – pavyzdžiui, kaina su antkainiu ar tiekėjo kategorija, perrašyta į jūsų kategoriją.
Toliau – importas kaip procesas: ką gauti iš tiekėjo, kaip susieti laukus, kaip tikrinti failą, ką daryti su dingusiomis prekėmis, kai tiekėjų keli, ir kaip sužinoti, kad importas nepavyko, dar prieš tai pastebint pirkėjui.
Pasiruošimas
Ką gauti iš tiekėjo ir kaip jo duomenis sutapatinti su jūsų parduotuve – dar prieš pirmą importą.

Ką gauti iš tiekėjo prieš pradedant
Dauguma importo problemų prasideda nuo to, kad apie tiekėjo failą žinoma tik jo adresas. Prieš programuojant ar konfigūruojant importą, verta paprašyti kelių dalykų.
Paprašykite tiekėjo
- Failo aprašymo: kokios žymos, kurios privalomos, kokie formatai (kaina su PVM ar be, valiuta, dešimtainis skyriklis)
- Kaip dažnai failas atnaujinamas ir ar kainos bei likučiai pateikiami tame pačiame, ar atskirame faile
- Kokiu identifikatoriumi prekė nekinta: tiekėjo kodas, SKU, EAN
- Ar nuotraukų adresai vieši ir ar nuotrauka keičiasi, kai keičiasi jos adresas
- Kaip failas žymi prekę, kurios nebeprekiaujama: dingsta iš failo ar lieka su nuliniu likučiu
- Pavyzdinio failo, kuriame yra ir paprastų prekių, ir prekių su variantais
Jei parduodate ir per Google Shopping, naudinga palyginti tiekėjo laukus su Google Merchant Center prekių duomenų specifikacija: ji gerai parodo, kokių duomenų paprastai reikia patikimai prekės kortelei.
50 / 150 / 5 000
Didžiausias simbolių skaičius Google Merchant Center prekės identifikatoriui (id), pavadinimui (title) ir aprašymui (description); kaina nurodoma su ISO 4217 valiutos kodu, o prieinamumas – viena iš reikšmių in_stock, out_of_stock, preorder, backorder.
Šaltinis: Google Merchant Center Help, 20262
Laukų susiejimas: kas kam priklauso
Susiejimo lentelė – svarbiausias importo dokumentas. Joje ne tik nurodoma, kuris laukas kur patenka, bet ir kas lauką valdo: tiekėjas ar jūs. Jei tiekėjas valdo aprašymą, kiekvienas importas perrašys jūsų redaguotą tekstą.
| Tiekėjo žyma | Parduotuvės laukas | Kas valdo | Taisyklė |
|---|---|---|---|
| <kodas> | SKU | Tiekėjas (nekinta) | Pagal jį prekė susiejama su esama |
| <ean> | GTIN / EAN | Tiekėjas | Patikrinamas ilgis ir kontrolinis skaitmuo |
| <pavadinimas> | Pavadinimas | Tik pirmą kartą | Vėliau – jūsų redaguotas tekstas |
| <kaina> | Kaina | Tiekėjas + jūsų taisyklė | Antkainis, apvalinimas, PVM |
| <likutis> | Likutis | Tiekėjas | Nulis → „Neturime“, ne ištrynimas |
| <kategorija> | Kategorija | Susiejimo lentelė | Tiekėjo kategorija → jūsų kategorija |
| <nuotrauka> | Nuotraukos | Tiekėjas | Parsisiunčiama tik pasikeitus adresui |
| <aprasymas> | Aprašymas | Tik pirmą kartą | Vėliau – jūsų tekstas ir SEO laukai |
Kategorijos ir variantai
Tiekėjo kategorijos atspindi jo sandėlio logiką, ne tai, kaip renkasi jūsų pirkėjai. Todėl kategorijos beveik niekada nekeliamos tiesiai: sudaroma lentelė, kuri tiekėjo kategoriją paverčia jūsų kategorija, o nauja, dar nesusieta kategorija patenka į peržiūros sąrašą, ne į parduotuvę.
Variantai – dydžiai, spalvos, talpos – dažnai sunkiausia vieta. Vieni tiekėjai kiekvieną variantą pateikia kaip atskirą prekę, kiti – kaip vieną prekę su variantų sąrašu. Prieš importą nuspręskite, kas parduotuvėje bus viena prekė su variantais, ir pagal kokį lauką variantai grupuojami.
Importo eiga
Kaip tikrinti failą, ką atnaujinti ir ką daryti su prekėmis, kurios dingo.
Tikrinimas prieš įkeliant
Svarbiausia importo taisyklė: blogas failas neturi pasiekti parduotuvės. Tiekėjo serveris gali grąžinti pusę failo, klaidos puslapį vietoje XML ar failą be kainų – o importas, kuris to netikrina, sugadina katalogą.
XML 1.0 specifikacija čia griežta: netaisyklingas failas yra lemtinga klaida, po kurios procesorius negali tęsti įprasto apdorojimo, o UTF-8 ir UTF-16 koduotes privalo skaityti kiekvienas XML procesorius. Tą pačią logiką verta perkelti į importą – jei failas netaisyklingas, nieko neatnaujinti.
Prieš kiekvieną importą patikrinkite
- Ar failas parsisiuntė visas ir yra taisyklingas XML (ne klaidos puslapis, ne nutrūkęs failas)?
- Ar koduotė teisinga ir lietuviškos raidės nevirsta „?“ ar keistais simboliais?
- Ar prekių skaičius panašus į ankstesnio importo? Staigus kritimas dažniausiai reiškia klaidą, ne išparduotą katalogą.
- Ar kiekviena prekė turi privalomus laukus: identifikatorių, pavadinimą, kainą, likutį?
- Ar kainos realios: nėra nulinių, neigiamų ar neįprastai pasikeitusių kainų?
- Ar nėra dubliuotų identifikatorių?
Jei patikra nepavyksta, importas turi sustoti visas, o ne įkelti tai, kas pavyko. Pusiau atnaujintas katalogas – blogiau nei vakarykštis.
Pirmas importas ir atnaujinimai
Pirmas importas sukuria prekes, o visi kiti jas atnaujina. Tai du skirtingi darbai, todėl ir taisyklės skirtingos.
- Pirmas importas: sukuriamos prekės, nuotraukos, kategorijos ir aprašymai. Jį verta daryti bandomojoje aplinkoje ir peržiūrėti kelias dešimtis prekių iš skirtingų kategorijų.
- Atnaujinimas: prekė randama pagal SKU ar kitą nekintamą identifikatorių ir keičiami tik tiekėjo valdomi laukai.
- Nauja prekė tiekėjo faile: sukuriama, bet, jei jos kategorija dar nesusieta, lieka paslėpta, kol ją peržiūrėsite.
Taip veikia ir platformų importuotojai: WooCommerce integruotas CSV importuotojas importuojamą prekę su esama susieja pagal ID ar SKU, o nuotraukos turi būti įkeltos iš anksto arba pasiekiamos internete.
Likučiai ir kainos: kaip dažnai atnaujinti

Kainos ir likučiai keičiasi dažniau nei aprašymai, todėl juos verta atnaujinti atskirai ir dažniau. Jei tiekėjas pateikia atskirą, mažesnį likučių failą – naudokite jį; jei ne, atnaujinkite tik šiuos laukus, neperdirbdami viso katalogo.
Kaip dažnai – priklauso ne nuo technologijos, o nuo to, kaip greitai jūsų prekės išperkamos ir kaip dažnai tiekėjas atnaujina failą. Atnaujinti dažniau nei tiekėjas – beprasmiška; rečiau – rizikuojate parduoti tai, ko nebėra.
Ką daryti su prekėmis, kurios dingo iš failo
Paprasčiausias sprendimas – ištrinti prekę, kurios nebėra tiekėjo faile. Bet tada dingsta ir jos adresas: paieškos sistemų surasti puslapiai, reklamos, nuorodos iš kitų svetainių ir pirkėjų žymės veda į klaidos puslapį.
Vietoje trynimo
- Pažymėkite prekę kaip neturimą ir palikite puslapį su panašių prekių pasiūlymu
- Jei prekė negrįš – nukreipkite jos adresą į artimiausią prekę ar kategoriją
- Nuspręskite, po kiek laiko neturimos prekės paslepiamos iš kategorijų
- Prekę, kuri dingo per klaidą (nutrūkusiame faile), atkurkite automatiškai kitame importe
Keli tiekėjai, platformos ir stebėsena
Kai tiekėjų daugiau nei vienas, o importas turi veikti kasdien be žmogaus.
Kai tiekėjų keli
Du tiekėjai dažnai parduoda tą pačią prekę skirtingais kodais ir pavadinimais. Jei jų neatpažinsite, kategorijoje atsiras dublikatai, o pirkėjas matys dvi skirtingas kainas tai pačiai prekei.
- Tą pačią prekę atpažinkite pagal EAN ar kitą gamintojo kodą, ne pagal pavadinimą.
- Nuspręskite taisyklę, kurio tiekėjo kaina ir likutis rodomi: pigesnio, turinčio prekę ar prioritetinio.
- Kiekvienam tiekėjui – savas susiejimo lentelės variantas, bet bendros jūsų kategorijos.
- Importuokite tiekėjus atskirai, kad vieno klaida nesustabdytų kitų.
WooCommerce, Shopify ir individualus sprendimas
Nei WooCommerce, nei Shopify integruotas importas tiekėjų XML tiesiogiai nepriima. WooCommerce integruotas importuotojas skirtas CSV failams ir prekes susieja pagal ID ar SKU; Shopify produktus importuoja iš CSV ir gali perrašyti esamas prekes su tuo pačiu identifikatoriumi (handle).
15 MB
Didžiausias Shopify produktų CSV failo dydis; importuojant galima pasirinkti perrašyti esamas prekes, kurių handle sutampa.
Šaltinis: Shopify Help Center, 20264
Todėl tarp tiekėjo XML ir parduotuvės beveik visada atsiranda tarpinis sluoksnis: importo įskiepis, individualus importo scenarijus ar automatizacija, kuri parsisiunčia failą, jį patikrina, pritaiko susiejimą ir per platformos sąsają atnaujina prekes. Kurį rinktis, priklauso nuo tiekėjų skaičiaus, katalogo dydžio ir to, kiek taisyklių reikia. Platformų skirtumus plačiau aptarėme Shopify ir WooCommerce palyginime.
Rankinis importas
- Kartą per savaitę parsisiunčiamas failas ir įkeliamas per CSV
- Kiekvienas importas perrašo redaguotus aprašymus
- Dingusios prekės ištrinamos kartu su adresais
- Apie nepavykusį importą sužinoma iš pirkėjo skundo
Automatinis importas su patikra
- Kainos ir likučiai atnaujinami taip dažnai, kaip tiekėjas atnaujina failą
- Tiekėjas keičia tik kainą, likutį ir identifikatorius
- Dingusios prekės pažymimos kaip neturimos, adresai lieka
- Nepavykus importui – įspėjimas ir žurnalo įrašas iš karto
Stebėsena: kaip sužinoti, kad importas nepavyko
Tiekėjo serveris kartais neatsako, failo struktūra pasikeičia be įspėjimo, baigiasi prieigos slaptažodis. Importas, kuris tokiu atveju tiesiog nieko nepadaro, yra pavojingas: parduotuvė atrodo veikianti, o kainos ir likučiai sensta.
Reakcija į tokius incidentus – pagal priežiūros planą; be plano automatizacijos incidentai tvarkomi kaip atskiras darbas. Daugiau apie tai, kaip kuriame ir prižiūrime tokius procesus, – automatizacijos paslaugos puslapyje.
XML importo kontrolinis sąrašas
Ar jūsų importas patikimas?
- Ar turite tiekėjo failo aprašymą ir pavyzdinį failą su variantais?
- Ar prekės susiejamos pagal nekintamą identifikatorių, ne pagal pavadinimą?
- Ar susiejimo lentelėje nurodyta, kuriuos laukus valdo tiekėjas, o kuriuos – jūs?
- Ar tiekėjo kategorijos verčiamos į jūsų kategorijas, o naujos patenka į peržiūrą?
- Ar variantai grupuojami į vieną prekę?
- Ar failas tikrinamas prieš importą, o nepavykus patikrai importas sustoja visas?
- Ar kainos ir likučiai atnaujinami atskirai ir pakankamai dažnai?
- Ar dingusios prekės pažymimos kaip neturimos, o ne ištrinamos?
- Ar kelių tiekėjų ta pati prekė atpažįstama pagal EAN?
- Ar apie nepavykusį importą sužinote iš karto ir ar yra vykdymo žurnalas?
Nuo ko pradėti
Kuriant naują parduotuvę, el. parduotuvė kainuoja nuo 2 490 € – su iki 100 prekių paruošimu ar importu, mokėjimais ir siuntomis. Asortimentui iki 500 prekių kaina skaičiuojama pagal apimtį, didesniems katalogams – individualiai; nuolatinio tiekėjų importo automatizacija vertinama pagal tiekėjų skaičių ir taisykles. Kaina, apimtis ir terminas – raštu, prieš pradedant darbus. Iš ko susideda parduotuvės kaina, išskaidėme straipsnyje kiek kainuoja el. parduotuvės sukūrimas.
Parašykite mums: kiek turite tiekėjų, kokiu formatu jie pateikia duomenis ir kiek prekių planuojate parduoti. Atsakome per 1 darbo dieną.
Apie šio straipsnio duomenis
Metodologija
- Data
- Imtis
- W3C XML 1.0 specifikacija, Google Merchant Center produkto duomenų specifikacija, WooCommerce ir Shopify importo dokumentacija
- Kriterijai
- Techniniai faktai ir ribos – tik iš oficialių specifikacijų ir platformų dokumentacijos, patikrintos 2026-10-01
- Laukų susiejimo lentelės žymų pavadinimai – pavyzdiniai, ne konkretaus tiekėjo
- Importo eiga ir automatizacijos standartas – Oxtren Labs darbo būdas, pažymėtas atskirai
- Ribojimai
- Tiekėjų XML struktūra nestandartizuota, todėl kiekvienam tiekėjui susiejimas sudaromas atskirai. Platformų ribos gali keistis – tikrinkite jų dokumentaciją.
Dažni klausimai
Ar galima importuoti tiekėjo XML be programavimo?
Kartais – jei tiekėjas vienas, failo struktūra paprasta, o importo įskiepis palaiko reikiamas taisykles. Kai tiekėjų keli, reikia variantų, kainų taisyklių ar patikros prieš importą, dažniausiai prireikia individualaus importo ar automatizacijos.
Kaip dažnai atnaujinti likučius?
Ne dažniau nei tiekėjas atnaujina savo failą ir ne rečiau, nei jūsų prekės išperkamos. Kainas ir likučius verta atnaujinti atskirai ir dažniau nei aprašymus ar nuotraukas.
Ką daryti, jei tiekėjas pakeitė failo struktūrą?
Geras importas tokiu atveju sustoja ir praneša, o ne įkelia tuščius laukus. Tada atnaujinama susiejimo lentelė ir importas paleidžiamas iš naujo. Todėl verta susitarti su tiekėju, kad apie pakeitimus jis praneštų iš anksto.
Ar XML importas tinka Shopify parduotuvei?
Taip, bet Shopify pats XML neimportuoja – jis priima CSV iki 15 MB arba duomenis per savo sąsają. Todėl tiekėjų XML į Shopify keliamas per programą ar individualią integraciją, kuri failą paverčia Shopify prekėmis.
Šaltiniai ir metodika
- W3CExtensible Markup Language (XML) 1.0 (Fifth Edition)žiūrėta
- Google Merchant Center HelpProduct data specificationžiūrėta
- WooCommerceProduct CSV importer and exporteržiūrėta
- Shopify Help CenterImporting products with a CSV filežiūrėta
