Automatický import produktů
a propojení s jiným systémem (účetnictví, CRM ..)
Automatický import produktů do internetového obchodu systému ClickEshop
Automatizované propojení probíhají na pozadí plně autonomní, bez zásahu člověka kde se posílají nebo přijímají data, a tím jsou schopny nahradit některé monotónně operace, jako například každodenní import produktů do internetového obchodu. Neexistence duplicitních procesů se sebou přináší ušetřené prostředky k obsluze internetového obchodu, ale pomáhá i vyvarovat se zbytečným chybám v podobě nepřesných informací a následnému zklamání zákazníka. Automatizovaný import produktů zajistí pravidelnou aktualizaci produktů v eshopu bez ohledu na to jestli jste jako administrátor do internetového obchodu vstoupili.
1 AUTOMATIZOVANÝ IMPORT PRODUKTŮ
Automatizovaný import je možné využít při napojení na velkoobchod dodavatele nebo účetní systémy se skladovým hospodářstvím.
1.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ů.
1.2 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
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
1.3 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/
XML soubor bude importován jako komprimovaným XML soubor ve formátu ZIP
Parametry API (použití metodou HTTP POST)
Název parametru | Popis |
login | 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 | 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 | 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 | Nabývá hodnoty: „XML-CLICKESHOP“ - struktura podporovaná ClickEshopom příklad: https://clickeshop.cz/napoveda/produkty/napojeni-na-dodavatele-xml-feed/m862 |
sync_type |
Nabývá hodnoty INSERT / UPDATE / MERGE
„UPDATE“ se provedou následující akce:
„MERGE“ se provedou následující akce:
„DELETE“ sa vykonajú nasledovné akcie:
|
file_data | 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) |
1.4 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.
1.5 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:
1.6 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
1.7 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.
1.7.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>
1.7.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
1.7.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
1.8 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