Přenos objednávek z POHODY do expedice
Integrační agent předává vybrané objednávky z POHODY do expediční služby, řeší dopravu, katalog, duplicity a zpětný stav.
Co to řeší v praxi
Objednávka přijatá v POHODĚ se má dostat do skladu bez dalšího opisování. Agent vybírá jen případy připravené k expedici, sestaví příjemce, položky a doručení a předá je expediční službě.
Zvládá rozdíly mezi dopravci, cílovými zeměmi a výdejními místy. U některých přepravních služeb je potřeba odlišit skutečnou pobočku od doručení na adresu; agent si k tomu bere i informace z dopravních feedů. Servisní řádky, jako doprava či platba, neposílá jako fyzické produkty.
Před ostrým odesláním lze zobrazit souhrn a konkrétní objednávku zkontrolovat v testovacím režimu. Úspěšný přenos se uloží, takže opakovaný běh nevytvoří druhou expedici. Agent umí později načíst události z expediční služby a vybrané stavy promítnout zpět do POHODY.
Co řešení umí
Řízený výběr objednávek
Přenáší jen vyznačené přijaté objednávky, které nejsou zrušené ani již zpracované.
Položky bez servisních řádků
Odděluje fyzické skladové produkty od dopravy a platby, ale zachovává správný kontext hodnoty zásilky.
Doprava podle země
Mapuje způsob doručení pro cílový trh a kontroluje výdejní místo nebo adresní službu.
Doplnění produktu
Při zapnuté volbě může ověřit katalog expediční služby a připravit chybějící produkt.
Ochrana proti duplicitám
Eviduje identitu předané objednávky a při dalším běhu již odeslaný případ přeskočí.
Zpětná synchronizace
Čte události expediční služby a vybrané výsledky promítá do stavu objednávky v POHODĚ.
Technické řešení
Python agent čte objednávky a položky z POHODY, vytváří strukturovaný payload REST API Fulfillment.cz a udržuje lokální evidenci přenosů a událostí v SQLite. Konfigurace odděluje podmínky výběru, mapování dopravy a volitelné větve synchronizace.
Před odesláním ověřuje příznaky objednávky, sestaví kontaktní a adresní údaje příjemce a filtruje položky podle typu skladové karty. Výsledek rozlišuje cenu fyzických produktů od celkové hodnoty zásilky, aby servisní řádky nezměnily význam objednávky.
Dopravní mapování může záviset na zemi, konkrétní službě i identifikaci výdejního místa. Pro sporné dopravní údaje používá externí přehled poboček a adresních služeb; do API pak předává pouze kombinaci odpovídající skutečnému způsobu doručení.
Přenos chrání stabilní idempotentní identita a lokální záznam o úspěšném odeslání. Samostatná synchronizace událostí ukládá poslední zpracovaný stav a pro vybrané typy událostí aktualizuje původní objednávku v POHODĚ. Výchozí provozní režim umožňuje nejprve kontrolu bez zápisu do expediční služby.
Technické výzvy
- Bezpečné opakování běhu bez duplicit.
- Různá pravidla dopravy podle země a výdejního místa.
- Soulad hodnoty zásilky s položkami po oddělení servisních řádků.
Jak na sebe kroky navazují
01Výběr kandidátů
Agent načte objednávky splňující podmínky pro předání do skladu a vyřadí zrušené či uzavřené případy.
02Kontrola duplicity
Porovná objednávku s evidencí úspěšných přenosů a nedovolí její nechtěné opakované odeslání.
03Příjemce a položky
Připraví kontaktní údaje, adresu a jen fyzické produkty; servisní položky řeší odděleně.
04Dopravní mapování
Podle země a služby vybere expedici a rozliší doručení na výdejní místo od doručení na adresu.
05Katalog expediční služby
Je-li tato funkce zapnutá, ověří existenci produktů a připraví chybějící kartu.
06Kontrolní režim
Před prvním ostrým během vypíše shrnutí objednávky, dopravy, dobírky a případných validačních chyb.
07Odeslání a evidence
Objednávku odešle přes API a uloží vazbu mezi interní a expediční identitou.
08Návrat stavů
Při dalším běhu načte události expedice a vybrané změny promítne do původní objednávky v POHODĚ.
Co z toho vzniklo
Vznikl obousměrně navázaný expediční proces: kontrolované předání objednávek do skladu, ochrana proti duplicitám a zpětné zpracování vybraných událostí.