Preskoči na glavno vsebino

Rozúčtovanie dokladu pomocou REST API

Ako rozúčtovať doklad pomocou služby v API Flexi?

Avtor: Petr Pech

Rovnako ako v desktopovej alebo webovej aplikácii je možné využiť funkciu Rozúčtovanie dokladu. Funkciu rozúčtovania dokladu možno použiť len pri doklade, ktorý neobsahuje položky. Pomocou tejto funkcie je možné rozúčtovať doklad na čiastkové položky dokladu.

Táto funkcia je využiteľná pre vybrané evidencie ABRA Flexi:

  • faktura-prijata

  • faktura-vydana

  • banka

  • pokladni-pohyb

  • pohledavka

  • zavazek

Spôsob volania

Možno využiť HTTP metódu: PUT.

Endpoint pre zaslanie rozúčtovania sa riadi evidenciou, ďalej uvádzate identifikátor dokladu, teda napríklad:

URL parametre

Vstupnými dátami v API Flexi sú jednotlivé riadky rozúčtovania s účtovnými náležitosťami pre správne zaúčtovanie. Každý riadok má tieto parametre. Všetky parametre sú case-sensitive:

  • typUcOp - Predpis zaúčtovania (identifikátor záznamu z evidencie predpis-zauctovani)

  • sazbaDph - Sadzba DPH (identifikátor záznamu z evidencie sazba-dph)

  • sumZkl - čiastka Základ (desatinné číslo)

  • zklMdUcet - Má dať základu (identifikátor záznamu z evidencie ucet)

  • zklDalUcet - Dal základu (identifikátor záznamu z evidencie ucet)

  • sumDph - čiastka DPH (desatinné číslo)

  • dphMdUcet - Má dať DPH (identifikátor záznamu z evidencie ucet)

  • dphDalUcet - Dal DPH (identifikátor záznamu z evidencie ucet)

  • clenDph - Riadok DPH (identifikátor záznamu z evidencie cleneni-dph)

  • clenKonVykDph - Riadok kontrolného výkazu DPH (identifikátor záznamu z evidencie cleneni-kontrolni-hlaseni)

  • stredisko - Stredisko (identifikátor záznamu z evidencie stredisko)

  • cinnost - Činnosť (identifikátor záznamu z evidencie cinnost)

  • zakazka - Zákazka (identifikátor záznamu z evidencie zakazka)

Popis jednotlivých evidencií nájdete tu.

Príklady použitia

  1. rozúčtovanie prijatej faktúry na dva riadky

<winstrom version="1.0"> 
<faktura-prijata>
<rozuctujDoklad>
<radkyRozuctovani>
<radek>
<typUcOp>code:NÁKUP ZBOŽÍ A</typUcOp>
<sumZkl>75.0</sumZkl>
<sazbaDph>1</sazbaDph>
<zklMdUcet>code:131001</zklMdUcet>
<zklDalUcet>code:321001</zklDalUcet>
<clenDph>code:000P</clenDph>
</radek>
<radek>
<typUcOp>code:NÁKUP ZBOŽÍ B</typUcOp>
<sumZkl>25.0</sumZkl>
<sazbaDph>1</sazbaDph>
<zklMdUcet>code:131001</zklMdUcet>
<zklDalUcet>code:321001</zklDalUcet>
<clenDph>code:000P</clenDph>
</radek>
</radkyRozuctovani>
</rozuctujDoklad>
</faktura-prijata>
</winstrom>

2. rozúčtovanie záväzku na dva riadky v JSON:

{
"winstrom": {
"zavazek": {
"rozuctujDoklad": {
"radkyRozuctovani": [
{
"typUcOp": "code:CESTOVNÉ",
"sumZkl": "750.0",
"sazbaDph": "1",
"zklMdUcet": "code:512001",
"zklDalUcet": "code:314001",
"clenDph": "code:40-41"
},
{
"typUcOp": "code:CESTOVNÉ",
"sumZkl": "250.0",
"sazbaDph": "1",
"zklMdUcet": "code:512001",
"zklDalUcet": "code:314001",
"clenDph": "code:40-41"
}
]
}
}}}

Neúspešné requesty

  1. Čiastky riadkov v súčte nezodpovedajú celkovej čiastke dokladu, API Flexi informuje nasledovne:

    "message": "Suma položek nesouhlasí se sumou dokladu."

  2. Zadanie parametra, ktorého hodnota neexistuje v dátach

    "message": "Záznam pro parametr (zklMdUcet) nebyl v datovém zdroji nalezen: cz.winstrom.vo.ucto.Ucet#code:521002 [ZAV0005/2223]",

    "code": "NOT-FOUND(cz.winstrom.vo.ucto.Ucet)(code:521002)"

  3. Chyba v zápise, syntakticky nesprávny zápis napr.:

    "winstrom": {
    "zavazek": {
    "rozuctujDoklad": {
    "radkyRoyuctovani": [

    Výseldek Chyba 500: "message": "Interní chyba aplikace."

Potrebujete poradiť?

V prípade otázok k aplikácii nás kontaktujte na podporaflexi@abra.eu prípadne prostredníctvom okna chatu v pravom dolnom rohu.

Ste s tem dobili odgovor na svoje vprašanje?