Přeskočit na hlavní obsah

Hotovostní úhrada

Hotovostní úhrada přijaté nebo vydané faktury v REST API

Autor: Petr Pech

Fakturu vydanou nebo přijatou lze přes XML hotovostně uhradit — Flexi k ní sama vytvoří uhrazující pokladní doklad. Slouží k tomu vnořený element <hotovostni-uhrada>.


Základní volání

<?xml version="1.0"?>
<winstrom version="1.0">
<faktura-vydana>
<!-- uhrazovaný doklad; může být i "faktura-prijata" -->
<id>code:FAKTURA1</id>
<!-- lze normálně uvést další vlastnosti dokladu jako při běžném importu -->
<hotovostni-uhrada>
<pokladna>code:POKLADNA KČ</pokladna> <!-- povinné -->
<typDokl>code:STANDARD</typDokl> <!-- povinné: typ vytvářeného pokladního dokladu -->
<uhrazujiciDokl>code:UHRADA1</uhrazujiciDokl> <!-- nepovinné -->
<kurzKDatuUhrady>true</kurzKDatuUhrady> <!-- nepovinné: true = kurz k datu úhrady, jinak kurz z uhrazované faktury -->
<castka>1000</castka>
<datumUhrady>2026-01-01</datumUhrady>
</hotovostni-uhrada>
</faktura-vydana>
</winstrom>

🚨 Elementy <pokladna> a <typDokl> jsou povinné. Bez nich volání skončí chybou 400 s kódem nestedObjectRequired: „Element [pokladna] je uvnitř elementu [hotovostni-uhrada] povinný."


Přehled elementů

Element

Povinnost

Význam

pokladna

povinné

Pokladna, ve které vznikne uhrazující doklad.

typDokl

povinné

Typ vytvářeného pokladního dokladu.

castka

podle režimu

Hrazená částka. Povinná v režimu rozdilZauctovat, volitelná v režimu vychozi, ignorovaná v režimu uplnaUhrada.

rezim

nepovinné

Režim úhrady, viz níže. Bez uvedení platí vychozi.

uhrazujiciDokl

nepovinné

Identifikátor uhrazujícího pokladního dokladu, viz níže.

datumUhrady

nepovinné

Datum úhrady ve formátu YYYY-MM-DD.

kurzKDatuUhrady

nepovinné

true = použije se kurz platný k datu úhrady, jinak kurz převzatý z uhrazované faktury.

kurz + kurzMnozstvi

nepovinné

Vlastní kurz. Uvádí se vždy oba, viz níže.

rada

nepovinné

Dokladová řada vytvářeného pokladního dokladu. Standardně se bere z vybraného typu dokladu, případně z vybrané pokladny.


Režim úhrady

Pomocí tagu <rezim> lze ovlivnit režim hotovostní úhrady. Pokud není tag uveden nebo je prázdný, platí režim vychozi.

Hodnota

Chování

vychozi

Chování je ovlivněno uvedením či neuvedením částky. Je-li částka uvedena a rovná se celkové částce dokladu, dojde k úplné úhradě. Není-li rovna, dochází k částečné úhradě. Není-li částka uvedena, zjistí se z uhrazovaného dokladu a doklad je plně uhrazen.

uplnaUhrada

Částka se neuvádí (pokud se uvede, je ignorována). Dojde k úplné úhradě dokladu a výsledná částka se zaokrouhlí dle nastavení z formy úhrady nebo typu dokladu. Zaokrouhlovací rozdíl se zaúčtuje do interních dokladů — zaokrouhlení se provádí pouze u tuzemské měny.

rozdilZauctovat

Částka musí být vždy uvedena. Pokud není rovna celkové částce, zaúčtuje se rozdíl do interních dokladů. V opačném případě se jedná o celkovou úhradu dokladu a k zaúčtování rozdílu nedochází.

⚠️ Režim rozdilZauctovat bez elementu <castka> vrátí 400 elementRequired: „Element 'castka' musí být uveden." Neplatná hodnota režimu vrátí 400 elementInvalidValue.


Vlastní kurz

Hotovostní úhradě lze také přímo vnutit kurz a kurzové množství. Pokud kurz vyplníte, je nutné vyplnit i kurzové množství — bez něj to nelze.

<?xml version="1.0"?>
<winstrom version="1.0">
<faktura-vydana>
<id>code:FAKTURA_1</id>
<hotovostni-uhrada>
<pokladna>code:POKLADNA EUR</pokladna>
<!-- není povinný; pokud by nebyl vyplněn, použije se kurz převzatý z uhrazované faktury -->
<kurz>25</kurz>
<kurzMnozstvi>1</kurzMnozstvi>
<typDokl>code:STANDARD</typDokl>
<castka>1000</castka>
<datumUhrady>2026-12-03</datumUhrady>
</hotovostni-uhrada>
</faktura-vydana>
</winstrom>


Identifikátor uhrazujícího dokladu

ID uhrazujícího pokladního dokladu (tag <uhrazujiciDokl>) lze uvést podle obvyklých pravidel a funguje následovně:

  • Nová úhrada — pokud uvedeno není, vždy se vytvoří nový pokladní doklad; naimportujete-li tedy XML dvakrát, vytvoří se dvě úhrady. Pokud je uvedeno a doklad s daným ID neexistuje, založí se.

  • Aktualizace — pokud doklad existuje, musí uhrazovat danou fakturu (jinak jde o chybu). Znamená to, že se má úhrada pouze zaktualizovat dostupnou částkou na uhrazujícím dokladu. Ostatní parametry úhrady se ignorují.


Dokladová řada

V tagu <hotovostni-uhrada> lze uvést ještě dokladovou řadu pro vytvářený pokladní doklad. Není to povinné a standardně se bere z vybraného typu dokladu, případně z vybrané pokladny.

<rada>code:POKLADNA+</rada>

ℹ️ Parametr <zbytek> se u hotovostní úhrady nepoužívá — uhrazující doklad si Flexi vytváří sama, takže rozdíl mezi částkami nemůže vzniknout; výši úhrady řídíte elementy <castka> a <rezim>. Popis hodnot parametru zbytek najdete v článku Párování plateb, kde se tento parametr uvádí v elementu <sparovani>.


Související

Dostali jste odpověď na svou otázku?