Kasumex prodává náhradní díly na pily, křovinořezy a sekačky přes e-shop na Shoptetu. Vedle něj provozuje samostatný portál rozkresy.kasumex.cz s 1 083 rozkresy. Zákazník tam najde díl ve výkresu a dřív musel sám zjišťovat, jestli ho e-shop má. Teď u každého dílu klikne na Ověřit dostupnost a hned vidí cenu a sklad, nebo rovnou pošle poptávku. Stačilo jedno volání Revelor API, druhý produktový feed jsme stavět nemuseli.
- 1 083 rozkresů ve 21 kategoriích
- 21 000+ katalogových čísel dílů
- 1 dotaz do API na jedno ověření dílu
- 0 falešných „přesných“ shod na vzorku 180 skutečných kódů
Klient a výchozí stav
Kasumex je e-shop s náhradními díly na zahradní a lesní techniku, s jazykovými mutacemi pro Slovensko, Chorvatsko a Slovinsko. Zákazník, který opravuje pilu nebo sekačku, obvykle nehledá „karburátor“. Hledá konkrétní díl s konkrétním číslem, a to číslo najde v rozkresu svého stroje.
Proto Kasumex provozuje vedle e-shopu portál s rozkresy na WordPressu. Pokrývá stroje tří značek, pod každým rozkresem je tabulka dílů s pozicí ve výkresu, názvem a katalogovým číslem. Dohromady přes 21 000 čísel.
Portál a e-shop o sobě ale nevěděly. U dílu byl jen odkaz do vyhledávání e-shopu podle kódu. Ten často skončil prázdnou stránkou, nebo ještě hůř nepřesnou shodou: vyhledávání tolerantní k překlepům vrátilo díl s podobným číslem. Zákazník odešel bez odpovědi a Kasumex se nedozvěděl, o jaký díl byl zájem.
Zadání: nikdy neukázat jiný díl jako „skladem“
U katalogových čísel je podobné číslo jiný díl. Kdo si podle rozkresu objedná těsnění s jedním přehozeným znakem, vrací zboží a příště nakoupí jinde. Další požadavky:
- odpověď přímo v portálu, bez odchodu do e-shopu a bez přepisování kódu,
- cena a sklad přesně podle e-shopu, bez druhého feedu, který by zastarával,
- když díl e-shop nemá, nesmí to být slepá ulička,
- měřitelnost: kolik lidí ověřuje, co najdou a kolik jich přejde do e-shopu.
Co zákazník vidí teď
- Najde díl ve výkresu. Otevře rozkres svého stroje a v tabulce pod ním díl vyhledá podle názvu nebo čísla.
- Klikne na Ověřit dostupnost. U každého dílu je jedno tlačítko. Žádný odchod z portálu, žádné opisování kódu.
- Dostane kartu produktu. Obrázek, kód, název, dostupnost, cena s DPH i bez a tlačítko Koupit na kasumex.cz, které vede přímo na produkt.
- …nebo poptávku. Když díl v e-shopu není, otevře se formulář s předvyplněným dílem, kódem a rozkresem. Zákazník doplní jméno a e-mail a poptávka jde e-shopu.
Když díl e-shop nemá, portál nenabízí žádný „podobný“ produkt. Zákazník dostane jasnou odpověď a možnost díl poptat. Vyzkoušet si to můžete třeba na rozkresu motorové pily.
Hledání v portálu navíc najde rozkres i podle kódu dílu, a to v jakémkoli zápisu: 503 28 32-08, 503-28-32-08 i 503283208 vedou na stejný výsledek.
Jak je to napojené
Revelor drží aktuální katalog e-shopu ve vyhledávacím indexu. Portál se ho proto ptá přímo, místo aby si katalog kopíroval. Veřejné API je stejné rozhraní, na kterém stojí našeptávač Revelor. Dotaz je jedno volání s identifikátorem projektu a limity pro jednotlivé sekce, portál potřebuje jen produkty:
GET https://<projekt>.revelor.cz/api/public/suggestions
?q=503283208
&projectId=<id>
&products_limit=12
&categories_limit=0&articles_limit=0&brands_limit=0
Odpověď nese všechno, co karta produktu potřebuje:
| Pole | Co se z něj čte |
|---|---|
code_match.exact | zda dotaz přesně sedí na kód produktu; jen tehdy se díl označí jako dostupný |
title, code, ean | název a identifikace produktu |
url | adresa produktu v e-shopu, z ní vede tlačítko Koupit |
img | obrázek z CDN e-shopu |
prices.CZK.formatted, formatted_excl_vat | cena s DPH a bez DPH, už naformátovaná v měně obchodu |
availability_text, availability_analytics, availability_quantity | text dostupnosti pro zákazníka, strojový stav (in_stock) a počet kusů |
variants_with_availability | varianty s vlastními kódy a dostupností |
Proč volá API server portálu, a ne prohlížeč
Rozhraní by šlo volat i přímo ze stránky, přístup je povolený podle domény. Portál má ale mezi zákazníkem a Revelorem vlastní malý endpoint, protože tím získá tři věci najednou:
- Cache. Výsledek pro jeden kód se drží 30 minut, takže sto lidí na stejném rozkresu znamená jedno volání.
- Pojistku proti zneužití. 120 ověření za 10 minut na návštěvníka, bez ukládání IP adresy.
- Log. Každé ověření se zapíše do administrace: díl, rozkres, výsledek a nalezený produkt. Z toho je přehled a CSV pro nákup.
Na straně Kasumexu nebylo potřeba nic měnit. Žádný export, žádná synchronizace skladu, žádný import cen. Když se v e-shopu změní cena nebo dostupnost, portál to ukáže při příštím ověření.
Na čem záleželo: přesná shoda musí být přesná
Katalogová čísla nejsou slova. Fuzzy hledání, které skvěle zvládá překlepy v „křovinořez“, vracelo na dotaz 503 28 32-08 kolem tisíce podobných produktů. Pro zákazníka, který hledá konkrétní díl, je „podobný“ díl špatný díl.
Proto jsme kvůli tomuto projektu upravili samotný Revelor. Čísla z názvů a popisů produktů teď ukládá do samostatného normalizovaného pole (bez mezer a pomlček, velkými písmeny). Když dotaz vypadá jako kód, výsledky se ořežou na produkty, které to číslo skutečně nesou, a odpověď dostane pole code_match. Jeho příznak exact je pravda jen při úplné shodě, bez tolerance překlepů. Portál označí díl jako dostupný jen při exact: true, všechno ostatní je pro něj „nenalezeno“.
Jak jsme to měřili a ladili, popisuje samostatný článek o hledání podle kódů dílů.
Výsledky
Technické měření před spuštěním na vzorku 180 skutečných katalogových čísel (září 2026):
| Metrika | Před | Po |
|---|---|---|
| Falešně pozitivní „přesné“ shody | 4 ze 180 | 0 |
Shoda příznaku exact s nezávislým přísným porovnáním | — | 180 / 180 |
| Dotazů do API na jedno ověření dílu | 2 | 1 |
Výsledků na dotaz 503 28 32-08 | ≈ 1 000 | 4, správný díl první |
Měření ukázalo i to, že velká část katalogových čísel v e-shopu není. To není chyba vyhledávání, e-shop prostě nemá skladem každé číslo z každého rozkresu. Dřív ale zákazník u chybějícího dílu dostal stovky nesouvisejících položek. Teď dostane jasné „nemáme“ a možnost díl poptat.
Co se změnilo pro obchod:
| Před | Po |
|---|---|
| Odkaz do vyhledávání e-shopu, prázdná stránka nebo podobný díl | Karta produktu s cenou a tlačítkem Koupit přímo v portálu |
| Zákazník s chybějícím dílem odchází beze stopy | Předvyplněná poptávka a záznam, který díl chyběl |
| Dva weby, dvě představy o skladu | Jeden index, jedna pravda o dostupnosti a ceně |
| Žádná data o poptávce z portálu | Přehled ověření: které díly lidé hledají a e-shop je nemá |
Co si z toho vzít pro jiné e-shopy
- Obsah mimo e-shop může prodávat. Katalog, návody, blog, B2B portál nebo aplikace se můžou ptát stejného indexu jako našeptávač. Ceny a sklad se nemusí kopírovat.
- Napojte se na index, ne na feed. Feed zastarává od chvíle, kdy ho vygenerujete. Index odpovídá tím, co e-shop ukazuje právě teď.
- U kódů chtějte příznak, ne jen seznam. Pro člověka je 200 podobných produktů nabídka. Program bez příznaku přesné shody nepozná, jestli díl našel.
- Dejte mezi web a API vlastní endpoint. Cache, ochrana proti vytěžování a log jsou malá práce, která se vrátí hned první týden.
- „Nenalezeno“ jsou taky data. Seznam dílů, které zákazníci chtěli a nedostali, je nejlevnější průzkum sortimentu, jaký seženete.
Ověřování dostupnosti nasazeno v září 2026 na portálu rozkresy.kasumex.cz (WordPress) napojeném na e-shop kasumex.cz. Portál i napojení jsme postavili my ve Webotvůrcích, tvůrci Reveloru.
Máte vedle e-shopu katalog, B2B portál nebo interní nástroj, který by měl odpovídat stejnými daty jako e-shop? Ozvěte se nám. Nad vaším sortimentem vám ukážeme, co Revelor API vrací, ještě než se do napojení pustíte.

