Preskoči na glavno vsebino

Párovanie a vzájomná úhrada dokladov

Párovanie s úhradou, vzájomný zápočet a odpočet zálohy — v XML aj JSON

Avtor: Petr Pech

Úhradu dokladu je možné cez API zapísať tromi spôsobmi — spárovaním s bankovým alebo pokladničným dokladom, vzájomným zápočtom, alebo odpočtom zálohy. Tento článok ukazuje, ako na to, a odkazuje na podrobný popis každej z ciest.


Spárovanie s úhradou

Párovanie sa zapisuje ako súčasť uhrádzajúceho dokladu v elemente sparovani. Uhrádzaných faktúr môže byť viac, musia však byť rovnakého typu:

<winstrom version="1.0">
<banka>
<id>code:B+0017/2026</id>
<sparovani>
<uhrazovanaFak type="faktura-vydana" castka="1000">code:VF1-0167/2026</uhrazovanaFak>
<zbytek>ignorovat</zbytek>
</sparovani>
</banka>
</winstrom>

Ten istý zápis vo formáte JSON:

{
"winstrom": {
"@version": "1.0",
"banka": {
"id": "code:B+0017/2026",
"sparovani": {
"uhrazovanaFak": {
"@type": "faktura-vydana",
"@castka": "1000",
"id": "code:VF1-0167/2026"
},
"zbytek": "ignorovat"
}
}
}
}

Atribút castka je nepovinný a obmedzuje, koľko sa z faktúry uhradí. Element zbytek určuje, čo robiť s rozdielom medzi sumami — hodnoty sú ne, zauctovat, ignorovat, castecnaUhrada, castecnaUhradaNeboZauctovat a castecnaUhradaNeboIgnorovat; ich správanie rozoberá článok Párovanie platieb. Odpárovanie sa zapisuje rovnako, len v elemente odparovani.

⚠️ Doklad v tuzemskej mene nemožno uhradiť z účtu vedeného v cudzej mene — import skončí hláškou Úhrada dokladu v domácí měně úhradou v cizí měně není povolená. Skontrolujte preto menu bankového účtu, ktorý pri párovaní používate.


Vzájomný zápočet

Zápočet je vo Flexi fiktívny bankový výpis, ktorým sa proti sebe uhrádzajú pohľadávka a záväzok. Zakladá sa do evidencie vzajemny-zapocet a párovanie sa v ňom zapisuje úplne rovnako ako pri banke:

<winstrom version="1.0">
<vzajemny-zapocet>
<id>code:ZAP+0016/2026</id>
<typDokl>code:ZAPOCET</typDokl>
<typPohybuK>typPohybu.prijem</typPohybuK>
<bezPolozek>true</bezPolozek>
<sumOsv>100.0</sumOsv>
<sparovani>
<uhrazovanaFak type="faktura-vydana">code:FAV1</uhrazovanaFak>
<zbytek>castecnaUhrada</zbytek>
</sparovani>
<cisSouhrnne>ZAP-123</cisSouhrnne>
</vzajemny-zapocet>
</winstrom>

Zápočet sa skladá z dvoch dokladov — jeden s typPohybu.prijem pre vydanú faktúru a druhý s typPohybu.vydej pre prijatú; obe strany spája rovnaké číslo v cisSouhrnne. Zápočet je možné založiť a spárovať jedným požiadavkom.

ℹ️ Element zbytek má pri zápočte rovnaké hodnoty ako pri párovaní platieb. Voľba castecnaUhrada ale skončí chybou, ak je suma na uhrádzajúcom doklade väčšia ako na uhrádzanom — čiastočná úhrada potom nedáva zmysel.


Úhrada zálohou

Typický proces pri zálohovej platbe vyzerá takto:

  1. Z prijatej objednávky sa realizáciou vytvorí zálohová faktúra — pozri Realizácia objednávky cez API.

  2. Zálohová faktúra sa uhradí párovaním platby, ako je popísané vyššie.

  3. Z objednávky sa vystaví ostrá faktúra.

  4. Uhradená záloha sa na ostrej faktúre uplatní odpočtom — pozri Odpočet záloh a ZDD.

💡 Párovanie aj odpárovanie je idempotentné — opakované volanie tej istej požiadavky nič nepokazí. To sa dá využiť pri dávkovom spracovaní, kde nie je isté, či predchádzajúci beh doběhol.


Súvisiace

Ste s tem dobili odgovor na svoje vprašanje?