Integrace e-shopu s ERP a skládovým systémem

Proč integrovat e-shop s ERP a skladem

Napojení e-shopu na ERP a skladový systém (WMS) je zásadní pro získání přesných dat o dostupnosti, cenotvorbě, účetnictví, plnění objednávek a řízení zásob. Cílem je eliminovat ruční přepisování, minimalizovat chyby, zkrátit order-to-cash cyklus a umožnit škálování při sezónních špičkách. Dobře navržená integrace vytváří jednotný zdroj pravdy (single source of truth) pro katalog, zásoby, ceny, zákazníky a objednávky s měřitelnými SLA a auditovatelností procesů.

Domény dat a datové toky

  • Katalog: produkty, varianty, atributy, kategorie, média, lokalizace, stavebnice (BOM, bundly), sady a náhradní díly.
  • Cenotvorba a promo: základní ceny, ceníky, slevy, kupony, akce, individuální ceny B2B.
  • Zásoby: dostupnost, rezervace, alokace, šarže/loty, expirace, sériová čísla, více skladů.
  • Zákazník: účty, adresáře, účetní segmenty, B2B hierarchie, platební a kreditní limity.
  • Objednávky: položky, stavy, platby, fakturace, dodací listy, expedice, vratky a reklamace (RMA).
  • Doklady: nabídky, zálohové faktury, dobropisy, skladové převodky, inventury.

Architektonické vzory integrace

  • Point-to-point API: e-shop ↔ ERP/WMS. Nízká latence, nižší flexibilita při rozšiřování.
  • Middleware/iPaaS/ESB: centrální integrační vrstva (např. iPaaS) pro mapování, validaci a orchestraci toků.
  • Event-driven: pub/sub s událostmi (ProductUpdated, StockChanged, OrderPlaced) přes message broker.
  • Batch/ETL: periodické dávky pro velké objemy (např. hromadná aktualizace cen) s kontrolovaným časovým oknem.
  • Hybrid: real-time integrace pro zásoby a objednávky, batch pro katalog a média.

Směrování autority („system of record“)

  • Katalog: PIM/ERP jako autorita; e-shop vykonává prezentaci a merchandising.
  • Ceny: ERP/pricing engine; e-shop cachuje a kalkuluje v košíku dle pravidel.
  • Zásoby: WMS/ERP; e-shop zobrazuje ATP a provádí rezervace přes API.
  • Objednávky: e-shop přijímá objednávky, ERP je účetní autorita; WMS je autorita expedice.

Synchronizační strategie a konzistence

  • Near-real-time (sekundy až minuty) pro zásoby, stavy objednávek a ceny citlivé na trh.
  • Batch (hodiny) pro obrázky a popisy; využití delta feedů a change data capture (CDC).
  • Konzistence: eventual consistent pro dostupnost; strong consistent pro finanční doklady a rezervace.
  • Idempotence: všechny integrační operace musí být idempotentní (opakovat je lze bez vedlejších efektů).

API kontrakty a formáty

  • REST/JSON pro CRUD a synchronní dotazy (cenotvorba, košík, rezervace).
  • GraphQL pro selektivní čtení katalogu a kombinované pohledy; pozor na složitost dotazů.
  • gRPC pro nízkou latenci (např. cenový kalkulátor, disponibilita).
  • EDI (EDIFACT/ANSI X12) v B2B řetězcích s partnery, dopravci a marketplace.

Řízení identit a mapování

  • Klíče: jednotné SKU/GTIN, mapování variant (barva, velikost), křížové reference mezi ERP a e-shopem.
  • Adresy a zákazníci: unikátní identifikátory, deduplikace, validace adres (DPV), IČO/DIČ pro B2B.
  • Daňové zóny: pravidla DPH/DP/OSS/IOSS, kódy zemí a regionů.

Zásoby: dostupnost, rezervace a předsběr (picking)

  • ATP/ATS: Available to Promise vs. Available to Sell (po odečtení rezervací, vratných obalů, poškozených zásob).
  • Rezervace: měkké (košík) vs. tvrdé (po zaplacení), expirace košíku, kombinace skladů (omnichannel).
  • Lot/Serial: požadavky na sledovatelnost (expirace, šarže) – musí plynout do WMS.
  • Safety stock a backorder: pravidla zobrazování a slíbení termínů (ETA) v uživatelském rozhraní.

Cenotvorba: ceníky, promo a real-time kalkulace

  • Hierarchie: B2C/B2B ceníky, kontraktní ceny, množstevní slevy, slevové kupony, loajalitní programy.
  • Kalkulace: serverová výpočty (ERP/pricing engine), e-shop provádí what-if scénáře s krátkodobou cache.
  • Promo pravidla: kolize a precedence (stacking, vzájemné vyloučení), auditovatelnost.
  • Daně a doprava: výpočet DPH dle dodací adresy, daňové výjimky, dopravné a palivové příplatky.

Objednávky: životní cyklus a toky do ERP/WMS

  1. Přijetí v e-shopu: validace, 3-D Secure, antifraud skóre, idempotentní tokeny plateb.
  2. Rezervace a alokace zásob ve WMS/ERP (pravidla výběru skladu, wave picking).
  3. Fakturace a účetní zápisy v ERP po potvrzení expedice.
  4. Expedice: čísla zásilek, štítky, integrace dopravců (API/EDI), notifikace zákazníka.
  5. RMA: vratky, výměny, dobropisy, opětovné naskladnění, kontrola kvality.

Omnichannel: Click&Collect, Ship-from-Store, Marketplace

  • Click&Collect: rezervace v konkrétní prodejně, synchronizace zásob na úrovni prodejen, SLA pro vyzvednutí.
  • Ship-from-Store: výběr fulfillment lokace podle vzdálenosti a zásob, pravidla rozdělení objednávky.
  • Marketplace: export feedů, objednávky jako externí kanál, zpětné importy stavů a finanční sladění.

Integrace dopravců a poslední míle

  • Tarify a služby: dobírka, pojištění, nadrozměrné zásilky, doručení v čase.
  • Label API: generování štítků, tracking, manifesty, plán závozů.
  • Adresní validace a výpočty D+X doručení (SLA, státní svátky, blackout okna).

Bezpečnost, identita a audit

  • Autentizace: OAuth2/OIDC (stroj-stroj), mTLS, rotace tajemství, princip least privilege u rolí.
  • Validace: schémata (JSON Schema, OpenAPI), business pravidla, rate-limity a kvóty.
  • Audit: korrelační identifikátory, neměnné logy (WORM), hash řetězení pro kritické transakce.

Monitorování, SLO a observabilita

  • SLI: latence p95 API, chybovost, stárnutí katalogu, přesnost zásob, úspěšnost synchronizací.
  • Tracing: distribuované trasování (OpenTelemetry) přes e-shop, middleware, ERP, WMS a dopravce.
  • Alerting: porušení SLA (výpočty ETA, fronty, dead-letters), samoremediace (opakování s backoffem).
  • Dashboardy: objednávkový funnel, stock drift, stavy konektorů, fronty zpráv, retry/poison messages.

Výkon a škálování

  • Cache vrstvy: edge CDN pro katalog, aplikační cache pro ceníky a dostupnost s krátkým TTL, invalidace pomocí eventů.
  • Fronty a backpressure: vyrovnání špiček (Black Friday), prioritizace kritických zpráv (platby vs. média).
  • Bulk API a komprese: upsert dávky, delta přenosy, gzip/br, field projection u GraphQL.

Datová kvalita a governance

  • Validace katalogu: povinná pole, taxonomie, jednotky, obrázky, pravidla variant.
  • Master data management: deduplikace zákazníků, pravidla slučování, odpovědné osoby.
  • Data lineage: sledování původu hodnot (cena, zásoba), audit změn, schvalování promo.

Chybové stavy a idempotence

  • Idempotency-Key pro platby, vytvoření objednávek a rezervace; bezpečné opakování i po timeoutech.
  • Retry s exponenciálním backoffem a jitterem; dead-letter fronty, manuální zpracování.
  • Kompenzační transakce: vrácení rezervace při neúspěšné expedici, reverzace plateb při zrušení objednávky.

Testování a nasazení

  • Kontraktové testy (Pact) mezi e-shopem, middleware a ERP/WMS; definují API očekávání.
  • Sandboxy pro ERP/WMS, seed dat, anonymizace produkčních výřezů.
  • End-to-end scénáře: od vytvoření produktu až po fakturaci a RMA; testy zatížení při promo akcích.
  • Blue/Green a canary nasazení konektorů; metriky error budget a rychlé rollbacky.

Datové modely a příklady payloadů

Příklad ProductUpsert (zkráceně):

{ "sku": "TSHIRT-001-BLACK-M", "name": {"cs": "Triko Black", "en": "T-Shirt Black"}, "attributes": {"color": "black", "size": "M"}, "prices": [{"list": 499.0, "currency": "CZK", "pricelist": "B2C"}], "inventory": [{"warehouse": "CZ-01", "onHand": 120, "reserved": 15}], "media": [{"url": "https://cdn.example/img1.jpg", "type": "image/jpeg"}], "status": "active" }

Příklad události StockChanged:

{ "eventId": "c1a2...", "occurredAt": "2025-10-26T08:25:12Z", "sku": "TSHIRT-001-BLACK-M", "warehouse": "CZ-01", "delta": -2, "reason": "ORDER_ALLOCATED", "correlationId": "ord_987654" }

Specifika B2B vs. B2C

  • B2B: schvalovací workflow, cenové nabídky a ceníky podle segmentů, kreditní limity, delší platební a dodací lhůty.
  • B2C: rychlá logistika, časté promo akce, vysoké špičky, retence zákazníků a věrnostní programy.

Právní a účetní aspekty

  • Fakturace: náležitosti dle právní úpravy jednotlivých zemí, EET/online evidence (pokud platí), elektronická archivace.
  • DPH a clo: OSS/IOSS, Intrastat, exportní doklady, sazby a osvobození.
  • Ochrana osobních údajů: minimalizace osobních údajů v integračních tocích, pseudonymizace, retenční politiky.

Checklist pro úspěšnou integraci

  1. Definujte system of record pro každou doménu (katalog, ceny, zásoby, objednávky).
  2. Navrhněte API kontrakty a schémata (OpenAPI/JSON Schema); implementujte kontraktové testy.
  3. Zaveďte event-driven notifikace pro zásoby a stavy objednávek; batch přenosy pro média.
  4. Nastavte idempotenci, retry/backoff a kompenzační scénáře.
  5. Implementujte monitoring, tracing a SLO pro integrační toky.
  6. Řešte datovou kvalitu a governance (taxonomie, jednotky, lokalizace).
  7. Připravte škálování (fronty, cache, CDN) pro promo období.
  8. Zajistěte bezpečnost (OAuth2/mTLS, RBAC, audit logy, šifrování v klidu i přenosu).

Závěr

Integrovaný e-shop