Automatický import produktov, skladových zásob
a prepojenie s iným systémom (účtovníctvo, CRM ..)
Hromadný import produktov alebo skladových zásob do internetového obchodu je možné realizovať aj prostredníctvom XML feedu a to nasledovne:
a) Manuálny import XML feedu cez eshop administráciu
viac informácií v odseku 2
b) Automatický import produktov XML feedu do internetového obchodu systému ClickEshop prostredníctvom API rozhrania
viac informácií v odseku 3
1 Požiadavky na štruktúru XML feedu
Systém podporuje import produktov za predpokladu dodržania štandardnej štruktúry XML feedu.
Vzor šablóny štandardného XML feedu nájdete tu:
https://clickeshop.com/admin_eshop/files/xml_clickeshop.xml
Špecifikáciu štandardného XML feedu nájdete na linke:
https://clickeshop.sk/napoveda/produkty/napojenie-na-dodavatela/popis-xml-feed/m888
Štruktúra XML feedu je takmer totožná so štruktúrou od heureka XML feed. Pre import produktov je možné použiť aj plnohodnotný feed podľa heureka.
Požiadavky na obsah a formu feedu
Pre import nových produktov sú predpísané tieto povinné údaje:
- PRODUCTNO/PRODUCT_ID (číslo produktu) alebo EAN
- CATEGORYTEXT (kategória, kategórie produktov)
- PRODUCTNAME (názov produktu)
Pre aktualizáciu produktov sú predpísané tieto povinné údaje:
- PRODUCTNO/PRODUCT_ID (číslo produktu) alebo EAN
2 Manuálny import XML feedu cez eshop administráciu
Pripravený XML feed podľa definovanej štruktúry z kapitoly "1 Požiadavky na štruktúru XML feedu" je možné importovať manuálne aj cez clickeshop administráciu. Takto pripravený XML feed importujete po prihlásení do clickeshop administrácie svojho internetového obchodu nasledovne:
- prihlásim sa do clickeshop administrácie svojho internetového obchodu
- kliknem sa sekciu "Globálne nastavenia / Hromadný import"
- vyberiem Typ importu: "XML ClickEshop ( extended XML file .xml / .xml.zip )"
- zvolím si kategóriu do ktorej sa majú nové produkty importovať "Import do kategórie". Túto kategóriu treba manuálne vopred v internetovom obchode vytvoriť a môžeme ju nazvať napr. "Import"
- Spôsob importu: "vložiť záznamy ako nové produkty"
- vyberiem Cesta k súboru s produktami vo formáte XML feed. Súbor musí byť kompresovaný ako .zip s ľubovolným názvom napr. data.zip
- stačím tlačítko "Štart importu" a sledujem výpis logu o spracovaní produktov a prípadných chybách, ktorý sa bude pravidelne každých 15 sekúnd obmieňať na danej obrazovke podľa stavu spracovania produktov.
3 AUTOMATIZOVANÝ IMPORT PRODUKTOV, SKLADU
Automatizované prepojenia prebiehajú na pozadí plne autonómne, bez zásahu človeka kde sa posielajú alebo prijímajú údaje, a tým sú schopné nahradiť niektoré monotónne operácie, ako napríklad každodenný manuálny import produktov do internetového obchodu. Neexistencia duplicitných procesov so sebou prináša ušetrené prostriedky na obsluhu internetového obchodu, ale pomáha aj vyvarovať sa zbytočným chybám v podobe nepresných informácií a následnému sklamaniu zákazníka. Automatizovaný import produktov zabezpečí pravidelnú aktualizáciu produktov v eshope bez ohľadu na to či ste ako administrátor do internetového obchodu vstúpili.
Automatizovaný import je možné využiť pri napojení na veľkoobchod dodávateľa alebo účtovné systémy so skladovým hospodárstvom.
3.1 Architektúra riešenia
Celé riešenie je založené na možnosti naplánovať vlastný automatizovaný import za predpokladu doržania stanovených podmienok:
- príprava a spracovanie XML feedu do predpísanej štandardnej štruktúry XML
- pripraviť vlastný spúšťací skript s autentifikáciou, ktorý bude volať API rozhranie
- naplánovať automatizované spúšťanie vlastného scriptu, ktorý bude volať API. Plánovanie volania API je potrebné nastaviť v jednotlivých časových intervaloch, napr. volať API 1x denne pre aktualizáciu produktov.
3.2 API rozhranie
slúži na automatické spracovanie XML súboru ( upload XML súboru s produktami ) pri prepojení ClickEshopu s inými systémami. Na API rozhranie je možné naprogramovať užívateľskú aplikáciu
Cesta k API rozhraniu na automatizovaný import produktov:
https://api.clickeshop.sk/import_products/
XML súbor bude importovaný ako kompresovaný XML súbor vo formáte ZIP
Parametre API (použitie metódou HTTP POST)
Názov parametra | Povinnosť vyplniť |
Popis |
login | áno | Postup na vytvorenie login je nasledovný: 1) Prihlásiť sa do administrácie daného eshopu 2) Zvoliť sekciu Globálne nastavenia – Užívatelia 3) Vyplniť “Email užívateľa:” 4) Rola “STANDARD” Oprávnenia: žiadne ! 5) Uložiť Na zaregistrovaný mail príde heslo |
password | áno | Po vložení nového užívateľa v sekcii Globálne nastavenia – Užívatelia príde na zaregistrovaný mail nové heslo, ktoré sa použije pri autentifikácii |
id_project | áno | Treba požiadať podporu o pridelenie ID. Požiadavka musí by byť zaslaná z kontaktného formulára priamo z administrácie eshopu (Pomoc – Zákaznícka podpora) |
import_format | áno | Nadobúda hodnoty: „XML-CLICKESHOP“ - štruktúra podporovaná ClickEshopom príklad: https://clickeshop.sk/napoveda/produkty/napojenie-na-dodavatela/m838 |
sync_type | áno |
Nadobúda hodnoty INSERT / UPDATE / MERGE / INSERT-UPDATE / DELETE
„INSERT-UPDATE“ sa vykonajú nasledovné akcie:
„DELETE“ sa vykonajú nasledovné akcie:
|
file_data | áno | vo formáte $_FILES['file_data'] ( <form method="post" enctype="multipart/form-data"> ) ako kompresovaný XML súbor v štandardnom formáte ZIP (nazov.zip) |
json_config |
nie |
Dodatková konfigurácia importu produktov vo formáte JSON zasielaný ako reťazec Nadobúda hodnoty:
|
3.3 Výpis spracovania dát ( log )
Výsledok log zo spracovania automatického importu bude prístupný cez ClickEshop administrátor v sekcii Globálne nastavenia / Hromadný import.
Zaznamenaný a zobrazený je vždy posledný log z importu.
3.4 Obmedzenia
- Súbor, ktorý sa importuje môže mať maximálne 10 MB (zip). V prípade, že je súbor väčší, tak sa rozdelí na
viac dávok. V reálnom čase je možné spracovávať naraz len jeden import. - API je možné volať maximálne 30 krát za 1 konkrétny deň pre jeden projekt
- API je možné volať maximálne 1 krát za 10 minút
- API je možné volať iba cez šifrované spojenie SSL https:
3.5 Chybové stavy
Server odpoveď na output:
{"result":"ERR"} – Chyba, akcia sa nevykonala
{"result":"OK"} – Akcia sa vykonala
Server odpoveď v HTTP header ( HTTP Status Codes ):
200 – request success
400 – error, bad request
3.6 Vzor testovacieho HTML formulára
Pre produkčné účely odporúčame vytvoriť si jednoduchú .NET aplikáciu na HTTP post parametrov( kód na pár riadkov). Taktiež sa dá použiť open-source aplikácia CURL, ktorá sa zavolá cez parametre a táto vie postnúť kompresovaný XML súbor i s danými parametrami na server clickeshop.
3.6.1 Predpripravený OFFLINE testovací formulár
Pre testovacie účely stačí pre HTTP post nasledovný offline HTML formulár, ktorého obsah skopíruje do prázdneho HTML súboru na vlastnom PC:
<!DOCTYPE html>
<html>
<head>
<title>clickeshopdev test api</title>
</head>
<body>
<h1>Import products</h1>
<form action="https://api.clickeshop.sk/import_products/" method="POST" enctype="multipart/form-data">
<input type="text" name="login" value="" placeholder="login"/>
<input type="password" name="password" value="" placeholder="password"/>
<input type="text" name="id_project" value="" placeholder="id_project"/>
<input type="text" name="import_format" value="XML-CLICKESHOP" placeholder="import_format"/>
<input type="text" name="sync_type" value="MERGE" placeholder="sync_type"/>
<input type="file" name="file_data" />
<input type="submit" value="SEND"/>
</form>
</body>
</html>
3.6.2 Predpripravený ONLINE testovací formulár
Taktiež je možné využiť testovací formulár z tejto linky:
https://clickeshop.com/admin_eshop/batch/test-import_products.html
3.6.3 Príklad použitia cez aplikáciu CURL
- stiahnite si aplikáciu CURL z internetu . Do google zadajte "curl download", stiahnite a nainštalujte
- pripravte si xml súbor s produktami vo formáte XML a tento zozipujte štandardným programom .zip na názov xml_data.zip
Náš tip: niektoré Windows majú predinštalovaný zip program, ktorého výsledkom nie je štandardizovaný kompatibilný zip formát. Pre správnu kompresiu štandardným zipom odporúčame kompresovať programom WinZIP, prípadne pre Windows zip použiť vhodné parametre. - z príkazového riadka vášho PC zavolajte nasledovný script:
curl -F"login=%XXX%" -F"password=%XXX%" -F"id_project=%ID%" -F"import_format=XML-CLICKESHOP" -F"sync_type=INSERT" -F"file_data=@xml_data.zip" https://api.clickeshop.sk/import_products/
hodnoty %XXX% v príkaze nahraďte svojimi hodnotami
3.7 Odporúčania
Produkty v interentovom obchode sa aktualizujú na základe vami vygenerovaného XML pre API. Tie XML tagy, ktoré vo XML feede uvediete, tieto atribúty produktu sa budú aktualizovať. Tagy, ktoré aktualizovať nechcete, tie v XML feede neuvediete.
Napr. Ak chcem aktualizovať iba sklad a cenu produktu, XML feed pre e-shop bude vyzerať nasledovne:
<SHOP>
<SHOPITEM>
<PRODUCTNO>31</PRODUCTNO>
<PRICE_VAT>1500</PRICE_VAT>
<STOCK>5</STOCK>
</SHOPITEM>
<SHOPITEM>
<PRODUCTNO>32</PRODUCTNO>
<PRICE_VAT>103</PRICE_VAT>
<STOCK>23</STOCK>
</SHOPITEM>
</SHOP>
Pre štandardné použitie odporúčame vytvoriť si aspoň 2 XML feedy a to nasledovne:
- 1 XML pre zakladanie a mazanie produktov pre e-shop. API volať s operáciou MERGE ( toto volať raz denne )
- 2 XML pre aktualizáciu cien a skladu produktov. API volať s operáciou UPDATE ( toto volať častejšie, napr. niekoľkokrát za deň )
.. pripadne ďalšie XML feedy napr. iba pre B2B s operáciou UPDATE