Module documentation

Kontakty

Kontakty jsou jádrem každé zákaznicky orientované organizace — představují jednotnou evidenci všech osob a firem, se kterými komunikujete nebo obchodujete. Modul `/contact` proto sdružuje registrované účty, hosty vzniklé při jednorázových objednávkách, firemní partnery, testovací účty i archivované záznamy do jediného přehledu, na který navazují objednávky, reklamace, newslettery, kredit i historie e-mailové komunikace. Díky tomu není kontakt jen řádkem v databázi, ale živým profilem, v němž se sbíhá celý zákaznický vztah.

Last updated 24 April 2026

Kontakty jsou jádrem každé zákaznicky orientované organizace — představují jednotnou evidenci všech osob a firem, se kterými komunikujete nebo obchodujete. Modul /contact proto sdružuje registrované účty, hosty vzniklé při jednorázových objednávkách, firemní partnery, testovací účty i archivované záznamy do jediného přehledu, na který navazují objednávky, reklamace, newslettery, kredit i historie e-mailové komunikace. Díky tomu není kontakt jen řádkem v databázi, ale živým profilem, v němž se sbíhá celý zákaznický vztah.

Přehled kontaktů

Hlavní stránka je postavena jako pracovní nástroj pro denní správu zákaznické základny. Tabulka proto v každém řádku ukazuje nejen identifikaci osoby, ale také obchodní kontext — kolik peněz už zákazník utratil, jaké je jeho skóre spolehlivosti a kdy byl v systému naposledy aktivní. Tyto informace umožňují rychle rozlišit klíčového klienta od jednorázového hosta bez nutnosti otevírat detail.

Jednotlivé sloupce sdělují:

  • Jméno — plné jméno osoby, případně název firmy.
  • E-mail — primární adresa pro přihlášení i veškerou komunikaci.
  • Telefon — formátovaný podle národních pravidel pro snadnou čitelnost.
  • Kredit — aktuální zůstatek vedený paralelně v kreditech i v peněžní hodnotě.
  • Skóre důvěryhodnosti — automaticky vypočtené hodnocení kvality zákazníka v rozsahu 0 až 100.
  • Datum registrace — okamžik, kdy kontakt v systému vznikl.
  • Newsletter — aktuální stav přihlášky k odběru (schválen, čekání, zrušeno nebo ignorováno).
  • Tržby — celoživotní útrata z uhrazených objednávek.
  • Počet objednávek — součet nových, rozpracovaných, zaplacených a dokončených případů.
  • Refundy — souhrnná hodnota vrácených nebo stornovaných položek.
  • Poslední aktivita — čas posledního přihlášení nebo významné akce.

Tabulka se automaticky obnovuje každých 5 sekund, takže odráží stav co nejblíže reálnému času. Na mobilních zařízeních se přepíná na zhuštěný náhled, který ponechává jen nejdůležitější údaje.

Filtrování a hledání

Protože zákaznická databáze typicky roste do tisíců záznamů, je seznam vybaven kombinací filtrů, které lze vrstvit — každý zvolený filtr výběr dále zužuje. Díky tomu lze během okamžiku izolovat například „VIP zákazníky z Česka s kladným kreditem přihlášené k newsletteru".

K dispozici jsou tyto filtrační osy:

  • Registrovaný / host — registrovaný kontakt má nastavené heslo a vlastní účet, zatímco host vznikl bez registrace.
  • Prémiová verze — označení VIP zákazníků se zvláštními podmínkami.
  • Blokace — zákaz přístupu do uživatelského portálu.
  • Testovací účet — neprodukční kontakty vyloučené z obchodních přehledů.
  • Stav kreditu — kladný zůstatek, nula, případně dluh.
  • Přihlášení k newsletteru — filtr podle stavu odběru.
  • Datum registrace a poslední aktivity — libovolný časový rozsah.
  • Jazyková mutace — CZ, SK, EN a další jazyky komunikace.

Fulltextové hledání pokrývá jméno, e-mail, telefon i název firmy a ignoruje diakritiku i velikost písmen, takže „Novak", „novák" i „NOVÁK" vrátí stejný výsledek.

💡 Kontakty lze navíc seskupovat do vlastních tagů („VIP", „Velkoobchod", „Ambasadoři"). Filtr přijímá více skupin najednou; speciální hodnota „Bez tagů" najde kontakty bez jakéhokoli označení.

Jak funguje skóre důvěryhodnosti

Skóre důvěryhodnosti je celé číslo v rozsahu 0 až 100, které systém kontinuálně přepočítává z chování zákazníka. Vyjadřuje, jak spolehlivý obchodní partner daný kontakt je — vyšší hodnota znamená lepšího zákazníka. Skóre nelze upravit ručně; jde o odvozenou metriku, která má sloužit jako objektivní podklad pro rozhodnutí typu „komu nabídnout zvýhodněnou platbu na fakturu".

Do výpočtu vstupuje kombinace faktorů:

  • Stáří účtu — účty starší než rok získávají 20 bodů, starší než půl roku 10 bodů, novější 5 bodů.
  • Poměr uhrazených objednávek — zákazník platící více než 90 % objednávek získá bonus 20 bodů; dlouhodobě nízká platební morálka pod 50 % znamená srážku 10 bodů.
  • Kredit — kladný zůstatek přičítá 10 bodů, záporný zůstatek odebírá 5 bodů.
  • Prémiový status — VIP zákazníci mají bonus 10 bodů.
  • Registrace — kontakt s vlastním účtem získává 5 bodů navíc oproti hostovi.
  • Stornované objednávky — více než 5 storn znamená srážku 15 bodů, mezi 3 a 5 storny srážku 5 bodů.

ℹ️ Blokovaný kontakt má skóre nastaveno na hodnotu −1 a je automaticky vyloučen ze všech přehledů a výběrových kampaní.

Registrovaný kontakt vs. host

V systému žijí vedle sebe dva typy kontaktů, které se liší hloubkou zákaznického vztahu. Registrovaný kontakt má nastavené heslo, samostatný profil a přístup do uživatelského portálu, kde si může prohlížet historii objednávek a spravovat své údaje; za registraci navíc získává 5 bodů ke skóre. Host (anonymní zákazník) naopak vzniká automaticky při první objednávce bez registrace — do portálu se nedostane, ale historii mu systém stejně párování podle e-mailové adresy. Host se může kdykoli proměnit v registrovaný účet pouhým nastavením hesla, aniž by o cokoli z dosavadní historie přišel.

💡 Pokud vznikne duplicitní kontakt (například ručně založený v administraci a zároveň automaticky z objednávky), lze oba záznamy sloučit akcí Sloučit zákazníky — objednávky, kredit i veškerá historie přejdou na hlavní účet.

Blokace a testovací účty

Blokace slouží jako ostré opatření proti problematickým zákazníkům. Zakáže kontaktu přístup do portálu, zablokuje mu newsletter i zasílání automatických zpráv a při aktivaci lze zadat důvod, který zůstane v auditním záznamu. Akce je plně vratná — blokaci lze kdykoli zrušit. Testovací účet je oproti tomu čistě administrativní příznak pro interní QA a integrační testy; takový kontakt je automaticky skrytý v reportech, kampaních i statistikách, takže netvoří šum v obchodních datech.

⚠️ Blokace se projeví okamžitě. Pokud má zákazník otevřené přihlášení v mobilu či prohlížeči, lze ho navíc vynuceně odhlásit akcí Zneplatnit relace — musí se pak přihlásit znovu, což se mu už samozřejmě nepodaří.

Kredit

Kredit je interní platební prostředek, kterým lze u zákazníka držet předplacené prostředky, bonusy za loajalitu, dobropisy nebo dárkové vouchery. V systému je veden ve dvou paralelních hodnotách: jako počet kreditů (celé kladné nebo záporné číslo) a jako peněžní ekvivalent v měně organizace, který slouží pro účetní přehledy. Díky tomuto dvojímu vedení lze v účetnictví zobrazit skutečnou hodnotu závazku vůči zákazníkovi, i když se kredity samy používají jako univerzální jednotka.

V detailu kontaktu je k dispozici:

  • Aktuální zůstatek — okamžitý stav počtu kreditů i peněžní hodnoty.
  • Historie transakcí — seřazená od nejnovější, s autorem a důvodem změny.
  • Vazba na objednávku — u každé transakce je jasné, ve které objednávce byl kredit použit nebo vygenerován.
  • Volitelná platnost — kredit může mít datum expirace, po kterém se nevyčerpaný zůstatek odepisuje.

Ruční přidání kreditu provádí obsluha přes akci Přidat kredit v detailu. Každý záznam obsahuje částku, popis, autora změny a je uložen do auditního protokolu.

ℹ️ Pro platbu objednávky systém vždy používá poměr 1 kredit = 1 jednotka měny. Peněžní hodnota je pouze účetní evidencí a může se od počtu kreditů lišit — například u dárkových voucherů, které měly nulovou pořizovací cenu.

Měsíční limity čerpání

Každý kontakt má dva nezávislé limity pro maximální čerpání kreditu v kalendářním měsíci, které umožňují předejít nekontrolovanému vyčerpání zůstatku. Měkký limit při překročení zobrazí obsluze varování, ale transakci nezablokuje, zatímco tvrdý limit další čerpání rovnou zastaví a pro pokračování je nutné ruční schválení. Nulová hodnota v kterémkoli poli znamená, že daný limit není aktivní.

Historie objednávek

Každá objednávka se automaticky eviduje u kontaktu a tvoří základ pro analytiku — tržby, počet objednávek, refundy, první a poslední objednávku. Systém tato čísla materializuje do takzvaného čteného modelu, který se obnovuje při každé změně stavu objednávky. Díky tomu jsou přehledy tržeb a retence okamžitě k dispozici bez nutnosti opětovného počítání přes tisíce řádků.

Organizační hierarchie

Kontakty lze propojit vztahem nadřízený–podřízený a vytvořit tak organizační strom — typicky pro firemní zákazníky, kde existuje mateřská firma a její pobočky, nebo pro rodinné účty. Každý kontakt má nejvýše jednoho přímého nadřízeného a libovolný počet podřízených.

V detailu se hierarchie zobrazuje ve čtyřech úrovních:

  • Nadřízený — přímý rodič v hierarchii, kliknutím se přejde na jeho profil.
  • Podřízení — přímí potomci daného kontaktu.
  • Kolegové — kontakty sdílející stejného nadřízeného.
  • Organizační strom — vizualizace ve stylu Microsoft Teams s ancestory i celým podstromem.

Maximální hloubka stromu je 32 úrovní v každém směru a systém hlídá, aby nevznikl cyklus (rodič nemůže být zároveň potomkem svého potomka).

Vlastní pole (custom fields)

Každá organizace má svá specifika — někdo potřebuje evidovat velikost firmy, jiný IČO dodavatele nebo preferovanou velikost oblečení. Pro tyto případy lze k libovolnému kontaktu připojit vlastní pole typu text, číslo nebo výběr. Pole mohou být povinná, mohou mít nápovědu, zástupný text a regulární výraz pro validaci. Hodnoty se pak u kontaktů ukládají a zobrazují přímo v detailu vedle standardních údajů.

Proces hromadného importu

Hromadný import slouží k rychlému založení desítek až tisíců kontaktů — typicky po akci, veletrhu nebo při migraci ze starého systému. Průvodce vede obsluhu krok po kroku a zaručuje, že nevzniknou duplicity:

  1. Vložení dat — seznam e-mailů, případně i jmen, ručně nebo přes CSV.
  2. Parsování — systém automaticky rozdělí e-mail a jméno, očistí diakritiku a kapitalizuje křestní jméno i příjmení.
  3. Kontrola duplicit — porovnání s existujícími kontakty organizace; duplicitní e-maily se přeskakují.
  4. Náhled a potvrzení — obsluha vidí počet nových a přeskočených záznamů a může doplnit interní poznámku ke všem importovaným kontaktům.
  5. Dokončení — kontakty se založí s výchozím jazykem organizace a bez hesla, tedy jako hosté.

💡 Do interní poznámky při importu doporučujeme zapsat zdroj dat (například „Veletrh 2026-03") — později podle ní skupinu snadno dohledáte a můžete ji oslovit cílenou kampaní.

Relace, hesla a API klíče

Detail kontaktu obsahuje samostatnou sekci věnovanou bezpečnosti přihlášení. Obsluha zde vidí aktivní relace, může vynuceně odhlásit konkrétní zařízení, prohlédnout si protokol změn hesla a v případě potřeby vygenerovat reset. U technicky zaměřených kontaktů jsou navíc k dispozici API klíče a pracovní prostory (workspaces), barevně odlišené podle prostoru.

Konkrétně zde najdete:

  • Relace — seznam přihlášených zařízení s možností vynuceného odhlášení.
  • Protokol změny hesla — datumy všech změn hesla (nikoli hashe samotné).
  • Reset hesla — vygeneruje jednorázový odkaz a zašle ho na e-mail kontaktu.
  • API klíče a pracovní prostory — klíče pro technické integrace, barevně rozlišené podle prostoru.

Souhlasy (consents)

Systém odděleně eviduje souhlasy s odběrem newsletteru, marketingovou komunikací a zpracováním osobních údajů podle GDPR. Každá změna — tedy udělení nebo odvolání souhlasu — se ukládá s časovým razítkem, zdrojem (administrátor / web) a volitelnou poznámkou, takže je kdykoli doložitelné, kdy a jakým způsobem souhlas vznikl nebo zanikl.

Mazání s důvodem

Smazání kontaktu z kontextového menu řádku je takzvaně měkké — kontakt zůstane uložen, ale je skryt ze všech přehledů a nelze ho znovu použít pro přihlášení. Při mazání je vždy vyžadován důvod, který se uloží do auditního záznamu. Tento mechanismus chrání historii a umožňuje audit, kdo a proč kontakt odstranil.

⚠️ Kontakt nelze smazat opakovaně a obnovení smazaného záznamu již není dostupné v běžné administraci. Pokud potřebujete kontakt vrátit, obraťte se na technickou podporu.

Akce v řádku

Přímo z přehledu lze bez otevírání detailu provést několik operací, které šetří čas při rutinní práci. Kontextové menu řádku nabízí:

  • Otevřít detail — kompletní profil zákazníka se všemi záložkami.
  • Přidat kredit — rychlá úprava zůstatku s povinným uvedením důvodu.
  • Blokovat / odblokovat — okamžitá změna přístupu do portálu.
  • Zneplatnit relace — nucené odhlášení zákazníka ze všech zařízení.
  • Smazat kontakt — měkké smazání s povinným důvodem.

Build with the API

Every module shipped here is also exposed via the REST API.