Custom napojení

Úvod 

Samotná komunikace mezi Vaším eshopem a službou shopstato.com je řešena přes REST API.  SHOPSTATO API Vám nikterak nebude zasahovat do Vašeho systému, jen z něj bude čerpat informace. Samotná implementace vychází z předpokladu, že implementátor má základní znalosti  PHP, práci rest API, curl. 

Postup implementace

Pro účely vývoje napojení a testování doporučujeme použit naše DOMO, kde si vše můžete vyzkoušet. Napojení na produkci, doporučujeme až máte opravdu napojení řádně otestované. Protože na zpětné nárokování chyb v napojení na produkci, již nebude bráno zřetel. 

1) Zaregistrujte se na této adrese

https://demo.shopstato.com/register

Jako e-shopové řešení vyberte volbu “vlastní e-shopové řešení”. Propojení woocommerce se SHOPSTATO využívá naše API, tím budete mít vždy automaticky zajištěné nové funkce API.

2) Po dokončení registrace budete přesměrovaní do nastavení Vašeho e-shopu. Pro zajištění správné funkčnosti prosím vyplňte veškeré údaje.

Než kliknete na tlačítko Uložit zkopírujte přístupové údaje do Vašeho e-shopu. Jedná se o políčko TOKEN a adresa API pro nastavení v Shopstato.com.

Nastavení v Shopstato.com

3) Pro snažíš implementaci jsme pro Vás připravil jednoduchý ukázkový php kód, který Vám může být inspirací při napojení Vašeho eshopu.

Vše podstatné se nastavuje v souboru config.php. Konstanta URL_API je před nastavená, pokud Vám nebyla sdělená jiná adresa nechte předvyplněnou adresu.

V následujícím řádku vyplňte token, který Vám byl přidělen při registraci Vašeho e-shopu, viz. krok č. 2.

Token musí být v uvozovkách. 

Ukázka před vyplněním

Ukázka po vyplnění

Pokud vše správně vyplníte a zavoláte script client.php
Zobrazí se Vám odpověď z API v json formátu

4) přenos objednávek do eshopu
informace o objednávce jsou uložené v poli,  se skládá z hlavičky objednávky, informaci o uživateli a seznamu produktů.

Popis jednotlivých prvků 

$order[‘order’][‘code’] string -> kód objednávky max. délka 15znaků
$order[‘order’][‘createDate’] string -> // datum vytvoření objednávky ISO YYYY-MM-DD HH:ii:ss
$order[‘order’][‘updateDate’] string -> // datum aktualizace objednávky ISO YYYY-MM-DD HH:ii:ss
$order[‘order’][‘totalPrice’] decimal -> // cena celé objednávky s dph
$order[‘order’][‘withoutVat’] decimal -> // cena celé objednávky bez dph
$order[‘order’][‘currency’]  integer -> // 1 ->CZK, 2 ->EURO
$order[‘order’][‘shipping’] decimal -> //cena dopravy bez dph
$order[‘order’][‘payment’]  decimal -> //cena platby bez dph
$order[‘order’][‘statusOrder’] string -> //název stavu objednávky,max. délka 100znaků, povinný údaj
$order[‘order’][‘weight’] decimal -> //váha v kg
$order[‘order’][‘otherId’] integer -> // id objednávky např z DB
$order[‘order’][‘shippingName’] string -> // název dopravy,max. délka 100znaků, povinný údaj
$order[‘order’][‘paymentName’] string -> // název platby max. délka 100znaků, povinný údaj
$order[‘order’][‘shippingVat’] integer -> // dph dopravy, povinný údaj
$order[‘order’][‘paymentVat’] integer -> // dph platby, povinný údaj
$order[‘order’][‘paid’] integer -> // zda je objednávka zaplacena, pokud ano 1 pokud ne 0
$order[‘customer’][‘ip’] string -> // ip adresa
$order[‘address’][‘name’] string -> // fakturační jméno max. délka 100znaků
$order[‘address’][‘surname’] string -> // fakturační přijmení max. délka 100znaků
$order[‘address’][‘street’] string -> // fakturační ulice max. délka 100znaků, povinný údaj
$order[‘address’][‘town’] string -> // fakturační město max. délka 100znaků, povinný údaj
$order[‘address’][‘zip’] integer -> // fakturační psč max. délka 100znaků, povinný údaj
$order[‘address’][‘country’] integer -> // fakturační stát, 1-> CZ, 2-> SK , povinný údaj
$order[‘address’][‘company’] string -> // fakturační název spolčenosti max. délka 100znaků
$order[‘address’][‘crn’] integer -> // fakturační ič
$order[‘address’][‘taxId’] string -> // fakturační dič
$order[‘address’][‘crnVatId’] integer -> // jen pro SK
$order[‘address’][’email’] string -> // fakturační email, povinný údaj
$order[‘address’][‘phone’] string -> // fakturační telefon, povinný údaj
$order[‘address’][‘deliveryName’] string -> // doručovací jméno max. délka 100znaků
$order[‘address’][‘deliverySurname’] string -> // doručovací přijmení max. délka 100znaků
$order[‘address’][‘deliveryStreet’] string -> // doručovací ulice max. délka 100znaků
$order[‘address’][‘deliveryTown’] string -> // doručovací město max. délka 100znaků
$order[‘address’][‘deliveryZip’] integer -> // doručovací psč max. délka 100znaků
$order[‘address’][‘deliveryPhone’] string -> // doručovací telefon
$order[‘address’][‘deliveryCountry’] integer -> // doručovací stát 1-> CZ, 2-> SK
$order[‘address’][‘deliveryCompany’] string -> // doručovací společnost, max. délka 100znaků
$order[‘address’][‘deliveryCrn’] integer -> // doručovací ič
$order[‘address’][‘deliveryTaxId’] string -> // doručovací dič
$order[‘address’][‘deliveryCrnVatId’] string -> //pro SK
$order[‘address’][‘deliveryEmail’] string -> // doručovací email
$items = [];
$product = [];
$product[‘productId’] integer -> //id produktu , povinný údaj, musí být unikátní id
$product[‘code’] string -> // kód produktu , povinný údaj
$product[‘ean’] integer -> //ean produktu
$product[‘name’] string ->  // název produktu, max. délka 120znaků, povinný údaj
$product[‘count’] decimal -> // počet kusů, povinný údaj
$product[‘price’] decimal -> // cena bez dph, povinný údaj
$product[‘priceVat’] decimal -> // cena s dph  , povinný údaj
$product[‘vat’] integer -> //dph sazba, povinný údaj
$product[‘weight’] decimal ->; // v kg
$product[‘producer’] string -> // vyrobce
$product[‘unitText’] string -> // jednotka
$product[‘buyPriceWithVat’] decimal -> // nakpní cena s dph
$product[‘buyPriceWihoutVat’] decimal -> // nakupní cena bez dph
$product[‘buyPriceVat’] integer ->// dph sazba
$product[‘warranty’] integer -> // zároku
$product[‘discoutPrice’] decimal ->
$product[‘discountPercent’] decimal ->
$product[‘originalPrice’] decimal ->
$items[] = $product;
$items[] = $product;
$order[‘items’] = $items;
$orders[] = $order;
Funkční kód najdete ve scriptu orders.php

5)  Skladové zásoby
Slouží pro výpočty obratkovosti  dalších ukazatelů výkonnosti e-shopu. Skladové zásoby se můžou posílat 1x za 7dní 

Všechny 3 parametry jsou povinné. 

$stocks=[

    [

    ‘productId’=> id produkt, musí být stejné které se posílá v v objednávce u položky

    ‘amount’=> počet kusů na skladě

    ‘code’=> kód produktu

    ],

];

Ukázku použití najdete ve skriptu stock.php

Závěr

Nedoporučujeme přenášet hned staré objednávky. Nejdříve si zkuste vytvořit jednu objednávku jako Váš zákazník, čili projdete celým nákupním procesem.

Jednak si ověříte, že implementace Vám nijak neohrozila chod Vašeho e-shopu a zadruhé se Vám budou lépe kontrolovat přenesená data do Shopstato.com.

Co vše kontrolovat u objednávky přenesené z Vašeho eshopu do Shopstato.com?

Testovací objednávka by měla obsahovat více produktů, každý produkt by měl být v jiném množství, např triko ve velikosti M koupeno 2x, propiska 10x, stůl 1x atp.

Při kontrole se zaměřte na

1) cena objednávky – pozor v shopstato cena objednávky je očištěna o dph, poplatek za dopravu a platbu
2) počty a ceny jednotlivých produktů
3) informace o zákazníkovi – kontakt, adresa

Testovacích objednávek udělejte vícero.
Tento testovací proces běží na našem demu, kde se nedají objednat žádné moduly ani kredity. Můžete do systému přenést maximálně 60 objednávek.

Ukázka skriptu ke stažení

https://www.shopstato.com/custom-api-script.zip

Zpětný import objednávek

SHOPSTATO analyzuje objednávky maximálně jeden rok zpětně od dne registrace. Starší objednávky je možno zpracovat také, a to právě pomocí funkce Zpětný import objednávek.

Tato funkce se nachází v administraci pod záložkou Importy, viz obrázek.

Po kliknutí na Zpětný import systém naimportuje objednávky dalších 365 dní zpět od data nejstarší zpracované objednávky.

Pokud máte nejstarší objednávku v systému z 15. 12. 2020, tak po použití funkce Zpětný import objednávek bude nestarší objednávka v systému ze dne 15. 12. 2019.

Takto lze zpětně importovat objednávky i opakovaně až do maximálního limitu pro počet zpracovaných objednávek v tarifu.  

Zpětný import je zpoplatněn částkou 1 000 kreditů.  

Plugin k napojení woocommerce

Instalace pluginu.

1) Plugin si stáhněte z odkazu a nahrajte si jej do systému. 

2) Instalace pluginu ve woocomerce

3) aktivujte plugin

4) nastavení propojení eshopu se shopstato

5) Zaregistrujte se na této adrese

https://demo.shopstato.com/register

Jako e-shopové řešení vyberte volbu “vlastní e-shopové řešení”. Propojení woocommerce se SHOPSTATO využívá naše API, tím budete mít vždy automaticky zajištěné nové funkce API.

6) Po dokončení registrace budete přesměrovaní do nastavení Vašeho e-shopu. Pro zajištění správné funkčnosti prosím vyplňte veškeré údaje.

Než kliknete na tlačítko Uložit zkopírujte přístupové údaje do Vašeho e-shopu. Jedná se o políčko TOKEN a adresa API pro nastavení v Shopstato.com.

Nastavení v Shopstato.com

Nastavení ve woocomerce

Obě nastavení poté uložte.

Po uložení ve Woocomerce se Vám změní nastavení takto.

Nedoporučujeme přenášet hned staré objednávky. Nejdříve si zkuste vytvořit jednu objednávku jako Váš zákazník, čili projdete celým nákupním procesem.

Jednak si ověříte, že plugin Vám nijak neohrozil chod Vašeho e-shopu a zadruhé se Vám budou lépe kontrolovat přenesená data do Shopstato.com.

Co vše kontrolovat u objednávky přenesené z Woocommerce do Shopstato.com?

Testovací objednávka by měla obsahovat více produktů, každý produkt by měl být v jiném množství, např triko ve velikosti M koupeno 2x, propiska 10x, stůl 1x atp.

Při kontrole se zaměřte na

1) cena objednávky – pozor v shopstato cena objednávky je očištěna o dph, poplatek za dopravu a platbu
2) počty a ceny jednotlivých produktů
3) informace o zákazníkovi – kontakt, adresa

Testovacích objednávek udělejte vícero.

Tento testovací proces běží na našem demu, kde se nedají objednat žádné moduly ani kredity. Můžete do systému přenést maximálně 60 objednávek.

OBCHODNÍ UJEDNÁNÍ:

PROTOŽE SE JEDNÁ O TESTOVACÍ REŽIM, DOPORUČUJEME SI VŠE NEJDŘÍVE VYZKOUŠET NA VAŠEM TESTOVACÍM ESHOPU. NIKDY NEZKOUŠEJTE PLUGIN NA ESHOPU, KTERÝ BĚŽÍ V KOMERČNÍM REŽIMU!

DATA CONNECTION S.R.O. JAKO AUTOR PLUGINU SE ZŘÍKÁ JAKÉKOLIV ODPOVĚDNOSTI ZA ŠKODY VZNIKLÉ POUŽÍVÁNÍM TOHOTO PLUGINU, JAKO JE ZPOMALENÍ SYSTÉMU, PROBLÉMY PŘI DOKONČENÍ OBJEDNÁVKY, KONFLIKTY S JINÝMI PLUGINY A DALŠÍMI MOŽNÝMI KOMPLIKACEMI. VEŠKEROU ZODPOVĚDNOST PŘI PRÁCI S TÍMTO PLUGINEM PŘEBÍRÁ OSOBA, KTERÁ INSTALUJE TENTO PLUGIN DO E-SHOPU.

NECHCEME SE ZBAVOVAT JEN TAK JEDNODUŠE ZODPOVĚDNOSTI, ALE VZHLEDEM K FAKTU, ŽE WOOCOMMERCE JE OPENSOURCE SYSTÉM, NEMŮŽE VŽDY RUČIT ZA SPRÁVNOU FUNKČNOST NA VŠECH ÚPRAVÁCH SYSTÉMU.

SAMOTNÝ PLUGIN PRACUJE TAK, ŽE PŘENÁŠÍ OBJEDNÁVKY DO SLUŽBY SHOPSTATO JEN V PŘÍPADĚ,ŽE JE OBJEDNÁVKA VYTVOŘENÁ, NEBO SE ZMĚNÍ JEJÍ STAV. SPOLU S OBJEDNÁVKAMI UMOŽŇUJE PŘENÁŠET SKLADOVÉ ZÁSOBY. 

PLUGIN NEPŘEPISUJE ŽÁDNÁ DATA NA STRANĚ E-SHOPU ANI V OBJEDNÁVKÁCH, ANI VE SKLADOVÝCH ZÁSOBÁCH.

INSTALACÍ DLE NÁVODU VYJADŘUJETE SOUHLAS S TĚMITO PODMÍNKAMI.

Modul ZISKY

Spustili jsme asi nejdůležitější modul našich statistik – Zisky. Po importu nákupních cen jsme schopni ukázat, kolik vyděláte na každé objednávce nebo jak si stojí se ziskovostí jednotlivé produkty. Zisky uvadíme u produků i u jednotlivých objednávek. Zisk je vždy bez DPH a u objednávek i bez dopravy. Prostě čistý zisk.


Podmínkou fungování je import nákupních cen. Ten se platforem SHoptet a UPGates provádí automaticky. U platformy Eshop-rychle je nutné jej naimportovat přes administraci SHOPSTATO.com importem CSV souboru, ve kterém budou uvedeny nákupní ceny. 


Pro úspěšný import je nutno dodržet následující podmínky: 

  • pořádí sloupců: kód produktu/název produktu; nákupní cena bez DPH; nákupní cena s DPH; sazba DPH
  • sloupce musí být oddělené středníkem a musí se použivávat desetinná čarka!
  • kódování souboru musí být v UTF-8

Upozorňujeme, že import může trvat u rozsáhlých souborů i několik minut. Proto prosím zachovejte trpělivost. O úspěšném importu budete informování e-mailem. 
Jakmile se ceny naimportují, je možno aktivovat modul Zisky v administraci modulu. Po aktivaci se začnou zobrazovat statistiky se zisky automaticky. 

UPgates – jak na napojení?

Nejprve je potřeba připravit e-shop na propojení v administraci Upgates. Toto se provádí pomocí API. V levém menu vybereme Propojení – API.

V této nabídce klikneme na +NOVÝ. Je třeba si toto propojení pojmenovat. Doporučujeme pro snadnější vyhledávání Shopstato a zatrhnout informace, které chcete s námi sdílet. Bude stačit, abyste nám povolili data číst. A to minimálně tyto body Zákaznici, Objednávky, Produkty.

Po odkliknutí ULOŽIT, tomuto připojení systém automaticky vytvoří login a klíč API. Tyto údaje jsou důležité a budete je zadávat v systému Shopstato.

V Shopstato si zvolíte typ eshopu Upgates. Do URL adresy zadáte URL, kterou získáte v administraci vašeho obchodu: Propojení-API. Do přihlašovacího jména vyplníte login a do přihlašovacího hesla pak klíč API (jak je získat informace viz předchozí odstavec).

Do zbylých polích vyplníte své cíle a čím se Váš eshop zabývá a pak stačí už jen odkliknout Odeslat.

Aktualizace: Únor 2021

Aktualizace: Únor 2021

V roce 2021 měníme způsob vydávání aktualizací. Nově se budeme více zaměřovat na průběžné “menší” aktualizace (opravy, úpravy a ladění stávajících funkcí) a jednou měsíčně pak bude následovat “velká” aktualizace, která bude přinášet nové funkce/moduly. Na čem se přesně v průběhu tohoto měsíce zapracovalo?

Read more