Přeskočit na hlavní obsah

Souhrnné hlášení k DPH - REST API

Jak vytvořit souhrnné hlášení pomocí REST API Flexi

Autor: Petr Pech

Souhrnné hlášení k DPH lze získat v XML i PDF nejen v aplikaci, ale i prostřednictvím REST API ABRA Flexi.


Způsob volání

Služba je dostupná metodou GET na adrese /c/{firma}/souhrnne-hlaseni.{přípona}, kde {firma} je databázový identifikátor firmy. Podporovanými výstupními formáty jsou xml a pdf.

ℹ️ Volání s příponou pdf server přesměruje (HTTP 307) na adresu /c/{firma}/souhrnne-hlaseni-dph.pdf. Pokud si klient přesměrování nepřebírá automaticky, je nutné jej následovat, jinak PDF nezískáte.


Parametry

Na pořadí parametrů nezáleží.

Parametr

Povinnost

Význam

rok

povinný

Rok, pro který má být souhrnné hlášení vygenerováno, ve tvaru ?rok=2024.

mesic

povinný, není-li zadáno ctvrtleti

Číslo měsíce ve tvaru ?mesic=1. Možné hodnoty jsou 1 až 12.

ctvrtleti

povinný, není-li zadán mesic

Číslo čtvrtletí ve tvaru ?ctvrtleti=1. Možné hodnoty jsou 1 až 4.

stat

nepovinný

Stát, pro který chceme souhrnné hlášení zpracovat, ve tvaru ?stat=CZ. Možné hodnoty jsou CZ a SK. Pokud není zadán, použije se stát legislativy firmy.


Ukázka volání

Kompletní nejjednodušší volání vypadá následovně:

GET https://demo.flexibee.eu/c/demo/souhrnne-hlaseni.xml?mesic=1&rok=2024

Případně pro PDF:

GET https://demo.flexibee.eu/c/demo/souhrnne-hlaseni.pdf?mesic=1&rok=2024


Výsledek volání

V případě úspěšného vykonání služby je vracen HTTP status 200 společně s tělem v požadovaném formátu. Pro českou legislativu jde o XML strukturu pro daňový portál (hodnoty jsou ilustrativní):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Pisemnost nazevSW="ABRA Flexi" verzeSW="2026.5.2">
<DPHSHV verzePis="01.01">
<VetaD d_poddp="15.02.2024" dokument="SHV" k_uladis="DPH" mesic="1" rok="2024" shvies_forma="R"/>
<VetaP c_pop="1" c_pracufo="2301" c_ufo="454" dic="CZ12345678" naz_obce="Praha" opr_postaveni="jednatel" psc="10000" stat="ČESKÁ REPUBLIKA" typ_ds="P" ulice="Ulice 1" zkrobchjm="Vzorová firma s.r.o."/>
<VetaR c_rad="1" c_vat="SK1234567890" k_pln_eu="0" k_stat="SK" pln_hodnota="25620" pln_pocet="1" por_c_stran="1"/>
</DPHSHV>
</Pisemnost>

Pro slovenskou legislativu má výstup odlišnou strukturu:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<dokument>
<hlavicka>
<identifikacneCislo>
<kodStatu>SK</kodStatu>
<dic>12345678</dic>
</identifikacneCislo>
<danovyUrad/>
<druhSV>
<riadny>1</riadny>
<opravny>0</opravny>
<dodatocny>0</dodatocny>
</druhSV>
<obdobie>
<mesiac>1</mesiac>
<stvrtrok/>
<rok>2024</rok>
</obdobie>
<obchodneMeno>
<riadok>Vzorová firma s.r.o.</riadok>
</obchodneMeno>
<celkovaHodnota>0</celkovaHodnota>
</hlavicka>
<telo>
<strana>
<zaznam>
<kodStatu/>
<idCislo/>
<hodnota/>
<kod/>
</zaznam>
</strana>
</telo>
</dokument>

Při volání s příponou .pdf je výsledkem celý PDF soubor souhrnného hlášení.


Data vygenerovaného hlášení

Samotná data vygenerovaného souhrnného hlášení — tedy jednotlivé řádky, ne písemnost — jsou dostupná na adrese /c/{firma}/souhrnne-hlaseni-dph.{přípona} ve formátech json a xml. Vyžadovány jsou stejné parametry období, tedy rok a mesic nebo ctvrtleti; volitelně lze uvést i stat. Použít lze také filtraci.

GET https://demo.flexibee.eu/c/demo/souhrnne-hlaseni-dph.json?rok=2024&ctvrtleti=2


Příklady nevalidních volání

V případě nevalidních volání je vracen status 4xx nebo 5xx a obsahem odpovědi je popis chyby.

1. Nevalidní zadání období

GET https://demo.flexibee.eu/c/demo/souhrnne-hlaseni.xml?ctvrtleti=5&rok=2024

Výsledkem je odpověď HTTP status 400 Bad Request a popis chyby:

<winstrom version="1.0">
<success>false</success>
<message>Zadaný parametr čtvrtletí není v rozmezí povolených hodnot (1 - 4).</message>
</winstrom>

2. Nevalidní zadání státu

GET https://demo.flexibee.eu/c/demo/souhrnne-hlaseni.xml?ctvrtleti=1&rok=2024&stat=CS

Výsledkem je odpověď HTTP status 400 Bad Request s kódem unsupported_param_value_exception:

<winstrom version="1.0">
<success>false</success>
<message>Parametr 'stat' má nepodporovanou hodnotu! Zvolte jednu z následujících možností: [CZ, SK]</message>
</winstrom>

3. Nezadané všechny povinné parametry

GET https://demo.flexibee.eu/c/demo/souhrnne-hlaseni.pdf?rok=2024

Výsledkem je odpověď HTTP status 400 Bad Request a popis chyby:

<winstrom version="1.0">
<success>false</success>
<message>Není zadáno období pro zpracování souhrnného hlášení.</message>
</winstrom>


FAQ

Jak souhrnné hlášení vytvořím v aplikaci?

Postup najdete v článku Souhrnné hlášení k DPH.

Jak zadat fakturu, aby se promítla do souhrnného hlášení?

Proč se hodnoty v hlášení a v přiznání liší?

Proč se do XML nepropisuje DIČ odběratele a stát?

Proč PDF vykazuje méně řádků?


Související

Dostali jste odpověď na svou otázku?