Automatický import produktů, skladových zásob
a propojení s jiným systémem (účetnictví, CRM ..)
Import produktů a skladových zásob do internetového obchodu lze provést také prostřednictvím XML feedu následujícím způsobem:
a) Manuální import XML feedu přes administraci eshopu
více informací v odstavci 2
b) Automatický import produktů z XML feedu do systému ClickEshop prostřednictvím rozhraní API.
více informací naleznete v odstavci 3
1 Požadavky na strukturu XML feedu
Systém podporuje automatický import produktů za předpokladu dodržení standardní struktury XML feedu.
Vzor šablony standardního XML feedu najdete zde:
https://clickeshop.com/admin_eshop/files/xml_clickeshop.xml
Specifikaci standardního XML feedu najdete na lince:
https://clickeshop.cz/napoveda/produkty/napojeni-na-dodavatele-xml-feed/popis-xml-feed/m880
Struktura XML feedu je téměř totožná se strukturou XML feedu heureky. Pro import produktů je možné použít také úplný feed od heureky.
Požadavky na obsah a formu feedu
Pro import nových produktů jsou předepsány tyto povinné údaje:
- PRODUCTNO/PRODUCT_ID (číslo produktu) nebo EAN
- CATEGORYTEXT (kategorie, kategorie produktů)
- PRODUCTNAME (název produktu)
Pro aktualizaci produktů jsou předepsány tyto povinné údaje:
- PRODUCTNO/PRODUCT_ID (číslo produktu) nebo EAN
2 Manuální import XML feedu přes administraci eshopu
Připravený XML feed podle definované struktury z kapitoly "1 Požadavky na strukturu XML feedu" lze importovat i manuálně přes administraci clickeshopu. Po přihlášení do administrace clickeshopu vašeho eshopu můžete připravený XML feed importovat následujícím způsobem:
- přihlašuji se do administrace clickeshopu svého online obchodu.
- kliknu na sekci "Globální nastavení / Hromadný import".
- zvolte Typ importu: "XML ClickEshop ( extended XML file .xml / .xml.zip )"
- vyberu kategorii, do které se mají nové produkty importovat "Importovat do kategorie". Tuto kategorii je třeba předem ručně vytvořit ve online obchodě a lze ji nazvat např. "Import".
- Metoda importu: "vložit záznamy jako nové produkty".
- Zvolím Cestu k souboru s produkty ve formátu XML feed. Soubor musí být komprimován jako soubor .zip s libovolným názvem, např. data.zip.
- pak už jen kliknu na "Spustit import" a sleduji výstup logu o zpracování produktů a případných chybách, který se bude na dané obrazovce pravidelně každých 15 sekund měnit podle stavu zpracování produktů.
3 AUTOMATIZOVANÝ IMPORT PRODUKTŮ
Automatizovaná spojení probíhají na pozadí zcela autonomně, bez zásahu člověka v místech, kde jsou data odesílána nebo přijímána, a jsou tak schopna nahradit některé monotónní operace, jako je například každodenní ruční import produktů do internetového obchodu. Absence duplicitních procesů s sebou přináší ušetřené prostředky na provoz internetového obchodu, ale také pomáhá vyhnout se zbytečným chybám v podobě nepřesných informací a následnému zklamání zákazníka. Automatizovaný import produktů zajišťuje pravidelnou aktualizaci produktů v internetovém obchodě bez ohledu na to, zda jste jako správce vstoupili do internetového obchodu.
Automatizovaný import lze využít při napojení na velkoobchodní dodavatelské nebo účetní systémy se skladovým hospodářstvím.
3.1 Architektura řešení
Celé řešení je založeno na možnosti naplánovat vlastní automatizovaný import za předpokladu doržania stanovených podmínek::
- příprava a zpracování XML feedu do předepsané standardní struktury XML
- připravit vlastní spouštěcí skript s autentifikací který bude volat API rozhraní
- naplánovat automatizované spouštění vlastního scriptu, který bude volat API. Plánování volání API je třeba nastavit v jednotlivých časových intervalech. volat API 1x denně pro aktualizaci produktů.
3.2 API rozhraní
slouží pro automatizované zpracování XML souboru (upload XML souboru s produkty) při propojení ClickEshopu s jinými systémy. Na API rozhraní lze naprogramovat uživatelskou aplikaci
Cesta k API rozhraní pro automatizovaný import produktů:
https://api.clickeshop.cz/import_products/
Metoda volání: Rest API HTTP POST
XML soubor bude importován jako komprimovaným XML soubor ve formátu ZIP
Parametry API (použití metodou HTTP POST)
Název parametru | Povinnost vyplnit |
Popis |
login | ano | Postup pro vytvoření login je následující: 1) Přihlásit se do administrace daného eshopu 2) Zvolit sekci Globální nastavení - Uživatelé 3) Vyplnit "Email uživatele:" 4) Role "STANDARD" Oprávnění: žádné! 5) Uložit Na zaregistrovaný mail přijde heslo |
password | ano | Po vložení nového uživatele v sekci Globální nastavení - Uživatelé přijde na zaregistrovaný mail nové heslo, které se použije při autentifikaci |
id_project | ano | Třeba požádat podporu o přidělení ID. Požadavek musí by být zaslán z kontaktního formuláře přímo z administrace eshopu (Pomoc - Zákaznická podpora) |
import_format | ano | Nabývá hodnoty: „XML-CLICKESHOP“ - struktura podporovaná ClickEshopom příklad: https://clickeshop.cz/napoveda/produkty/napojeni-na-dodavatele-xml-feed/m862 |
sync_type |
ano |
Nabývá hodnoty INSERT / UPDATE / MERGE / INSERT-UPDATE / DELETE
„UPDATE“ se provedou následující akce:
„MERGE“ se provedou následující akce:
„INSERT-UPDATE“ se provedou následující akce:
„DELETE“ sa vykonajú nasledovné akcie:
|
file_data | ano | ve formátu $_FILES['file_data'] ( <form method="post" enctype="multipart/form-data"> ) jako komprimovaný XML soubor ve standardním formátu ZIP (nazov.zip) |
json_config |
ne |
Dodatková konfigurace importu produktů ve formátu JSON zasílaný jako řetězec Nabývá hodnoty:
|
3.3 Výpis zpracování dat (log)
Výsledek log ze zpracování automatického importu bude přístupný přes ClickEshop administrátor v sekci Globální nastavení / Hromadný import.
Zaznamenaný a zobrazený je vždy poslední log z importu.
3.4 Omezení
- Soubor, který se importuje může mít maximálně 10 MB (zip). V případě, že je soubor větší, tak se rozdělí na
více dávek. V reálném čase lze zpracovávat najednou pouze jeden import. - API je možné volat maximálně 30 krát za 1 konkrétní den pro jeden projekt
- API je možné volat maximálně 1 krát za 10 minut
- API je možné volat pouze přes šifrované spojení SSL https:
3.5 Chybové stavy
Server odpověď na output:
{"result":"ERR"} – Chyba, akce se neprovedla
{"result":"OK"} – Akce se provedla
Server odpověď v HTTP header (HTTP Status Codes):
200 – request success
400 – error, bad request
3.6 Vzor testovacího HTML formuláře
Pro produkční účely doporučujeme vytvořit si jednoduchou .NET aplikaci na HTTP post parametrů (kód na pár řádků). Také se dá použít open-source aplikace CURL, která se zavolá přes parametry a tato umí POST komprimovaný XML soubor i s danými parametry na server clickeshop.
3.6.1 Předpřipravený OFFLINE testovací formulář
Pro testovací účely stačí pro HTTP post následující offline HTML formulář, jehož obsah zkopíruje do prázdného HTML souboru na vlastním PC:
<!DOCTYPE html>
<html>
<head>
<title>clickeshopdev test api</title>
</head>
<body>
<h1>Import products</h1>
<form action="https://clickeshop.com/admin_eshop/batch/import_products.php" 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 Předpřipravený ONLINE testovací formulář
Také je možné využít testovací formulář z této linky:
https://clickeshop.com/admin_eshop/batch/test-import_products.html
3.6.3 Příklad použití přes aplikaci CURL
Pro HTTP post je možné využít open source aplikaci CURL
- stáhněte si aplikaci CURL z internetu. Do google zadejte "curl download", stáhněte a nainstalujte
- připravte si xml soubor s produkty ve formátu XML a tento zozipujte standardním programem .zip na název xml_data.zip
Náš tip: některé Windows mají předinstalovaný zip program, jehož výsledkem není standardizovaný kompatibilní zip formát. Pro správnou kompresi standardním zipem doporučujeme kompresi programem WinZIP, případně pro Windows zip použít vhodné parametry. - z příkazového řádku vašeho PC zavolejte následující 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.cz/import_products/
hodnoty% XXX% v příkazu nahraďte svými hodnotami
3.7 Doporučení
Produkty v interentovém obchodě se aktualizují na základě vámi vygenerovaného XML pro API. Ty XML tagy, které ve XML feedu uvedete, tyto atributy produktu budou aktualizovány. Tagy, které aktualizovat nechcete, ty v XML feedu neuvedete.
Např. Pokud chci aktualizovat pouze sklad a cenu produktu, XML feed pro e-shop bude vypadat následovně:
<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>
Pro standardní použití doporučujeme vytvořit si alespoň 2 XML feedy a to následovně:
- 1 XML pro zakládání a mazání produktů pro e-shop. API volat s operací MERGE (toto volat jednou denně)
- 2 XML pro aktualizaci cen a skladu produktů. API volat s operací UPDATE ( toto volat častěji, např. několikrát za den )
.. připadne další XML feedy například. pouze pro B2B s operací UPDATE