MyÚčto MyÚčto.cz Manuál
Stáhnout PDF Zpět na hlavní stránku

35. Sklad

Modul Sklad je skladová evidence pro firmy, které nakupují a prodávají materiál, zboží nebo vyrábí výrobky. Vede skladové karty, příjemky/výdejky/převodky mezi sklady, umožňuje víc skladů, inventury a základní skladové sestavy. Napojuje se na Vydané faktury a Přijaté faktury — umí automaticky vydat zboží ze skladu při vystavení faktury a naskladnit zboží z přijaté faktury. Vedle fyzického stavu vede i rezervace, zboží na cestě a skladovost u dodavatele (§ 35.9), objednávky vydané dodavatelům (§ 35.11) a návrh doplnění zásob (§ 35.12).

Prodejní objednávky v sekci Prodej rezervují skutečně dostupné zboží před fakturací a předávají rezervaci do vychystání (§ 35.13).

V menu ho najdeš pod sekcí Sklad (zobrazí se jen po zapnutí modulu): Skladové karty, Příjemky a výdejky, Objednávky dodavatelům (§ 35.11), U dodavatele (§ 35.10), Inventury, Sestavy a Intrastat export (§ 35.15). Číselník Sklady (jednotlivé sklady firmy) je záložka na stránce E-shop — modul Sklad totiž sdílí skladové karty s e-shopovým modulem (ceny, kategorie, parametry, dodavatelé, přílohy k produktu).

Poznámka

Sklad je doplňkový, nepovinný modul (opt-in) — dokud ho v Nastavení firmy nezapneš, sekce Sklad se v menu vůbec nezobrazí a všechny skladové API endpointy vrací chybu „Skladový modul není pro tuto firmu zapnutý" (HTTP 403) — a to i na čtecí požadavky, aby se do frontendu vůbec nedostala žádná data nezapnutého modulu. Funguje nezávisle na účetním režimu — stejně dobře pro podvojné účetnictví i pro daňovou evidenci.

35.1 Zapnutí modulu

Sklad zapneš na stránce úpravy firmy (Systém → Nastavení, viz § 95.5 Editace dodavatele) v samostatné sekci Vést skladovou evidenci:

Sklad interně účtuje způsobem B dle ČÚS 015 (bod 4.3) — v průběhu roku se skladové pohyby neúčtují na účty, jen evidují; do účetnictví se promítne až uzávěrkovým krokem (konečný/počáteční stav zásob, reklasifikace inventurních mank a přebytků — viz uzávěrka v modulu Účetnictví). To je aktuálně jediný podporovaný způsob účtování zásob; datový model má připravený i sloupec stock_method s hodnotami B/A, ale zapisuje se do něj natvrdo jen B — přepnutí na způsob A není v tomto vydání funkčně implementované.

35.2 Skladové karty

Sklad → Skladové karty je stránkovaný seznam karet materiálu, zboží a výrobků (výchozí stránkování 50 karet na stránku).

Vedle hledání podle SKU, názvu nebo EAN jsou rovnou výrobce, dodavatel, kategorie a dostupnost. Kategorie zahrnuje i své podkategorie. Rozbalené Filtry přidávají typ karty, sklad, štítky, chybějící obrázek/kategorii/cenu/výrobce/EAN, rozsah množství a filtrovatelný atribut. Sklad omezí stav a hodnotu na vybraný sklad. Podmínky platí pro celý katalog, ne pouze zobrazenou stránku.

Filtry si můžeš uložit jako výchozí přes uložené filtry, sloupce si zapneš/vypneš přes výběr sloupců a hustotu řádků přes přepínač hustoty (viz § 96.9 Uložené filtry a předvolby zobrazení).

Ikona Otevřít rychlý detail vedle SKU zobrazí kartu v postranním panelu. Tlačítka Předchozí a Další procházejí celý filtrovaný seznam, případně aktuální výběr včetně odškrtnutých výjimek. Panel ukazuje pořadí a nabízí otevření plného detailu nebo editoru. Import zboží v liště vede na import katalogu.

Hromadná úprava filtrovaných karet

Zaškrtávátkem u řádku vybereš jednu kartu nebo aktuální stránku. Pokud je výsledků víc, nabídka Vybrat všech N výsledků výslovně přepne výběr na celý aktuálně filtrovaný katalog. Změna filtru výběr zruší, aby se hromadná akce nikdy neaplikovala na neviditelně rozšířený jiný výsledek. Po výběru všech výsledků lze jednotlivé karty opět odškrtnout.

Hromadná úprava nejprve vytvoří náhled změn po jednotlivých kartách. V náhledu vidíš původní a zamýšlené hodnoty výrobce, kategorií, štítků, dodavatelů, aktivity, exportu do e-shopu a minimální zásoby. Náhled se také zpracuje jako úloha na pozadí, ale až tlačítko Použít změny na N kartách založí úlohu, která změny zapíše. Její průběh, případné konflikty verzí a chybové řádky jsou v dialogu i v historii úloh. Dokončenou hromadnou úpravu lze jednou vrátit akcí Obnovit; obnova sama vytváří novou úlohu a nejde znovu obnovovat.

Sloupce: SKU, Název, Typ, MJ (měrná jednotka), Stav (aktuální množství — červeně a tučně, pokud je pod nastaveným minimem), Hodnota (ocenění stavu v Kč), Prům. cena (dopočtená průměrná pořizovací cena za jednotku), volitelně i Prodejní cena, Min. zásoba a Aktivní. Stav a hodnota se počítají ze skutečných skladových pohybů v momentě zobrazení stránky, ne z uložených souhrnných čísel karty.

Kliknutím na Novou skladovou kartu se otevře editor se základními poli:

Po založení karty (jen v režimu úpravy) se zpřístupní i e-shopové taby — jazykové mutace popisu, kategorie a štítky, parametry, ceny v jednotlivých měnách, dodavatelé a přílohy/obrázky. Skladová karta je totiž zároveň produktovou kartou pro e-shop; tyto taby popisuje kapitola o e-shopu.

Údaje skladové karty pro Intrastat

V úpravě uložené skladové karty je záložka Intrastat. Údaje z ní se použijí pro každý vykazovaný pohyb dané položky:

KN8, země původu a čistá hmotnost mohou na kartě zůstat prázdné, dokud se položka nemá vykazovat. Jakmile její pohyb vstoupí do Intrastatu, náhled chybějící povinný údaj označí jako chybu a nedovolí stáhnout CSV.

Editor při odchodu ze stránky upozorní na neuložené změny. Prázdná připravená čeština ani prázdné řádky aktivních prodejních měn se za změnu nepovažují. Lišta Uložit / Zrušit zůstává při posouvání stránky dostupná. Taby editoru lze ovládat klávesami šipka vlevo a šipka vpravo; aktivní tab se na úzké obrazovce posune do viditelné části lišty.

35.2.1 Detail karty a skladová kniha

Kliknutím na řádek v seznamu se otevře detail karty: dlaždice s počátečním stavem, prodejní cenou, minimální zásobou a EAN, pod nimi záložka Pohyby — kompletní skladová kniha karty (datum, doklad s prokliknutím, sklad, množství se znaménkem, jednotková cena, hodnota a běžná bilance po každém řádku). Stránka pohybů se natahuje po 100 řádcích (dá se vyžádat až 500 najednou), počáteční bilance před zobrazenou stránkou se dopočítává ze všech předchozích řádků se stejnými filtry. Stornované doklady se v knize zobrazí ztlumeně, ale zůstávají viditelné.

Akce v hlavičce detailu: Nová výdejka (rovnou předvyplní kartu do nového dokladu), Upravit, export do PDF a export do XLSX (kompletní skladová kniha karty, natažená dávkově po 500 řádcích bez ohledu na to, kolik pohybů karta má) a Deaktivovat (jen pokud je karta aktivní).

Poznámka

Skladovou kartu, která má jakýkoli skladový pohyb, nejde smazat — pokus o smazání vrátí chybu „Skladovou kartu nelze smazat — má skladové pohyby. Deaktivujte ji místo mazání." (HTTP 409) a nabídne deaktivaci. Smazat lze pouze čerstvě založenou kartu bez pohybů.

35.2.2 Životní cyklus, duplikace a šablony

Karta může být Rozpracovaná, Připravená nebo Vyřazená. Nová karta z duplikace nebo šablony vzniká vždy jako neaktivní a nepublikovaný koncept. Akce Připravit ji aktivuje. Akce Vyřadit ji deaktivuje a vypne export do e-shopu; běžná editace ani import ji potom nemohou znovu publikovat. Historie skladových pohybů zůstává čitelná a beze změny.

Akce Duplikovat otevře dialog, ve kterém zadáš nové SKU a název a výslovně vybereš přenášené sekce: základní nebo e-shopové údaje, překlady, kategorie, štítky, parametry, poplatky, ceny a dodavatele. SKU, EAN, skladové pohyby a zásoby, média, přílohy ani externí identity se nikdy nekopírují. Cenová sekce přenese nastavení cen, ale cenu znovu vypočítá pro novou kartu. Pokud pro výpočet chybí náklad nebo odpovídající cenové pravidlo, karta se nevytvoří a aplikace zobrazí chybu k doplnění cenových podkladů.

V sekci Šablony skladových karet na detailu lze stejným výběrem sekcí uložit pojmenovaný snapshot. Pozdější změna zdrojové karty uloženou šablonu nezmění. Tlačítko Použít vyžádá nové SKU a název a založí samostatný koncept, který lze před přípravou běžně upravit. Šablony jsou oddělené pro každou firmu a lze je ze stejné sekce smazat.

35.2.3 Vazba na e-shopovou kartu

Skladová a e-shopová karta je v datech jeden a týž záznam (tabulka skladových karet nese i e-shopové sloupce), ale zobrazení v e-shopu se neřídí typem karty (Materiál/Zboží/Výrobek) — o tom, jestli se karta má exportovat na e-shop, rozhoduje samostatný, na typu nezávislý příznak Exportovat do e-shopu (v editoru na e-shopové záložce). I materiál nebo výrobek tedy technicky jde nastavit jako zobrazovaný v e-shopu, a naopak běžnou kartu typu Zboží lze mít vedenou jen skladově, bez e-shopové prezentace. Druhý související příznak, Skladem (interně is_stocked), určuje, jestli e-shop pro danou kartu vůbec hlídá dostupnost skladem — podrobnosti k oběma příznakům a dalším e-shopovým polím (kategorie, parametry, ceny, dodavatelé) najdeš v kapitole E-shop.

35.2.4 Virtuální sety

Karta bez zapnuté volby Skladem může být virtuálním setem. Z detailu takové karty nebo z její úpravy otevři Konfigurovat set. Samotná karta nenese zásobu: rezervace, výdej a cena pracují se skutečnými komponentami setu.

Konfigurátor obsahuje pevné komponenty a skupiny voleb. Pevná komponenta se přidá vždy. U skupiny zadáš minimum a maximum vybraných alternativ, například právě jednu barvu nebo volitelný doplněk. Každá alternativa může mít vlastní množství a příplatek v každé aktivní prodejní měně. Set může obsahovat jiný set, ale systém odmítne cyklus.

Pro každou aktivní prodejní měnu vyber režim ceny: součet komponent, součet se slevou nebo pevnou cenu. Nezávazná kalkulace v pravém panelu vyžaduje měnu, množství a všechny povinné volby. Vypočte aktuální cenu a rozpad na komponenty. Údaj „od" ani napsaná pevná cena sama o sobě nenahrazuje tento quote: cenu objednávky vždy určuje její zachycený quote.

35.2.5 Kompletace výrobku

Sklad → Kompletace výrobků převádí komponenty virtuálního setu na vlastní skladovaný výrobek. Vybereš cílový aktivní výrobek vedený skladem, virtuální set jako recept, sklad, datum a množství. Před potvrzením stránka ukáže aktuální dostupnost všech komponent v daném skladu. Jednotkovou cenu výrobku nezadáváš: hodnota vznikne ze skutečně vydaných komponent.

Kompletace v jediném kroku založí a zaúčtuje výdejku komponent i příjemku výrobku. Historie vždy odkazuje na oba doklady. Pokud je potřeba operaci vrátit, použij Stornovat kompletaci - stornují se společně oba doklady. Samostatné storno jedné strany není povolené, aby se nezdvojila nebo neztratila hodnota zásob.

35.3 Oceňování zásob

Sklad oceňuje zásoby váženým aritmetickým klouzavým průměrem (§ 49 odst. 3 vyhlášky 500/2002 Sb., ČÚS 015 bod 3.6) — při každém příjmu se dopočítá nová průměrná cena z dosavadní hodnoty skladu a hodnoty přijaté dávky; výdej se pak vždy oceňuje aktuální průměrnou cenou v okamžiku zaúčtování dokladu, ne cenou z minulého příjmu. Je to jediná podporovaná oceňovací metoda — FIFO/LIFO modul nenabízí.

Uvnitř se nepočítá s desetinnými čísly (float), ale s celočíselnou aritmetikou: množství se drží v tisícinách kusu a hodnota v haléřích — haléřová hodnota skladu je vždy zdrojem pravdy, průměrná jednotková cena (na 6 desetinných míst) je z ní jen dopočítaná pro zobrazení. Zaokrouhluje se (matematicky, „na obě strany", ne jen dolů) vždy jen na hranici haléře při každém jednotlivém pohybu, takže se zaokrouhlovací chyba v čase nekumuluje. Speciální případ je výdej celého zbylého množství karty — ten se vždy oceňuje přesně zbývající hodnotou skladu, takže po něm nezůstane žádný haléřový „sediment" a stav klesne přesně na 0 Kč / 0 ks.

Systém tvrdě zakazuje záporný stav zásob — pokus o výdej/převod/storno, který by u jakékoli karty způsobil zápor, skončí chybou „Nedostatek zásob pro výdej" (HTTP 409) a doklad se nezaúčtuje. Kontrola proběhne souhrnně za všechny řádky dokladu najednou (ne na první nedostatkové položce) a vrátí seznam všech karet, kterým množství nesedí, s požadovaným i dostupným množstvím — proběhne dřív, než se dokladu přidělí číslo řady, takže se při chybě žádné číslo „nespálí". Žádnou výjimku ani „povolit záporný stav" volbu modul nemá — pokud sklad neodpovídá skutečnosti, je potřeba to nejdřív srovnat inventurou (§ 35.7) nebo opravnou příjemkou.

Poznámka

Čistě technicky (kvůli celočíselné aritmetice v haléřích) má oceňování horní mez: jeden výdej unese hodnotu skladu zhruba do 10 milionů Kč a zhruba 5 milionů kusů současně, hodnota jedné karty smí dosáhnout zhruba 4,6 miliardy Kč. Pro běžný provoz malé a střední firmy jsou to meze bez praktického významu.

35.3.1 Příklad výpočtu klouzavého průměru

Karta nemá zatím žádný pohyb (stav 0 ks / 0 Kč). Následují dva příjmy a jeden výdej:

DatumDokladPohybMnožstvíJedn. cenaHodnota pohybuStav (ks)Hodnota skladuPrům. cena
-----------:--:--:--:--:--:
1.3.PRI-2026-0001Příjem+10050,00 Kč+5 000,00 Kč1005 000,00 Kč50,0000 Kč
5.3.PRI-2026-0002Příjem (vč. dopravy 200 Kč)+5060,00 Kč+3 200,00 Kč1508 200,00 Kč54,6667 Kč
12.3.VYD-2026-0001Výdej−8054,6667 Kč (dopočteno)−4 373,33 Kč703 826,67 Kč54,6667 Kč

35.4 Skladové doklady

Sklad → Skladové doklady je seznam všech skladových dokladů se záložkami Vše / Příjemky / Výdejky / Převodky (stránkovaný, max 500 řádků na stránku). Filtry: sklad, stav a fulltext; sloupce zahrnují číslo dokladu, datum, typ, sklad (u převodky „odkud → kam"), partnera, popis, původ a stav.

Doklad má tři podoby:

35.4.1 Životní cyklus dokladu

Doklad prochází stavy Rozpracován (draft) → Zaúčtováno (posted) → Stornováno (reversed) a přechody jsou striktně jednosměrné — z posted/reversed už se doklad nikdy nevrátí zpátky do draft:

Doklad má i Původ (origin) — informaci, odkud vznikl: Ručně, Vydaná faktura, Dobropis, Přijatá faktura nebo Inventura. Doklady s jiným původem než „Ručně" typicky vznikají automaticky (viz § 35.5 a § 35.7) a v editoru se u nich zobrazí odkaz na zdrojový doklad.

35.4.2 Číslování dokladů

Číslo dokladu má formát PRI-RRRR-NNNN (příjemka), VYD-RRRR-NNNN (výdejka) nebo PRE-RRRR-NNNN (převodka) — prefix, rok dokladu a čtyřmístné pořadové číslo. Číslování běží odděleně pro každou firmu, každý typ dokladu a každý rok (rok se bere z data dokladu, ne z data zaúčtování), takže si každá řada nezávisle začíná od 0001. Číslo se přidělí teprve při zaúčtování, v rámci téže databázové transakce jako zápis pohybu — přidělení je chráněné zamykacím dotazem, aby ani souběžné zaúčtování dvou dokladů ve stejné vteřině nemohlo vygenerovat duplicitní číslo. Rozdílové doklady z uzavřené inventury (§ 35.7) čerpají čísla ze stejné běžné řady jako ruční doklady — nemají žádný zvláštní prefix.

35.4.3 Editor dokladu

Nový doklad založíš tlačítkem Nová příjemka nebo Nová výdejka v seznamu (u nového dokladu bez vazby si typ dokladu i přepneš přímo v editoru — Příjemka / Výdejka / Převodka). Hlavička: sklad (u převodky zvlášť „odkud" a „kam"), datum dokladu, popis (povinný, jde o obsah účetního případu dle § 11/1/c zákona o účetnictví) a nepovinný partner (volný text — dodavatel/odběratel).

Řádky dokladu: skladová karta (našeptávač podle SKU/názvu), množství, u příjemky i jednotková cena (u výdejky/převodky se cena nezadává — dopočítá se automaticky z klouzavého průměru při zaúčtování) a poznámka. U výdejky/převodky se u každého řádku zobrazuje náhled dostupného množství na zvoleném skladu — je jen informativní, závaznou kontrolu dělá až zaúčtování; pokud množství nesedí, zobrazí se u řádku hláška ve tvaru „{SKU} — {název}: požadováno {X}, skladem {Y}".

Akce v hlavičce editoru: Zaúčtovat (uloží a rovnou zaúčtuje), Uložit koncept, Tisk (PDF) a u zaúčtovaného dokladu Stornovat (přes modální dialog s polem „Důvod storna").

35.4.4 Vedlejší pořizovací náklady

U příjemky ve stavu rozpracováno (jen tehdy — po zaúčtování už se položky nedají přidávat) můžeš přidat libovolný počet položek vedlejších pořizovacích nákladů (doprava, clo, provize apod. podle § 49 odst. 1 vyhlášky 500/2002 Sb.): popis, částka a způsob rozpuštění — podle hodnoty (výchozí) nebo podle množství přijímaných řádků.

Algoritmus rozpouštění je čistě celočíselný (v haléřích), aby součet rozpuštěných částí vždy přesně souhlasil se zadanou částkou nákladu:

Rozpuštěná částka se u řádku uloží zvlášť jako informativní vedlejší náklad, ale zvyšuje i celkovou hodnotu, ze které se počítá klouzavý průměr (viz worked example v § 35.3.1, kde druhý příjem obsahuje dopravu 200 Kč).

35.5 Vazba na faktury

35.5.1 Automatický výdej při vystavení faktury

Na řádku vydané faktury můžeš vybrat skladovou kartu a sklad, ze kterého se má zboží vydat — zobrazí se náhled dostupného množství stejně jako v editoru skladového dokladu.

Je-li zapnutá automatická výdejka (§ 35.1), při vystavení běžné/finální faktury s takto napojenými řádky systém automaticky založí a rovnou zaúčtuje výdejku (původ „Vydaná faktura"), v jedné transakci se samotným vystavením faktury. Pokud má faktura řádky z víc skladů, založí se samostatná výdejka pro každý sklad. Proforma a daňový doklad k platbě skladem nehýbou — čerpá se až finální faktura. Storno faktury (interní zrušení) automaticky stornuje i navázanou výdejku a dobropis zboží vrátí zpátky na sklad v původní pořizovací ceně výdeje k faktuře, ke které se dobropis vztahuje.

Datum automatické výdejky nebo vratky odpovídá DUZP faktury; datum vystavení se použije jen tehdy, když doklad DUZP nemá. Záporný skladový řádek na běžné faktuře se zpracuje jako vratka na sklad, nikoli jako další výdej. Administrátorské smazání vystavené faktury před smazáním atomicky stornuje i všechny její automatické skladové doklady.

Pokud na skladě není dost zboží, vystavení faktury skončí chybou „Nedostatek zásob pro výdej" (HTTP 409) ještě předtím, než se spotřebuje číslo řady faktury — faktura zůstane ve stavu koncept a dá se opravit (jiné množství, jiný sklad, nebo napřed naskladnit). Na detailu faktury najdeš i přehled výdejek/vratek navázaných na daný doklad.

35.5.2 Naskladnění z přijaté faktury

Na detailu přijaté faktury je tlačítko Naskladnit, pokud má alespoň jeden dosud nenaskladněný řádek navázaný na skladovou kartu. Faktura bez jediné takové vazby tlačítko nenabízí. Akce otevře průvodce naskladněním. Průvodce nabídne řádky faktury s vazbou na skladovou kartu a zbývající množství k naskladnění — spočítá se jako fakturované množství mínus součet množství, které už bylo naskladněno dřívějšími (zaúčtovanými) příjemkami napojenými na tentýž řádek faktury; pokud by ses pokusil/a naskladnit víc, systém to odmítne chybou „Množství přesahuje zbývající k příjmu z faktury" (HTTP 409, s malou tolerancí na zaokrouhlení cca 0,0005 jednotky) — kontroluje se hned při zakládání konceptu příjemky, ne až při zaúčtování. Pole se dá i ručně přepsat na menší množství (částečné naskladnění), k jednotlivým řádkům lze zvolit existující kartu, napojit jinou nebo rovnou z popisu řádku faktury založit novou skladovou kartu.

Volitelně lze zahrnout i vedlejší pořizovací náklady — kandidáti se nabídnou automaticky: jsou to řádky téže přijaté faktury, které nemají napojenou žádnou skladovou kartu (typicky položka za dopravu vedle položek zboží na jedné faktuře); modul nehledá náklady na jiných fakturách stejného dodavatele ani podle textu popisu. Náklady se rozpustí do ceny přijímaného zboží stejným algoritmem jako v editoru skladového dokladu (§ 35.4.4). Po potvrzení vznikne draft příjemka (původ „Přijatá faktura") ve zvoleném skladu a datu, kterou pak podle potřeby doplníš a zaúčtuješ v modulu Skladové doklady.

Pokud se obsah přijaté faktury po dřívějším naskladnění změní (typicky přepsáním řádků faktury, které vazbu na starou příjemku „osiří"), průvodce na to upozorní, aby sis ověřil/a, jestli naskladněné množství pořád odpovídá aktuálnímu obsahu faktury.

35.6 Sklady (více skladů)

Firma může mít libovolný počet skladů (v kódu není žádný horní limit) — najdeš je na stránce E-shop, záložka Sklady. Ke každému skladu zadáváš kód *(povinný, max 20 znaků, musí být v rámci firmy unikátní — jinak „Sklad s tímto kódem už existuje", HTTP 409)*, název *(povinný, max 100 znaků)*, poznámku a příznaky Výchozí sklad a Aktivní. Tabulka u každého skladu ukazuje aktuální celkovou hodnotu zásob na něm.

Výchozí sklad se automaticky předvyplní při zakládání nového skladového dokladu; výchozí smí být vždy jen jeden sklad — nastavením nového výchozího se příznak u předchozího výchozího skladu sám shodí. Sklad, který má nenulový stav zásob nebo jakékoli skladové pohyby (na kterémkoli z obou směrů převodky), nejde smazat — pokus o smazání vrátí chybu „Sklad nelze smazat — má nenulový stav nebo skladové pohyby. Deaktivujte jej místo mazání." (HTTP 409) a nabídne deaktivaci místo mazání.

Sklad lze rozdělit na volitelné lokace s vlastním kódem a názvem. Lokace vždy patří právě jednomu skladu a nelze ji při editaci přesunout jinam. U karet se sledováním šarží nebo sériových čísel může příjemka, výdejka a převodka určit zdrojovou a cílovou lokaci. Karta bez zapnutého sledování dál používá běžný stav skladu a při fakturaci ani při skladovém pohybu nevyžaduje žádnou lokaci.

Na kartě lze zapnout sledování šarží a expirace nebo sériových čísel. Zaúčtování sledované karty vyžaduje rozdělit celé množství řádku do alokací. Sériové číslo představuje vždy jeden nedělitelný kus a je jedinečné v rámci firmy a karty. Šarže dovoluje množství a volitelné datum expirace. Detail karty ukazuje aktuální rozpad i historii od příjmu přes převody a výdeje po vratku. Storno použije přesně stejné identity a množství jako původní doklad.

Alternativní jednotky se definují přesným zlomkem vůči základní jednotce karty, například balení 12 kusů jako 12/1. Systém přijme jen převod, který lze beze zbytku vyjádřit v tisícinách základní jednotky; nepoužívá plovoucí desetinné zaokrouhlení.

35.7 Inventury

Sklad → Inventury slouží k fyzické kontrole skutečného stavu zásob dle § 29–30 zákona o účetnictví. Založíš ji tlačítkem Nová inventura — zvolíš sklad, datum, způsob zjištění skutečného stavu a osoby odpovědné za zjištění stavu a za provedení inventury; poznámka je nepovinná.

Na daném skladu smí běžet vždy jen jedna otevřená inventura (ve stavu Založena nebo Probíhá sčítání) — dokud ji neuzavřeš, další na tentýž sklad založit nejde, a to bez ohledu na zvolené datum („Na skladu už je rozpracovaná inventura.", HTTP 409). Nezávisle na tom je i v databázi vynucené, že na jeden sklad a den existuje nejvýš jeden záznam inventury vůbec.

Průvodce inventurou má tři kroky. Mezi založením a sčítáním probíhá příprava očekávaných stavů na pozadí (draftpreparingcountingclosed). Dokud příprava neskončí, nelze zadávat skutečné počty. Její průběh je vidět v detailu inventury; po chybě lze přípravu opakovat a běžící přípravu zrušit.

  1. Založení — inventura je ve stavu Založena; tlačítkem Zahájit sčítání se pořídí snapshot očekávaných stavů (množství i hodnota) k rozhodnému datu inventury replayem skladové knihy. Zahrne všechny aktivní karty firmy, i ty bez pohybu, a také neaktivní karty s nenulovou zásobou k danému dni. Inventura přejde do stavu Probíhá sčítání. Po dobu sčítání nelze na daném skladu zaúčtovat žádný jiný skladový pohyb (příjemku, výdejku ani převodku z/do něj) — pokus o to skončí chybou „Na skladu probíhá inventura — dokončete ji před zaúčtováním pohybu." (HTTP 409); totéž platí i pro storno staršího dokladu na tomto skladu.
  2. Sčítání — u každé položky zadáš skutečně napočítané množství; systém průběžně dopočítává rozdíl oproti očekávanému stavu (zvýrazněný, pokud není nulový). Tlačítko Napočítat vše dle očekávání rychle předvyplní všechny řádky očekávanou hodnotou (pro položky, které sedí). Rozepsané počty jde průběžně ukládat tlačítkem Uložit průběh, aniž by se inventura uzavřela. U kladného rozdílu se zadává reprodukční pořizovací cena za jednotku; systém nabídne cenu očekávaného stavu nebo poslední známou cenu. Přebytek bez kladné ceny nelze uzavřít.
  3. Rekapitulace — po uzavření (tlačítko Uzavřít, s potvrzovacím dialogem — akci nejde vzít zpět) se zobrazí jen řádky s nenulovým rozdílem. Uzavření v jedné databázové transakci vytvoří (podle znaménka rozdílu) jednu souhrnnou rozdílovou příjemku pro všechny přebytky a/nebo jednu souhrnnou rozdílovou výdejku pro všechna manka, obě rovnou zaúčtované, s původem „Inventura" a popisem „Inventurní přebytek — inventura #…" resp. „Inventurní manko — inventura #…". Přebytek se ocení uloženou reprodukční pořizovací cenou, manko se ocení standardně jako běžný výdej (klouzavým průměrem v okamžiku zaúčtování). Číslo dokladu čerpají ze stejné řady jako ruční doklady (§ 35.4.2), žádný zvláštní prefix pro inventuru neexistuje. Inventura přejde do stavu Uzavřena a už se nedá znovu otevřít; z rekapitulace se na vzniklé rozdílové doklady dá proklikat. Uzavřenou inventuru lze vytisknout jako inventurní soupis PDF; obsahuje rozhodný den, okamžik zahájení a ukončení, způsob zjištění, odpovědné osoby, všechny řádky a podpisové záznamy.
Tip

Pokud v kroku sčítání jen uložíš rozpracovaný stav a odejdeš, inventura zůstává „Probíhá sčítání" — nezapomeň se k ní vrátit a uzavřít ji, jinak zůstane blokovat zaúčtování ostatních dokladů na daném skladu.

Pro průběžné kontroly slouží na stejné stránce cyklické inventury. Příprava běží jako trvalá úloha a uloží přesný seznam dokladů zaúčtovaných v okamžiku založení. Koncept zaúčtovaný až později se do tohoto snapshotu nedostane. Běžný provoz skladu může pokračovat. Fyzický stav proto zadávej podle skutečnosti v okamžiku uložení počtu. Uložení pod zámkem zachytí i aktuální evidenční stav každého řádku a uzavření zaúčtuje rozdíl mezi těmito dvěma uloženými hodnotami. Pohyby provedené po uložení počtu tak zůstanou zachované. Opakované uložení stejného počtu zachová původní referenci i čas sčítání; změna počtu zaznamená nové sčítání. Lze inventarizovat celý sklad nebo konkrétní lokaci; u sledovaných karet vznikají řádky po šaržích a sériových číslech a manko za celý sklad se odečte ze skutečných lokací, na kterých je šarže vedena.

35.8 Skladové sestavy

Sklad → Sestavy nabízí dvě záložky:

Obě sestavy mají součtový řádek (počet položek a celková hodnota) a jdou exportovat do PDF i XLSX; každý export se zaznamenává do žurnálu aktivit firmy (typ, formát, čas, uživatel).

35.9 Kolik toho vlastně máš — skladem, rezervováno, na cestě, u dodavatele

Samotné číslo „skladem" na otázku *„můžu to prodat?"* neodpovídá. Část zásoby už je vyfakturovaná zákazníkovi a jen fyzicky nevydaná, další kusy jsou objednané u dodavatele a ještě nedorazily, a dodavatel má ve svém skladu ještě další. Modul proto vede čtyři množstevní veličiny a dvě dopočtené hodnoty.

VeličinaCo znamenáOdkud se bere
Skladem (on_hand)fyzický stav na skladězaúčtované skladové doklady (§ 35.4)
Rezervováno (reserved)vyfakturováno zákazníkovi, ale ještě nevydáno ze skladuřádky vystavených faktur bez zaúčtované výdejky (§ 35.9.2)
Na cestě (in_transit)objednáno u dodavatele a ještě nedodánoobjednávky u dodavatele (§ 35.11)
U dodavatele (at_vendor)kolik toho podle svého ceníku drží dodavatelnabídky dodavatelů (§ 35.10)

Z nich se počítají dvě odvozené hodnoty:

    prodejné (sellable)      = skladem − rezervováno
    volně k dispozici (ATP)  = skladem − rezervováno + na cestě
Důležité

Zboží na cestě záměrně nezvyšuje to, co se smí nabízet k prodeji. Do veličiny *prodejné* — tedy do čísla, které je určené e-shopu — se na cestě nepočítá. Prodávat něco, co ještě nedorazilo, je obchodní riziko (dodavatel nedodá, dodá později, dodá míň) a tohle rozhodnutí má udělat firma vědomě, ne aplikace za ni. *Volně k dispozici (ATP)* je naproti tomu plánovací číslo pro nákup a rozhodování uvnitř firmy — tam „na cestě" smysl dává, protože jde o to, kdy zboží bude, ne co se dá slíbit dnes.

Žádná z těch čtyř veličin se nikam neukládá — počítají se v okamžiku dotazu z objednávek a dokladů. Objednané ani rezervované zboží nemá pořizovací cenu, nevstupuje do rozvahy, a proto nepatří mezi skladové stavy, ze kterých se dělá ocenění (§ 35.3) ani inventura (§ 35.7) — objednávka ani rezervace se skladovou knihou nehýbe.

Veličiny se počítají v tisícinách jednotky, stejně jako zbytek skladu, takže na nich nevzniká zaokrouhlovací chyba.

35.9.1 Kde je uvidíš

Na detailu skladové karty (§ 35.2.1) jsou nahoře čtyři dlaždice: Skladem (pod ní menším písmem *Volně k dispozici*), Rezervováno, Na cestě (dlaždice je proklik na objednávky dané karty; pod číslem je *Očekáváno {datum}* — nejbližší termín dodání ze všech otevřených objednávek) a U dodavatele.

Karta, která nemá jediný pohyb ani objednávku, ukazuje ve všech čtyřech dlaždicích nuly — ne prázdno. Je to záměr: „nula" je odpověď, „—" by byla chyba (viz § 35.9.4).

Hodnota prodejné vlastní dlaždici nemá; je to číslo pro strojové odběratele (REST API GET /api/stock/quantities a MCP server), odkud si ho bere e-shop. Může vyjít i záporně — to znamená, že je vyfakturováno víc, než je fyzicky skladem, a záměrně se to neschovává nulou.

Poznámka

Náhled dostupnosti u řádku faktury a skladového dokladu (§ 35.4.3, § 35.5.1) pracuje pořád s prostým fyzickým stavem, ne s prodejným množstvím — rezervace se od něj neodečítají. Je to jen informativní nápověda; závaznou kontrolu na zápornou zásobu dělá až zaúčtování.

35.9.2 Rezervace

Rezervaci vytvoří řádek vystavené faktury napojený na skladovou kartu, ke kterému ještě neexistuje zaúčtovaná výdejka. Rezervováno je tedy množství, které sice fyzicky leží ve skladu, ale už je slíbené konkrétnímu odběrateli.

Rezervaci netvoří: koncept faktury, proforma (zálohová faktura) ani stornovaná faktura. Storno faktury rezervaci uvolní. Naopak storno výdejky rezervaci vrátí — protidoklad se do součtu započítá se záporným znaménkem, takže se řádek faktury zase tváří jako nevydaný.

Důležité

Firmy se zapnutou automatickou výdejkou (§ 35.1) uvidí v rezervacích trvale nulu — a je to správně. Když se výdejka zakládá a účtuje v tomtéž okamžiku jako vystavení faktury, žádné okno mezi „slíbeno" a „vydáno" prostě neexistuje a rezervovat není co. Rezervace mají smysl pro firmy, které automatickou výdejku vypnuly a zboží vydávají ze skladu ručně (typicky později, při expedici) — teprve tam vzniká mezera, ve které by se stejný kus dal prodat podruhé.

Rezervace se sčítají za celou kartu; filtr na sklad je jen omezením, ne rozpadem. U každé karty je k dispozici i rozpad na konkrétní faktury (číslo, odběratel, datum vystavení, splatnost, množství).

35.9.3 Na cestě

„Na cestě" je součet toho, co je na otevřených objednávkách u dodavatelů a ještě nedorazilo. Za každý řádek objednávky:

    na cestě = max(0, potvrzeno (jinak objednáno) − uzavřený zbytek − přijato)

Do „na cestě" se počítají objednávky ve stavech Odesláno, Potvrzeno a Částečně přijato. Koncept se nepočítá (ještě to není závazek), stejně jako Přijato, Uzavřeno a Stornováno.

Firma si může přepnout, že se má počítat až od potvrzení dodavatelem (pak se započítávají jen stavy Potvrzeno a Částečně přijato) — přepínač stock_in_transit_from na firmě.

Přepínač najdeš v Nastavení → Daně a účetnictví, v sekci skladu, jako „Zboží se počítá „na cestě" od stavu". Výchozí je *Odesláno*. Pokud je pro tebe odeslaná, ale nepotvrzená objednávka příliš měkký příslib, přepni na *Potvrzeno* — pak se do „na cestě" započítají až objednávky, které dodavatel potvrdil.

Rozpad „na cestě" ukáže, ze kterých konkrétních objednávek se číslo skládá (číslo objednávky, stav, dodavatel, sklad, očekávaný termín, množství), seřazený podle očekávaného termínu.

35.9.4 U dodavatele

Poslední veličina je součet skladovosti hlášené dodavateli — sečtou se hodnoty *Skladem u dodavatele* ze všech aktivních nabídek dané karty (§ 35.10). Nabídka bez vyplněného množství přispěje nulou.

Je to cizí, orientační údaj — nikdo ho neověřuje a aplikace podle něj nic neblokuje. Slouží k rozhodnutí „má to vůbec smysl objednávat?" ještě předtím, než dodavateli zavoláš.

35.10 Nabídky dodavatelů („u dodavatele")

Sklad → U dodavatele je katalog dvojic zboží × dodavatel — kdo dané zboží nabízí, za kolik, v jaké lhůtě a kolik ho má. Je to podklad pro objednávání (§ 35.11), pro návrh doplnění zásob (§ 35.12) i pro cenotvorbu e-shopu, která si z preferovaného dodavatele bere nákupní cenu (viz § 36.8.2).

Tatáž data se dají editovat i z karty zboží, záložka Dodavatelé (§ 36.9) — je to jeden a týž záznam, jen jednou po kartách a jednou přes celý katalog.

Tip

Karta funguje dřív, než cokoli objednáš. Skladovou kartu si můžeš založit bez jediné příjemky, bez zásoby a bez objednávky, navěsit na ni nabídky dodavatelů s cenou a skladovostí a teprve pak řešit, jestli a od koho nakoupíš. Karta bez pohybu se v seznamech i v množstevních veličinách chová korektně — ukáže nuly, ne prázdno.

35.10.1 Pole nabídky

PoleVýznam
Zboží *(povinné)*skladová karta (SKU + název)
Dodavatel *(povinný)*klient s rolí dodavatele v adresáři (§ 18)
Kód u dodavatelekatalogové číslo, pod kterým položku vede dodavatel (max 80 znaků) — tiskne se na objednávku a páruje se podle něj ceník
Nákupní cenacena bez DPH, za kterou od něj nakupuješ
MěnaISO kód, výchozí CZK
Lhůta (dní)dodací lhůta
Skladem u dodavatelemnožství, které dodavatel hlásí — sčítá se do veličiny *U dodavatele* (§ 35.9.4)
DostupnostSkladem / Na objednávku / Nedostupné / Neznámá *(výchozí)*
Min. objednávkaminimální odběr; doplnění zásob pod něj nikdy nenavrhne méně
Balenívelikost balení; objednávané množství se zaokrouhluje nahoru na celá balení
Cena platí dodo kdy ceníková cena platí; prázdné = bez omezení
Hlavní dodavatelnejvýš jeden na kartu — nastavením se příznak ostatním sám shodí
Aktivnívyřazená nabídka zůstane v evidenci kvůli historii, ale nikam se nenabízí
Poznámkavolný text (max 255 znaků)

Ke každé nabídce se navíc eviduje kdy naposled se změnilo hlášené množství a odkud data pocházejí (ručně / import ceníku / automatický kanál). Údaj o stáří je čistě informativní — nabídka nikdy „nevyprší" sama od sebe a nic se podle stáří neblokuje.

Jedna dvojice zboží × dodavatel smí existovat jen jednou. Pokus přidat druhou nabídku téhož dodavatele k téže kartě skončí chybou „Tento dodavatel už u karty nabídku má — upravte ji." (HTTP 409).

Každý zápis nabídky (založení, úprava i smazání) spustí přepočet prodejních cen té karty — u karet s cenovou bází „Ruční" se totiž prodejní cena odvíjí od nákupní ceny hlavního dodavatele.

Seznam ukazuje u každé nabídky i Naši zásobu (kolik toho máš ty), takže se dá porovnat vlastní stav proti tomu, co drží dodavatel. Filtrovat jde fulltextem (SKU, název, kód u dodavatele, dodavatel), podle dostupnosti, jen aktivní a jen hlavní dodavatele.

35.10.2 Import ceníku dodavatele

Tlačítko Import ceníku nahraje ceník v XLSX nebo CSV do 2 MB. U CSV se oddělovač (; nebo ,) rozpozná z prvního řádku sám a soubor se čeká v UTF-8; u XLSX se čte jen první list, hodnoty se berou tak, jak jsou zapsané (buňka začínající = zůstane textem, vzorec se nevyhodnocuje).

Sloupce se poznají podle záhlaví, žádné ruční mapování se nedělá. Názvy se porovnávají bez ohledu na velikost písmen, diakritiku a oddělovače, takže Nákupní cena i nakupni_cena sedí stejně:

SloupecPovinnýAlternativní názvyPoznámka
skuanokod, code, katalogSKU existující karty
dodavatelano *(nebo ico)*vendor, supplier, firmanázev dodavatele
iconeič, ičo, company_idpřednost před názvem
kod_dodavatelenevendor_sku
nakupni_cenanepurchase_price, cena, price1 234,50 i 1234.50
menanecurrencyvýchozí CZK
dodaci_lhuta_dnynedelivery_days, delivery
skladem_u_dodavatelenestock_qty, skladem, mnozstvi
dostupnostneavailabilityskladem / na objednávku / nedostupné / neznámé
min_objednavkanemin_order_qty, moq
baleninepackage_qty, package
cena_plati_doneprice_valid_to, valid_to31.12.2026 i 2026-12-31
hlavni_dodavatelneis_preferred1/0, ano/ne
aktivnineis_activevýchozí 1
poznamkanenote

Chybí-li ve souboru sloupec sku, nebo současně dodavatel i ico, import se odmítne celý. Sloupec, který v souboru není, se nemění; sloupec, který tam je a je prázdný, hodnotu vymaže (výjimkou jsou měna, hlavní dodavatel a aktivní — prázdná hodnota se u nich ignoruje).

Chování importu:

Import je dvoufázový a je vše, nebo nic. Nejdřív běží náhled (výchozí zaškrtnuté „Jen náhled (nic nezapisovat)"), který vypíše po řádcích stav Nová / Změna / Beze změny / Chyba a u změn i konkrétní z → na u každého pole; souhrn nahoře ukazuje počty. Ostré tlačítko Provést import se objeví, teprve když je náhled bez jediné chyby. Ostrý běh s chybou nezapíše nic a vrátí hlášku „Import obsahuje chyby — nic nebylo zapsáno."

Upozornění

V tomto vydání je import ceníku funkční jen v náhledu na úrovni služby — HTTP endpoint POST /api/stock/vendor-offers/import selže dřív, než se ke zpracování souboru dostane. Tlačítko Import ceníku proto v aplikaci zatím nedoběhne. Než bude opravené, zadávej změny ceníku ručně na nabídkách (§ 35.10.1) nebo přes MCP server, který nabídky umí zakládat i upravovat po jedné.

35.11 Objednávky u dodavatele

Sklad → Objednávky dodavatelům je evidence toho, co jsi u dodavatele objednal a co z toho ještě nedorazilo. Objednávka je jediným zdrojem veličiny na cestě (§ 35.9) a zároveň podkladem pro příjemku — zboží z ní naskladníš i dřív, než přijde faktura.

Důležité

Objednávka není účetní případ. Dokud nepřejde vlastnictví zboží, nevzniká závazek ani zásoba — objednávka proto nezakládá žádný zápis v účetním deníku a nemá vůbec žádnou kontaci. Do účetnictví (a do ocenění zásob) vstoupí až zaúčtovaná příjemka. Sazba DPH na řádku je čistě orientační, aby seděl součet objednávky; objednávka není daňový doklad a nárok na odpočet z ní nevzniká.

35.11.1 Životní cyklus objednávky

Objednávka prochází sedmi stavy. Ručně se přepínají jen čtyři přechody (Odeslat, Potvrdit, Zavřít zbytek, Storno, plus Znovu otevřít); stavy *Částečně přijato* a *Přijato* si systém nastavuje sám podle toho, kolik zboží se z objednávky skutečně naskladnilo.

   ┌─────────┐   Odeslat    ┌──────────┐   Potvrdit   ┌───────────┐
   │ Koncept │─────────────►│ Odesláno │─────────────►│ Potvrzeno │
   │  draft  │ přidělí číslo│   sent   │              │ confirmed │
   └────┬────┘ → „na cestě" └────┬─────┘              └─────┬─────┘
        │ Smazat                 │                          │
        ▼                        └───────────┬──────────────┘
     (zmizí)                                 │ zaúčtování příjemky
                                             ▼
                              ┌──────────────────────────┐
                              │    Částečně přijato      │
                              │   partially_received     │
                              └─────────────┬────────────┘
                                            │ dorazilo všechno
                                            ▼
                                      ┌───────────┐
                                      │  Přijato  │
                                      │ received  │
                                      └───────────┘

   Storno — z draft / sent / confirmed      Zavřít zbytek — z sent / confirmed /
   a jen dokud nic nedorazilo:              partially_received / received:
        ──► Stornováno (cancelled)               ──► Uzavřeno (closed)
            konečný stav, zpět už ne                 ──► Znovu otevřít
PřechodZ jakého stavuCo se stane
OdeslatKonceptPřidělí číslo řady OBJ (§ 35.11.3), zapíše okamžik odeslání a od té chvíle se zboží počítá jako na cestě. Objednávka bez jediného řádku se odeslat nedá. Opakované kliknutí nic nezkazí — vrátí objednávku beze změny a další číslo nepropálí.
PotvrditOdesláno (i opakovaně u Potvrzeno)Zapíše, co dodavatel potvrdil: volitelně jiný termín na hlavičce a potvrzené množství i termín u jednotlivých řádků. Od té chvíle se „na cestě" počítá z potvrzeného množství, ne z objednaného. Prázdný termín stávající nepřepíše.
*(automaticky)*Odesláno / PotvrzenoZaúčtování příjemky navázané na objednávku ji samo přepne na *Částečně přijato* nebo *Přijato*. Storno příjemky posun vrátí zpět (Přijato → Částečně přijato → Odesláno/Potvrzeno) a množství se vrátí „na cestu".
Zavřít zbytekOdesláno, Potvrzeno, Částečně přijato, Přijato„Zbytek už nedorazí." Nedodané množství se na každém řádku odepíše jako stornované, takže zmizí z „na cestě" a doplnění zásob (§ 35.12) ho zase začne navrhovat k objednání. Koncept se zavírat nedá — ten se maže nebo stornuje.
StornoKoncept, Odesláno, PotvrzenoZruší celou objednávku. Odmítne se, jakmile z objednávky existuje jakýkoli příjem — chybou „K objednávce už existuje příjem — místo storna uzavři nedodaný zbytek („Zavřít zbytek")" (HTTP 409). Storno je konečné, zpět už se z něj nedá.
Znovu otevřítUzavřenoVrátí uzavřenou objednávku mezi živé: zruší odepsaný zbytek a stav dopočítá podle toho, kolik se reálně přijalo. Stornovanou objednávku znovu otevřít nelze.
SmazatKonceptSmaže objednávku i s řádky. Odeslanou objednávku smazat nejde — ta se stornuje nebo uzavře.

Upravovat se dá jen koncept. Pokus o úpravu odeslané objednávky vrátí chybu „Upravovat lze jen rozpracovanou (draft) objednávku. Odeslanou objednávku uprav přes potvrzení nebo uzavření zbytku." (HTTP 409) a v editoru je celý formulář uzamčený.

Poznámka

Do plnění objednávky se počítají jen řádky napojené na skladovou kartu. Řádek za dopravu nebo službu (bez karty) vstupuje do ceny objednávky, ale ne do „objednáno / přijato / zbývá" a ani do veličiny na cestě.

35.11.2 Hlavička a řádky

Hlavička: dodavatel *(povinný, z adresáře klientů — typicky s rolí dodavatele)*, datum objednávky *(povinné)*, sklad, na který se má dodat *(povinný, musí být aktivní)*, měna *(povinná)*, volitelně očekávané dodání, kurz (zobrazí se jen u cizí měny a je čistě orientační — ocenění určí až příjemka nebo faktura), reference dodavatele (číslo, pod kterým objednávku vede dodavatel), poznámka (tiskne se do PDF) a interní poznámka (do PDF se netiskne).

Řádek: skladová karta *(nepovinná — bez ní jde o dopravu či službu)*, vlastní sklad (přebije sklad z hlavičky), kód u dodavatele, popis *(povinný; prázdný se doplní z názvu karty)*, měrná jednotka (výchozí „ks"), objednané množství *(povinné, musí být větší než 0)*, cena za jednotku *(nesmí být záporná)*, sazba DPH (orientační), očekávané dodání řádku a poznámka.

Součty Celkem bez DPH a Celkem včetně DPH v hlavičce se počítají z objednaného množství. Po potvrzení jiného množství dodavatelem se nepřepočítávají — řádky v tabulce i v PDF už ale ukazují potvrzené množství, takže se hlavičkový součet a součet řádků mohou rozejít. Ber ho jako orientační hodnotu objednávky, ne jako fakturační podklad.

35.11.3 Číslování a PDF

Číslo objednávky má formát OBJ-RRRR-NNNN — prefix, rok z data objednávky a čtyřmístné pořadové číslo. Prefix OBJ je výchozí a dá se firmě přenastavit stejně jako u ostatních řad dokladů.

Číslo se přiděluje až při odeslání, ne při založení. Koncepty žádné číslo nemají (v seznamu i v detailu je u nich text „Koncept"), takže si můžeš připravit libovolné množství rozpracovaných objednávek, aniž bys spálil čísla v řadě. Přidělení je chráněné zamykacím dotazem — souběžné odeslání dvou objednávek nemůže vygenerovat duplicitu a při chybě se číslo nespotřebuje.

Tlačítko PDF vytiskne objednávku pro dodavatele (funguje i u konceptu, kde místo čísla stojí „koncept #…"). PDF obsahuje objednatele a dodavatele s IČ/DIČ, sklad dodání, datum objednávky, požadovaný termín, referenci dodavatele, měnu, tabulku řádků (kód u dodavatele, položka, množství, MJ, cena/MJ, celkem, termín), oba součty, veřejnou poznámku a podpisové řádky Vystavil / Schválil. Interní poznámka se do PDF nedostane.

35.11.4 Příjem zboží z objednávky

Tlačítko Příjem na sklad (na detailu objednávky ve stavu Potvrzeno nebo Částečně přijato) otevře dialog, který nabídne řádky se zbývajícím množstvím. Po potvrzení vznikne draft příjemka s původem „Objednávka", navázaná na objednávku i na jednotlivé její řádky. Skladem to zatím nehne — příjemku zaúčtuješ standardně ve Skladových dokladech (§ 35.4.1) a teprve tím se zásoba zvýší a stav objednávky přepočítá.

Částečné dodávky jsou normální stav: příjemek z jedné objednávky můžeš udělat kolik chceš, každá odečte svůj díl ze zbývajícího množství.

Nadměrná dodávka se ve výchozím stavu odmítne — pokus přijmout víc, než zbývá, skončí chybou „Množství přesahuje zbývající k příjmu z objednávky. Potvrď nadměrnou dodávku, nebo množství uprav." (HTTP 409) s výpisem dotčených řádků (požadováno / zbývá). Teprve když v dialogu zaškrtneš Povolit nadměrné dodání (zaškrtávátko se objeví, až když nějaký řádek limit překročí), příjem projde a dotčené řádky objednávky dostanou natrvalo badge „Nadměrné dodání". Objednané množství se přitom nikdy samo nezvyšuje — v objednávce zůstává to, co jsi objednal.

Cena je zatím jen odhad

Pořizovací cenu na příjemce systém určuje v tomto pořadí:

  1. Z řádku přijaté faktury navázaného na řádek objednávky (jednotková cena = částka řádku bez DPH ÷ množství). Cena je pak skutečná.
  2. Odhad z objednávky — cena za jednotku z objednávky přepočtená kurzem z hlavičky. Řádek dostane v dialogu i na dokladu příznak „Odhad" a nahoře svítí varování „Cena je odhad z objednávky — po doručení faktury přeceňte."
  3. Ručně přepsaná cena v dialogu má přednost před obojím.
Upozornění

Odhadnutá cena vstupuje rovnou do váženého klouzavého průměru karty (§ 35.3) a tím i do ocenění všech následujících výdejů. Není to jen kosmetický údaj — dokud ji neopravíš, má karta špatnou průměrnou cenu. Automatické přecenění příjemky po doručení faktury v aplikaci není. Máš dvě cesty: buď nechat příjemku v konceptu, dokud faktura nedorazí, a cenu před zaúčtováním jen přepsat (nejlevnější varianta), nebo — je-li už zaúčtovaná — ji stornovat a přijmout znovu se správnou cenou. Storno je hodnotově neutrální a množství se navíc vrátí „na cestu", takže se objednávka rozpadne zpátky do částečně přijatého stavu a příjem jde zopakovat.

35.11.5 Seznam objednávek

Sloupce: Číslo, Datum, Dodavatel, Sklad, Očekáváno, Objednáno, Přijato, Zbývá, Celkem bez DPH a Stav. Filtry: fulltext, stav (volba *Otevřené* zahrne koncepty, odeslané, potvrzené i částečně přijaté), sklad, rozsah data objednávky a „očekáváno do". Sloupce i hustotu řádků si nastavíš stejně jako u ostatních přehledů.

Na detailu objednávky je pod řádky sekce Vzniklé příjemky s prokliky na jednotlivé skladové doklady.

35.11.6 Oprávnění

Čtení seznamu, detailu i PDF stačí běžné skladové oprávnění. Všechny zápisové akce (založit, upravit, odeslat, potvrdit, zavřít, stornovat, znovu otevřít, smazat, vytvořit příjemku i hromadné objednání) vyžadují samostatné oprávnění stock.orders.write — role „skladník" s právem na skladové doklady tedy objednávat nemůže, dokud jí právo nepřidáš. Uživatelé klientského portálu se k objednávkám nedostanou vůbec, ani ke čtení, ani když mají skladové právo.

35.12 Doplnění zásob — co objednat

Doplnění zásob odpovídá na otázku *„co a kolik mám doobjednat?"*. Nejde jen o seznam karet pod minimem — z návrhu se odečítá i to, co už je na cestě, a přičítá to, co je rezervované.

35.12.1 Jak se navržené množství počítá

Postupně, pro každou aktivní kartu, která má vyplněnou minimální zásobu:

  1) cílová hladina  = minimální zásoba × koeficient      (výchozí koeficient 1,0)
  2) schodek         = cílová hladina − skladem + rezervováno − na cestě
  3) je-li schodek ≤ 0 → kartu nenavrhovat vůbec
  4) zaokrouhlit schodek NAHORU na celá balení hlavního dodavatele
  5) výsledek zvednout aspoň na minimální odběr hlavního dodavatele

Vedle navrženého množství se u karty ukáže i schodek (surové číslo před zaokrouhlením), aby bylo vidět, kolik z návrhu přidalo balení a minimální odběr.

Karta bez vyplněné minimální zásoby se nikdy nenavrhne — stejně tak neaktivní karta. Zboží, které nakupuješ až na zakázku, tedy tímhle modulem neobjednáváš; nastav mu minimum, nebo objednávej ručně (§ 35.11).

35.12.2 Příklad

Karta *KAB-230* má minimální zásobu 50 ks, skladem je 12 ks, z toho 5 ks drží nevydaná faktura, a 20 ks je na cestě z otevřené objednávky. Hlavní dodavatel prodává po balení 24 ks a jeho minimální odběr je 10 ks:

KrokVýpočetVýsledek
--------:
Cílová hladina50 × 1,050 ks
Schodek50 − 12 + 5 − 2023 ks
Zaokrouhlení na balenístrop(23 ÷ 24) × 2424 ks
Minimální odběrmax(24; 10)24 ks

Návrh tedy zní objednat 24 ks, přestože „chybí do minima" je na první pohled 38 ks (50 − 12). Kdyby se „na cestě" neodečítalo, návrh by zněl 48 ks a po dodání obou objednávek by na skladě leželo o 24 ks víc, než je potřeba.

35.12.3 Jak se k němu dostaneš

Tlačítko Doplnění zásob je v hlavičce seznamu objednávek (§ 35.11.5).

Upozornění

Vlastní obrazovka doplnění zásob v tomto vydání ještě není. Tlačítko Doplnění zásob vede zatím jen na seznam skladových karet s filtrem „jen pod minimem" (§ 35.2) — a ten pracuje s prostým porovnáním „skladem < minimum". Nezná rezervace, neodečítá zboží na cestě a nenavrhuje množství. Kompletní výpočet podle § 35.12.1 i hromadné založení objednávek z návrhu (jedna objednávka na dodavatele, vždy jako koncept, karty bez dodavatele se vypíšou jako přeskočené) jsou zatím dostupné jen přes REST API a MCP server — asistenta se tedy zeptat můžeš, na obrazovce to zatím neuvidíš.

35.13 Vychystání, expedice a vratky

Stránka Sklad → Vychystání a expedice vede fyzický tok zboží odděleně od fakturace. Vychystávací úlohu lze založit z konceptu výdejky. Převzetím se koncept atomicky uzamkne pro tuto úlohu, takže jej už nelze samostatně upravit, smazat ani zaúčtovat a zásoba se nevydá dvakrát. Pro prodejní objednávku zvol příslušný zdroj a UUID objednávky, nebo otevři vychystání přímo z jejího detailu.

Na mobilní obrazovce skladník skenuje SKU nebo EAN. Každý sken nese vlastní identifikátor operace, takže opakování stejného požadavku po výpadku nepřidá další kus. Cizí kód a množství nad požadovaný počet systém odmítne. Oprávněná odchylka vyžaduje samostatné právo a uvedený důvod.

Z vychystaného množství vzniká jedna nebo více zásilek. Každá má vlastního dopravce, tracking a vlastní položky. Expedice zásilky vytvoří a zaúčtuje právě jednu výdejku přes běžnou skladovou knihu. Částečná expedice ponechá zbytek úlohy otevřený a neodeslané množství dál alokované.

U sledovaných karet před zabalením vyber konkrétní sériová čísla nebo množství ze šarží a jejich skutečné lokace. Vratka nabídne jen jednotky z dané zásilky po odečtení předchozích vratek. Při změně cílového skladu vyber jeho lokaci znovu.

Vratka se vždy váže na konkrétní expedovanou zásilku a nesmí překročit její historicky odeslané množství. U každé vratky se zvolí jeden výsledek:

Příjem vratky nepřipisuje peníze, nevytváří dobropis a nemění úhradu faktury. Pokud fyzický tok faktury spravuje objednávka nebo vychystání, její vystavení ani následný dobropis nevytvoří další automatický skladový pohyb. Fyzickou vratku zaznamenej u zásilky. Běžné faktury mimo tento tok používají dosavadní nastavení automatického výdeje a vratky. Snapshot komponent, sledovaných jednotek, šarží a sériových čísel zůstává u zásilky a vratky, takže pozdější změna karty nebo složení setu historii nepřepíše.

Práva Vychystání a expedice dovolují skenovat, balit, expedovat a přijímat vratky. Právo Odchylky při vychystání navíc dovoluje potvrdit výslovně zdůvodněnou odchylku. Běžné čtení stránky vyžaduje skladové oprávnění.

35.14 Prodejní objednávky a tvrdé rezervace

Stránka Prodej - Prodejní objednávky odděluje obchodní stav, platební stav a stav expedice. Koncept lze měnit. Potvrzení uloží neměnný snapshot odběratele, cen, slev, měny, kurzu, režimu cen s DPH a skladových komponent a potom atomicky rezervuje dostupné množství na konkrétním skladu. Politika Vše, nebo nic potvrzení při nedostatku odmítne. Politika Částečná rezervace rezervuje dostupnou část a objednávku zařadí do fronty nedostatků.

Po doplnění skladu použijte na detailu objednávky Rezervovat zbývající množství. Akce přidá pouze dosud chybějící rezervaci. Existující vychystání rozšíří o nové množství a zachová již odeslané zásilky; zbývající kusy lze odeslat další zásilkou.

Rezervace je tvrdá: další objednávka ani samostatná vychystávací úloha nemůže stejné množství použít. Sklad musí být aktivní a prodejný. Částečná expedice spotřebuje jen odeslané množství a zbytek zůstane rezervovaný pro další zásilku. Zrušení nebo vypršení platnosti uvolní pouze dosud nespotřebovaný zbytek. Hromadné uvolnění prošlých rezervací běží jako trvalá úloha a obrazovka ukazuje skutečný počet zpracovaných objednávek.

Akce Vytvořit fakturu založí jeden koncept vydané faktury a zachová režim Ceny obsahují DPH. Opakování akce vrátí stejný doklad. Faktura se automaticky nevystaví a běžná fakturace nezískává žádný nový povinný krok. Platební stav lze měnit nezávisle a sám o sobě nemění sklad.

Vratka rozlišuje peněžní řešení, například dobropis nebo refundaci, od fyzického návratu zboží. Naskladnění vráceného zboží se provádí přes zásilku a skladový protidoklad; peněžní vypořádání tento pohyb samo nespouští.

35.14.1 Import počátečních zásob

Na stránce Sklad - Skladové doklady otevřete Import počátečních zásob. Vyberte sklad, datum, vlastní stálý identifikátor importu a CSV nebo XLSX soubor. U CSV lze nastavit kódování a oddělovač, u XLSX vybrat list. Po změně těchto voleb se znovu načte ukázka pro kontrolu sloupců a jejich mapování. Povinné sloupce jsou stálé ID řádku, SKU, množství a pořizovací cena za jednotku. SKU i ID mohou začínat nulou; import je zachová jako text.

Nejprve spusťte kontrolu celého souboru. Na pozadí se ověří všechny řádky stejnými pravidly jako skutečná příjemka. Teprve dokončený náhled bez chyb lze zaúčtovat. Zaúčtování vytváří běžné příjemky po dávkách, takže množství i ocenění vstoupí do stejné skladové knihy jako ručně zadané doklady. Průběh lze bezpečně zavřít a znovu otevřít; dokončené dávky se neopakují.

Kombinace identifikátoru importu a stálého ID řádku určuje jeho totožnost. Opakovaný shodný import nevytvoří další zásobu. Pokud stejné ID nese jiné SKU, sklad, datum, množství nebo cenu, náhled zobrazí konflikt a nic nezaúčtuje. Pro další nezávislý počáteční stav použijte jiný identifikátor importu. Karty se sledováním šarží nebo sériových čísel přijměte ruční příjemkou, kde lze vyplnit úplné alokace.

35.15 Intrastat export pro InstatEvo

Pro podání od 1. 1. 2026 se používá aplikace Celní správy InstatEvo, která nahradila InstatDesk a InstatOnline. MyÚčto hlášení samo nepodává. Připraví CSV v oficiální dvacetisloupcové struktuře pro import do InstatEvo a před stažením zkontroluje zdrojové doklady i povinné údaje.

Export otevřeš přes Sklad > Intrastat export. Postup je tento:

  1. Vyber referenční období a směr pohybu. Odeslání pracuje s výdejkami navázanými na vydané faktury, přijetí s příjemkami navázanými na přijaté faktury. Nejstarší podporované období je leden 2026.
  2. Nastav výchozí kód transakce, druh dopravy, dodací podmínky, typ věty a případný statistický znak. Kódy vybírej podle platných číselníků a skutečné povahy vykazovaných obchodů. Výchozí hodnoty jsou pomůcka, nikoli náhrada za toto posouzení. Systém odmítne kódy, které nejsou v aktuálním číselníku podporovaném exportem. Statistický znak je číselný a jeho vazbu na KN8 následně ověří InstatEvo.

Export podporuje standardní věty ST a běžný prodej nebo nákup s kódem transakce 11, případně přímý obchod se soukromým spotřebitelem s kódem 12. Vratky, zpracování, finanční leasing, malé zásilky a další zvláštní pohyby vyžadují odlišná pravidla pro hodnotu či obsah věty a do tohoto exportu zatím nevstupují. U odeslání s kódem transakce 12 systém při chybějícím DIČ spotřebitele použije oficiální zástupný identifikátor QV123.

  1. Klikni na Zkontrolovat náhled. Přehled zobrazí počet řádků, chyby, upozornění, celkovou čistou hmotnost a pro každý řádek zdrojový doklad, partnera, KN8, zemi původu, hmotnost, doplňkové množství a fakturovanou hodnotu.
  2. Oprav všechny chyby na skladových kartách, fakturách nebo firemních údajích a vytvoř náhled znovu. Upozornění, například zkrácení dlouhého popisu, stažení neblokují. Stáhnout CSV pro InstatEvo se zpřístupní jen u náhledu bez chyb.
  3. Stáhni CSV, klikni na Otevřít InstatEvo a v otevřené oficiální aplikaci zvol import z CSV. Vyber stažený soubor, proveď kontroly InstatEvo a hlášení odešli z této aplikace.

Export zahrnuje jen zaúčtované přeshraniční pohyby zboží uvnitř EU, které jsou navázané na řádek faktury. Tuzemské pohyby, pohyby vůči zemím mimo EU, rozpracované doklady a stornované pohyby včetně jejich protidokladů se nevykazují. Převod mezi vlastními sklady do exportu nevstupuje.

Stát fyzického odeslání nebo určení se přebírá ze země partnera uložené na faktuře. Náhled na tento předpoklad upozorní. U trojstranného obchodu, kdy se stát partnera liší od skutečného státu pohybu zboží, je potřeba řádek zkontrolovat v InstatEvo; samostatný stát fyzického pohybu se na skladovém dokladu zatím neeviduje.

Fakturovaná hodnota se vykazuje v CZK. U faktury v cizí měně proto musí být uložen kurz do CZK. Hodnota řádku se poměrně přepočítá podle množství konkrétního skladového pohybu. Fakturační řádky nemají samostatné označení, které by spolehlivě odlišilo dopravu a jiné vedlejší výdaje od samostatně prodané služby. Export proto automaticky započítá jen rozpoznané skladové zboží. Pokud faktura obsahuje jakýkoli nenulový řádek nenavázané služby, dopravy, slevy nebo jiné položky, náhled zobrazí blokující chybu, i když se více takových řádků hodnotově navzájem vyruší. Jejich hodnotu do CSV nepřičte. Takový doklad nelze automaticky exportovat, dokud není fakturovaná hodnota zboží jednoznačně určitelná; výkaz je potřeba připravit nebo opravit ručně v InstatEvo.

Pro vytvoření úplného řádku musí být k dispozici zejména:

Změna období, směru nebo některého kódu zruší předchozí náhled. Před každým stažením proto vytvoř nový náhled a zkontroluj, že odpovídá aktuálním parametrům.

35.16 Omezení a tipy

35.16.1 Co objednávky ještě neumí

Nákupní část modulu je první vydání a záměrně řeší jen evidenci objednaného zboží. Tohle v ní není:

ChybíNáhradní řešení
Účetní zápis z objednávkyNení chyba, ale záměr — objednávka není účetní případ. Do deníku vstoupí až zaúčtovaná příjemka.
Párování objednávka ↔ přijatá fakturaObrazovka ani akce pro spárování neexistuje. Objednávku a fakturu k sobě dohledáš ručně přes číslo objednávky (pole „Reference dodavatele" a popis příjemky).
Kontrola cenové odchylky faktura vs. objednávkaNeprovádí se; cenu z faktury si porovnej ručně.
Odeslání objednávky e-mailemTlačítko Odeslat znamená „označ za odeslanou", ne „odešli". PDF (§ 35.11.3) stáhni a pošli dodavateli sám.
Automatické přecenění příjemky po doručení fakturyNechat příjemku v konceptu, nebo ji po zaúčtování stornovat a přijmout znovu (§ 35.11.4).
Dropshipping — objednávání zboží až na zakázkuDoplnění zásob pracuje jen s kartami, které mají minimální zásobu. Zboží na objednávku objednávej ručně (§ 35.11). Cenotvorbu pro dropshipping popisuje § 36.9.2.
Schvalovací workflow objednávkyPDF má podpisové pole „Schválil", ale žádný schvalovací krok v aplikaci není.
Hromadné akce nad existujícími objednávkamiHromadně jde jen *zakládat* (z návrhu doplnění zásob); odeslat, uzavřít nebo stornovat se musí po jedné.
Obrazovka doplnění zásob a hromadné objednáníZatím jen přes API a MCP (§ 35.12.3).
Import ceníku dodavatele přes UIV tomto vydání nedoběhne (§ 35.10.2) — zadávej nabídky ručně nebo přes MCP.
Přepnutí „na cestě až od potvrzení" v nastaveníPole existuje jen v databázi (§ 35.9.3).
Tip

Skladovou kartu nemusíš mít vždy založenou dopředu — v průvodci naskladněním z přijaté faktury (§ 35.5.2) ji jde založit rovnou z popisu řádku faktury, bez nutnosti přecházet napřed na Skladové karty. A naopak: kartu si můžeš založit dlouho předtím, než cokoli koupíš — bez zásoby, bez pohybu, jen s nabídkami dodavatelů (§ 35.10), a teprve podle nich se rozhodnout, jestli a od koho objednáš.