Od verze 2021.9.1 je možné přes REST API zaokrouhlit ceny přijaté faktury nebo pokladního dokladu. Služba se jmenuje zaokrouhli a je dostupná v evidencích faktura-prijata a pokladni-pohyb.
Popis služby
Jde o totožnou službu, jakou najdete i v desktopové aplikaci:
detail přijaté faktury > Služby > Zaokrouhlení cen dokladu
detail pokladního dokladu > Služby > Zaokrouhlení cen dokladu
Službě předáte ceny, na které má být doklad zaokrouhlen. Rozdíl proti stávajícím součtům pak zapíše jako novou položku typu typPolozky.ucetni s názvem Zaokrouhleno, takže součty dokladu odpovídají požadovaným hodnotám.
⚠️ Zaokrouhlení cen dokladu lze použít jen u položkového dokladu. U dokladu bez vlastních položek — například u pokladního dokladu, který je pouze úhradou faktury — vrací služba 201 s success true, ale žádná zaokrouhlovací položka nevznikne. Výsledek proto vždy ověřte přečtením součtů dokladu.
Volá se metodou POST nebo PUT na endpoint dané evidence:
POST https://demo.flexibee.eu/c/demo/faktura-prijata.xml
POST https://demo.flexibee.eu/c/demo/pokladni-pohyb.xml
Vstupní parametry služby
Služba má jediný vstupní parametr pozadovaneCeny — ceny, podle kterých bude dopočítán zaokrouhlovací rozdíl, zadané po jednotlivých sazbách DPH:
Elementy | Sazba |
| Základní sazba — základ, DPH a včetně DPH |
| Snížená sazba |
| 2. snížená sazba |
| Částka osvobozená od daně |
🚨 Trojice hodnot v jedné sazbě musí být vnitřně konzistentní — základ plus DPH se musí rovnat částce včetně DPH. Jinak služba vrací 400 s kódem dokladKorekceCastekChybaSouctu a hlášením Součet částek v sazbě 'základní' nesouhlasí.
ℹ️ Požadované ceny se zadávají v měně dokladu. U dokladu v cizí měně se částky v tuzemské měně dopočítají kurzem dokladu.
Příklady použití
Přijatá faktura v základní sazbě
POST https://demo.flexibee.eu/c/demo/faktura-prijata.xml
<winstrom version="1.0">
<faktura-prijata>
<!-- Přijatá faktura, která bude zaokrouhlena. -->
<id>code:PF0001/2021</id>
<!-- Lze uvést i další vlastnosti dokladu, jako při importu. -->
<zaokrouhli>
<pozadovaneCeny>
<!-- Základ částky pro základní sazbu. -->
<zklZakl>110</zklZakl>
<!-- DPH částky pro základní sazbu. -->
<dphZakl>23.1</dphZakl>
<!-- Částka pro základní sazbu včetně DPH. -->
<celkZakl>133.1</celkZakl>
</pozadovaneCeny>
</zaokrouhli>
</faktura-prijata>
</winstrom>
Odpovědí je 201 Created se standardním výsledkem importu a na dokladu vznikne zaokrouhlovací položka:
<winstrom version="1.0">
<faktura-prijata>
<id>code:PF0001/2021</id>
<sumCelkem>133.1</sumCelkem>
<polozkyDokladu>
<faktura-prijata-polozka>
<!-- Původní položka dokladu. -->
<typPolozkyK>typPolozky.obecny</typPolozkyK>
<sumZkl>100.0</sumZkl>
<sumDph>21.0</sumDph>
<sumCelkem>121.0</sumCelkem>
</faktura-prijata-polozka>
<faktura-prijata-polozka>
<!-- Položka, která vznikla při zaokrouhlení. -->
<typPolozkyK>typPolozky.ucetni</typPolozkyK>
<nazev>Zaokrouhleno</nazev>
<sumZkl>10.0</sumZkl>
<sumDph>2.1</sumDph>
<sumCelkem>12.1</sumCelkem>
</faktura-prijata-polozka>
</polozkyDokladu>
</faktura-prijata>
</winstrom>
Pokladní doklad v nulové sazbě
PUT https://demo.flexibee.eu/c/demo/pokladni-pohyb.xml
<winstrom version="1.0">
<pokladni-pohyb>
<!-- Pokladní pohyb, který bude zaokrouhlen. -->
<id>code:P-0001/2021</id>
<!-- Lze uvést i další vlastnosti dokladu, jako při importu. -->
<zaokrouhli>
<pozadovaneCeny>
<!-- Požadovaná částka osvobozená od daně. -->
<osv>140</osv>
</pozadovaneCeny>
</zaokrouhli>
</pokladni-pohyb>
</winstrom>
Výsledkem je opět zaokrouhlovací položka na dokladu:
<winstrom version="1.0">
<pokladni-pohyb>
<id>code:P-0001/2021</id>
<sumCelkem>140</sumCelkem>
<polozkyDokladu>
<pokladni-pohyb-polozka>
<!-- Původní položka dokladu. -->
<typPolozkyK>typPolozky.obecny</typPolozkyK>
<sumZkl>130.0</sumZkl>
<sumDph>0.0</sumDph>
<sumCelkem>130.0</sumCelkem>
</pokladni-pohyb-polozka>
<pokladni-pohyb-polozka>
<!-- Položka, která vznikla při zaokrouhlení. -->
<typPolozkyK>typPolozky.ucetni</typPolozkyK>
<nazev>Zaokrouhleno</nazev>
<sumZkl>10.0</sumZkl>
<sumDph>0.0</sumDph>
<sumCelkem>10.0</sumCelkem>
</pokladni-pohyb-polozka>
</polozkyDokladu>
</pokladni-pohyb>
</winstrom>
