ABRA Flexi může vyžadovat podpis faktury před vystavením příkazu k úhradě (viz nastavení). Podepsaný doklad je pak možné zadat do příkazu k úhradě, bez podepsání nikoliv.
REST API umožňuje podepsat fakturu pomocí akce sign-for-payment. Ke zrušení podpisu slouží akce unsign-for-payment. K provedení akce musíme znát konkrétní ID (kód) faktury, nebo je možné využít filtrace a podepsat tak více faktur.
Příklady použití
Request zasíláme metodou POST na URL https://demo.flexibee.eu/c/demo/faktura-prijata.xml (případně .json):
<winstrom version="1.0">
<faktura-prijata id="123" action="sign-for-payment"/>
</winstrom>
Případně zápis s identifikátorem v samostatném elementu:
<winstrom version="1.0">
<faktura-prijata action="sign-for-payment">
<id>123</id>
</faktura-prijata>
</winstrom>
Obdobně lze request zaslat ve formátu JSON a pomocí interního čísla dokladu. Přidání podpisu k úhradě:
{
"winstrom": {
"faktura-prijata": {
"id": "code:PF0015/2022",
"@action": "sign-for-payment"
}
}
}
Zrušení podpisu k úhradě:
{
"winstrom": {
"faktura-prijata": {
"id": "code:PF0015/2022",
"@action": "unsign-for-payment"
}
}
}
Odpověď ABRA Flexi je pak aktualizace vybraného záznamu:
{
"winstrom": {
"@version": "1.0",
"success": "true",
"stats": {
"created": "0",
"updated": "1",
"deleted": "0",
"skipped": "0",
"failed": "0"
},
"results": [
{
"id": "910",
"request-id": "code:PF0015/2022",
"ref": "/c/demo/faktura-prijata/910.json"
}
]
}
}
Filtrování faktur k podpisu
Akci lze vyvolat i dávkově nad skupinou dokladů pomocí filtru. Request opět zasíláme metodou POST na https://demo.flexibee.eu/c/demo/faktura-prijata.xml:
<winstrom version="1.0">
<faktura-prijata filter="datSplat gt now()"
action="sign-for-payment"/>
</winstrom>
Obdobně ve formátu JSON:
{
"winstrom": {
"faktura-prijata": {
"@filter": "sumCelkem lt 100",
"@action": "unsign-for-payment"
}
}
}
Neúspěšné requesty
Zadaný nebo filtrovaný objekt neexistuje
V případě, že se objekt nepodaří nalézt, je odpověď API:
"message": "Objekt bude teprve vytvořen, žádnou akci nelze provést."
Akce je špatně zapsána
V případě, že voláte špatnou akci (překlep či chyba v názvu):
<error>Atribut 'action' obsahuje špatnou hodnotu. Pro daný objekt smí obsahovat jen:
[delete, lock, lock-for-ucetni, storno, uhrad-zapoctem] [PF0013/2223]</error>
⚠️ Výčet akcí v této chybové zprávě není úplný — sign-for-payment a unsign-for-payment nad přijatou fakturou fungují, i když je zpráva nevypisuje. Neberte tedy seznam ve zprávě jako kompletní přehled dostupných akcí.
Špatně zapsaný filtr
Filtr neodpovídá definovaným pravidlům filtrace; odpovědí je přibližná pozice chyby ve filtru:
<error>Špatný formát WQL dotazu, problém na pozici 11 poblíž textu 'now()'
org.antlr.v4.runtime.misc.ParseCancellationException
org.antlr.v4.runtime.NoViableAltException</error>
Faktura je zamčená
V případě, že se snažíte podepsat doklad, který je zamčený, odpovědí je neúspěch. Doklad je nutné nejprve odemknout akcí action="unlock":
"message": "Záznam je zamčený. [PF0031/2021]"

