Revelor
Katalog rozkresů náhradních dílů napojený přes API na vyhledávání e-shopu
· Tomáš Drdla

Kasumex: díl najdete v rozkresu, dostupnost v e-shopu ověříte jedním klikem

Kasumex má vedle e-shopu portál s 1 083 rozkresy. Zákazník 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, žádný druhý feed.

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ď

  1. 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.
  2. 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.
  3. 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.
  4. …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:

PoleCo se z něj čte
code_match.exactzda dotaz přesně sedí na kód produktu; jen tehdy se díl označí jako dostupný
title, code, eannázev a identifikace produktu
urladresa produktu v e-shopu, z ní vede tlačítko Koupit
imgobrázek z CDN e-shopu
prices.CZK.formatted, formatted_excl_vatcena s DPH a bez DPH, už naformátovaná v měně obchodu
availability_text, availability_analytics, availability_quantitytext dostupnosti pro zákazníka, strojový stav (in_stock) a počet kusů
variants_with_availabilityvarianty 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):

MetrikaPředPo
Falešně pozitivní „přesné“ shody4 ze 1800
Shoda příznaku exact s nezávislým přísným porovnáním—180 / 180
Dotazů do API na jedno ověření dílu21
Výsledků na dotaz 503 28 32-08≈ 1 0004, 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ředPo
Odkaz do vyhledávání e-shopu, prázdná stránka nebo podobný dílKarta 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 stopyPředvyplněná poptávka a záznam, který díl chyběl
Dva weby, dvě představy o skladuJeden index, jedna pravda o dostupnosti a ceně
Žádná data o poptávce z portáluPř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.

Související články

Všechny články na blogu
Zpět na blog