Propojojení na interní informační systém zákazníka
Aplikace KASA FIK umožňuje dynamicky integrovat webové aplikace zákazníka pomocí integrovaného tlačítka nebo funkční klávesy.
Funkce je dostupná pouze s licencí PREMIUM
Princip funkce - workflow
- Uživateli se zobrazí nové nastavitelné tlačítko na hlavní obrazovce
- Po klepnutí na tlačítko se načte webová aplikace, která je plně pod kontrolou zákazníka
- Ve webové aplikace může být umístěno tlačítko, které po kliknutí přenese uživatele zpět do aplikace a vyplní automaticky účtenku
- KASA FIK provede zaúčtování EET případně platbu kartou
- Integraci lze nastavit i na funkční klávesu při prodeji
- Informace o vystavení účtenek lze získat přes Webhook API
Ukázková stránka
Vytvořili jsme ukázkovou stránku, ve které můžete vidět funkce, které lze využít při práci v aplikaci a návrtatu hodnot.
Příklad poskytnutých parametrů v URL:
partner_code=XXXXX&utm_source=app-com.eetterminal.pos&utm_medium=app&utm_campaign=fik-integration&app_flavor=fik&app_version=1.181-beta12-debug&app_version_code=181&app_lang=cs&shop_id=848428671200000&cash_register_id=2044577243700000&shift_id=5132358187320000
Query String poskytnutý při volání URL
- partner_code - Partnerský kód, pokud je nastaven
- utm_source - Google UTM měřící kód. Hodnota "app-com.eetterminal.pos"
- utm_medium - Google UTM měřící kód. Hodnota "app"
- utm_campaign- Google UTM měřící kód. Hodnota "fik-integration"
- app_flavor - Typ aplikace- Hodnota "fik"
- app_version - Textový popis verze aplikace. Např. 1.180-beta1
- app_version_code - Kód verze aplikace např. 180
- app_lang - Jazyk, ve kterém je nastavena aplikace (cs pro češtinu)
- global_customer_id - Globální ID zákazníka
- shop_id - ID pobočky
- cash_register_id - ID pokladny
- shift_id - ID současné směny - Hodnota 0 pro uzavřenou směnu
- employee_id - ID aktuálně přihlášeného zaměstnance. Hodnota 0 pokud není nikdo přihlášen
- user_email - Email pod kterým je evidována pokladna
Specifikace integrace
Aplikace načte uživatetem přednastavené URL, které obohatí o Query String s dalšími parametry. Rozšíří Javascript funkce o interface window.FikApiInterface
který obsahuje metody použitelné k propojení nativní Android aplikace s webovou.
if (window.FikApiInterface){
window.FikApiInterface.logError('heyho'); // log error message to android console
window.FikApiInterface.logInfo('heyho'); // log info message to android console
window.FikApiInterface.setTitle(document.title); // sets title of the window
window.FikApiInterface.showToast('heyho'); // shows small toast notification
// window.FikApiInterface.finish(); // Will close the window without any result
// window.FikApiInterface.finishWithReceipt(JSON.stringify(obj)); // return back to the app with receipt data
} else {
// Not loaded within Fik Webapp container
}
Návrat účtenky do aplikace
Zavolejte metodu window.FikApiInterface.finishWithReceipt(JSON.stringify(obj))
s následujícim JSON objektem:
{
"invoice_number": 20130001, // optional, will be generated if not provided
"note": "strestt", // optional
"items": [
{
"plu": "203", // optional
"note": "Item optional note" // optional
"name": "Item number 203",
"price_without_vat": 112.0,
"quantity": 1.0,
"vat_rate": 1.21
}
]
}
Poznámky k poskytovanému objektu:
- Hodnota musí být
J
, protože Web integrace neumožňuje přenášet objekty.SON.JSON.stringify() - Pokud je vše v pořádku, aplikace uzavře integraci a přenese uživatele do režimu vystavení účtenky
- Pokud nebude vyplněná hodnota
invoice_number
aplikace vygeneruje standarně podle číselné řady (doporučené) - DPH je v desetinném formátu, tedy 1.21, 1.10, 1.00 - nevyplňujte, pokud se jedná o neplátce
Nastavení expirace a vliv na cache (expire)
Webová integrace respektuje správné nastavení cache hlavičky pro ukládání do paměti prohlížeče. Nastavíte-li správné Expire v HTTP hlavičce, bude se respektovat.
Aplikace má také podporu pro ukládání databází a Webstorage.