Rýchly štart
ABRA Flexi má REST API zabudované – nič neinštalujete. Každá evidencia (faktúry, adresár, cenník…) má vlastnú adresu a dáta vracia v JSON, XML, CSV či PDF. Na vyskúšanie stačí verejný demo server, ktorý nevyžaduje prihlásenie:
curl "https://demo.flexibee.eu/c/demo/adresar.json?limit=3&detail=custom:kod,nazev,ic"
Odpoveď má vždy obálku winstrom a v nej pole záznamov pomenované podľa evidencie:
{
"winstrom": {
"@version": "1.0",
"adresar": [
{ "id": "660", "kod": "ZAK-4567", "nazev": "Vzorová firma, s. r. o.", "ic": "12345678" },
{ "id": "661", "kod": "DODAVATEL-12", "nazev": "Tlačiareň, a. s.", "ic": "87654321" }
]
}
}
Na vlastnom serveri pridáte meno a heslo používateľa Flexi:
curl -u "api_uzivatel:heslo" \
"https://vasa-firma.flexibee.eu:5434/c/vasa_firma/faktura-vydana.json?limit=5"
Analytik: otvorte katalóg evidencií a vyhľadajte pole, ktoré potrebujete (napr. variabilný symbol → varSym). Programátor: v Swagger UI zvoľte modul, rozbaľte operáciu a kliknite na Try it out.
Adresa a štruktúra URL
https://{server}/c/{firma}/{evidencia}/{id alebo (filter)}.{formát}?{parametre}| Časť | Príklad | Význam |
|---|---|---|
| server | vasa-firma.flexibee.eu:5434 | Adresa servera Flexi vrátane portu (v cloude ABRA štandardne 5434). |
| firma | vasa_firma | Kód firmy (databázy). Vidíte ho v URL po prihlásení do Flexi a vráti ho aj GET /c.json. |
| evidencia | faktura-vydana | Názov evidencie v URL – zoznam všetkých evidencií. |
| id / filter | 123, code:FV-001, (datVyst >= '2026-01-01') | Konkrétny záznam alebo podmienka. Bez nich dostanete zoznam. |
| formát | .json | json, xml, csv, xlsx, pdf, isdoc… |
| parametre | ?limit=50&detail=full | Rozsah polí, stránkovanie, zoradenie, vnorené dáta – pozri nižšie. |
API je pod cestou /c/. Novšie verzie Flexi majú webové rozhranie pod /flexi/ – na integrácie však používajte /c/. Za cestu ktorejkoľvek evidencie môžete pridať /properties.json a Flexi vráti popis všetkých jej polí. Z tohto zdroja je vygenerovaná aj táto dokumentácia.
Prihlásenie
HTTP Basic – meno a heslo v každej požiadavke. Najjednoduchšie a pre integrácie úplne postačujúce:
curl -u "api_uzivatel:heslo" "https://{server}/c/{firma}/adresar.json"
Session – pri veľkom počte požiadaviek sa môžete prihlásiť raz a posielať session ID:
https://{server}/login-logout/login.jsonParametre username a password pošlite ako formulár. Z odpovede si uložte authSessionId a posielajte ho v hlavičke X-authSessionId.
Pre integráciu založte samostatného používateľa s povoleným prístupom cez REST API a len s právami, ktoré naozaj potrebuje (napr. pre reporting iba čítanie). Heslo nikdy nedávajte do kódu v prehliadači alebo do verejného repozitára.
Formáty a hodnoty
Formát určuje prípona v URL: .json a .xml pre integrácie, .csv a .xlsx pre exporty, .pdf pre tlačové zostavy a .isdoc pre elektronické faktúry. V JSON platí niekoľko pravidiel, ktoré prekvapia každého, kto s Flexi začína:
- Všetky hodnoty sú reťazce – aj čísla a logické hodnoty:
"sumCelkem": "121.0","storno": "false". Pri zápise Flexi prijme aj JSON čísla atrue/false. - Dátumy obsahujú časové pásmo:
"datVyst": "2026-09-30+02:00". Pri zápise stačí"2026-09-30". - Väzby sa vracajú ako identifikátor a dve pomocné polia – odkaz a čitateľný popis:
"firma": "code:ZAK-4567", "firma@ref": "/c/vasa_firma/adresar/660.json", "firma@showAs": "ZAK-4567: Vzorová firma, s. r. o." - Výbery z číselníka majú kľúč a popis:
"stavUhrK": "stavUhr.uhrazeno"+"stavUhrK@showAs": "Uhrazeno". Vo filtroch aj pri zápise používajte kľúč. - Názvy polí a hodnoty sú české (
nazev,mesto,datSplat) – presne tak, ako ich definuje ABRA. Katalóg ich ku každému poľu vysvetľuje.
Identifikátory záznamov
Záznam nemusíte identifikovať len interným číslom. Flexi rozumie viacerým identifikátorom – v URL aj v tele požiadavky:
| Zápis | Význam | Kedy použiť |
|---|---|---|
123 | Interné ID vo Flexi | Keď ho máte z predchádzajúcej odpovede. |
code:ZAK-4567 | Kód záznamu (pole kod) | Číselníky, adresár, cenník, typy dokladov – kódy poznajú aj používatelia. |
ext:ESHOP:4567 | Externé ID z vášho systému | Integrácie. Opakovaný zápis s rovnakým ext: záznam aktualizuje namiesto vytvorenia duplicity. |
ean:, plu: | EAN alebo PLU položky cenníka | Párovanie produktov s e-shopom či pokladňou. |
in:, vatid: | IČO alebo IČ DPH firmy | Vyhľadanie odberateľa či dodávateľa podľa identifikačných údajov. |
iban: | Číslo bankového účtu | Bankové účty. |
Pri čítaní cez code: alebo ext: Flexi vráti presmerovanie (301) na adresu s interným ID – HTTP klient musí presmerovania nasledovať (v curl prepínač -L). Záznam môže mať pri zápise aj viac identifikátorov naraz: "id": ["ext:ESHOP:4567", "code:ZAK-4567"].
Čítanie a stránkovanie
| Parameter | Príklad | Čo robí |
|---|---|---|
detail | summary, full, id, custom:kod,nazev,firma(ic) | Ktoré polia sa vrátia. Predvolený je summary. custom vráti presne vymenované polia – najrýchlejšie a najprehľadnejšie. |
limit | 100, 0 | Počet záznamov. Predvolene len 20! 0 = všetky. |
start | 100 | Posun pri stránkovaní. |
order | datVyst@D, nazev@A | Zoradenie vzostupne (@A) alebo zostupne (@D). |
add-row-count | true | Pridá @rowCount – celkový počet záznamov bez ohľadu na limit. |
relations | polozkyFaktury,prilohy | Pribalí vnorené kolekcie – pozri nižšie. |
includes | /faktura-vydana/firma | Namiesto odkazu vloží celý odkazovaný záznam. |
no-ext-ids | true | Nevráti externé identifikátory – menšia odpoveď. |
Stránkovanie veľkej evidencie – sťahujte po dávkach, kým nedostanete menej záznamov, než je limit:
GET /c/{firma}/faktura-vydana.json?detail=custom:id,kod,sumCelkem&order=id@A&limit=500&start=0
GET /c/{firma}/faktura-vydana.json?detail=custom:id,kod,sumCelkem&order=id@A&limit=500&start=500
…
Pri stránkovaní vždy zoraďte podľa stabilného poľa (napr. id), inak sa môžu záznamy medzi stránkami posunúť.
Filtre
Filter sa zapisuje do URL za evidenciu v okrúhlych zátvorkách. Textové a dátumové hodnoty dávajte do apostrofov:
GET /c/{firma}/faktura-vydana/(datSplat < now() and zbyvaUhradit > 0).json
| Operátor | Príklad |
|---|---|
= != < <= > >= | datVyst >= '2026-01-01', stavUhrK != 'stavUhr.uhrazeno' |
like (obsahuje, bez ohľadu na veľkosť písmen) | nazev like 'servis' |
begins, ends | kod begins 'FV', kod ends 'SERVIS' |
in (…) | kod in ('A1', 'B2'), id in (660, 661) |
between | datVyst between '2026-01-01' '2026-01-31' |
is null, is not null, is empty, is not empty | ic is not empty |
and, or, not (…) | typDokl = 'code:FAKTURA' and not (stavUhrK = 'stavUhr.uhrazeno') |
| logická hodnota | storno = false |
| väzba podľa kódu | firma = 'code:ZAK-4567' |
| pole odkazovaného záznamu | typDokl.typDoklK = 'typDokladu.dobropis' |
| štítok | stitky = 'code:VIP' |
| dátum a čas | lastUpdate > '2026-09-01T00:00:00', datSplat < now() |
V URL treba medzery a špeciálne znaky zakódovať (%20 namiesto medzery, %3E namiesto >) – väčšina HTTP knižníc to urobí sama. Dlhý filter, napríklad kod in (…) so stovkami hodnôt, pošlite radšej v tele požiadavky:
/c/{firma}/adresar/query.json{
"winstrom": {
"@version": "1.0",
"filter": "lastUpdate >= '2026-09-01T00:00:00' and ic is not empty",
"detail": "custom:kod,nazev,ic,email",
"order": "nazev@A",
"limit": 1000,
"no-ext-ids": true
}
}
Neplatný filter vráti HTTP 400 s vysvetlením, napr. wqlVlastnostNespravnyFormat, keď dátum nie je v tvare 'RRRR-MM-DD'. Typ každého poľa nájdete v katalógu.
Vnorené dáta a väzby
Faktúra bez položiek či objednávka bez zákazníka je pre integráciu málo. Súvisiace dáta dostanete tromi spôsobmi:
1. Vnorená kolekcia (relations) – položky dokladu priamo v odpovedi:
GET /c/{firma}/faktura-vydana/(datVyst >= '2026-09-01').json
?detail=custom:kod,datVyst,sumCelkem,polozkyFaktury(nazev,mnozMj,cenaMj)
&relations=polozkyFaktury
2. Vložený odkazovaný záznam (includes) – napr. IČO odberateľa priamo vo faktúre:
GET /c/{firma}/faktura-vydana/123.json
?detail=custom:kod,firma(nazev,ic,dic)
&includes=/faktura-vydana/firma
3. Samostatná adresa väzby – napr. prílohy alebo úhrady (väzobné doklady) faktúry:
GET /c/{firma}/faktura-vydana/123/prilohy.json
GET /c/{firma}/faktura-vydana/123/vazebni-doklady.json
Zoznam väzieb a vnorených kolekcií každej evidencie je v katalógu a vo Swagger UI pri operácii „Súvisiace záznamy“.
Zápis: vytvorenie a úprava
Zápis je „import“: pošlete záznamy v obálke winstrom na adresu evidencie. Flexi sám rozhodne, či záznam vytvorí, alebo aktualizuje – podľa identifikátora v poli id.
/c/{firma}/faktura-vydana.json{
"winstrom": {
"@version": "1.0",
"faktura-vydana": [
{
"id": "ext:ESHOP:FV-2026-001234",
"typDokl": "code:FAKTURA",
"firma": "code:ZAK-4567",
"datVyst": "2026-09-30",
"datSplat": "2026-10-14",
"varSym": "2026001234",
"mena": "code:EUR",
"formaUhradyCis": "code:PREVOD",
"stitky": "ESHOP",
"polozkyFaktury": [
{ "typPolozkyK": "typPolozky.katalog", "cenik": "code:9788000000000",
"mnozMj": "2", "cenaMj": "12.90",
"typCenyDphK": "typCeny.sDph", "typSzbDphK": "typSzbDph.dphSniz" },
{ "typPolozkyK": "typPolozky.obecny", "nazev": "Doprava – kuriér",
"mnozMj": "1", "cenaMj": "3.90",
"typCenyDphK": "typCeny.sDph", "typSzbDphK": "typSzbDph.dphZakl" }
]
}
]
}
}
- Väzby (
typDokl,firma,mena,cenik…) zadávate identifikátorom – najčastejšiecode:. Kódy typov dokladov, foriem úhrady či skladov sú v každej firme iné; zistíte ich napr. cezGET /typ-faktury-vydane.json. - Čo nepošlete, to Flexi doplní z typu dokladu a nastavení – číslo dokladu z dokladovej rady, splatnosť, účtovanie, adresu odberateľa z adresára.
- V jednej požiadavke môže byť viac záznamov aj viac evidencií. Flexi ich spracuje v poradí, takže objednávka sa môže odkazovať na zákazníka, ktorého zakladáte o riadok vyššie (príklad).
- Úpravu urobíte rovnakým volaním s identifikátorom existujúceho záznamu – stačí poslať len menené polia. Prípadne
PUT /{evidencia}/{id}.json. - Štítky (
stitky) oddeľujte čiarkou. Musia vo Flexi existovať, inak zápis skončí chybou.
Správanie pri existujúcom a novom zázname riadia atribúty @update a @create s hodnotami ok, ignore a fail. Napríklad "@update": "ignore" založí firmu, len ak ešte neexistuje – existujúcu preskočí.
Parameter ?dry-run=true požiadavku spracuje so všetkými kontrolami a vráti výsledok vrátane dopočítaných súm, ale nič neuloží. Ideálne na ladenie integrácie. Všetkých 18 príkladov v tejto dokumentácii je overených práve takto.
Položky dokladov a vnorené kolekcie
Položky sa nezapisujú samostatne, ale vnorene v doklade. Názov kolekcie závisí od evidencie:
| Evidencia | Kolekcia položiek |
|---|---|
| faktúry vydané a prijaté, predajky, pohľadávky, záväzky | polozkyFaktury |
| objednávky, ponuky, dopyty (prijaté aj vydané) | polozkyObchDokladu |
| banka, pokladňa, interné doklady, vzájomné zápočty | polozkyIntDokladu |
| skladové pohyby | skladovePolozky |
| príkazy na úhradu a inkaso | polozky |
| zmluvy | polozkySmlouvy |
| adresár | kontakty |
| cenník | dodavatele, odberatele, sady-a-komplety, poplatky… |
Faktúry, objednávky, bankové, pokladničné a skladové doklady prijímajú aj univerzálny názov polozkyDokladu. Typ položky určuje typPolozkyK: typPolozky.katalog (z cenníka – vyplňte cenik), typPolozky.obecny (voľný text s cenou), typPolozky.ucetni a typPolozky.text. Cena je s DPH alebo bez podľa typCenyDphK, sadzbu určuje typSzbDphK.
Pri úprave dokladu sa odoslané položky pridajú k existujúcim. Ak chcete položky nahradiť, pridajte "polozkyFaktury@removeAll": true. Jednu položku zmažete jej ID a akciou: {"id": "85930", "@action": "delete"}.
Akcie, storno a mazanie
Akcie sa spúšťajú pri zápise atribútom @action. Najčastejšia je storno dokladu – doklad zostane v evidencii, ale prestane sa počítať:
{ "winstrom": { "@version": "1.0",
"faktura-vydana": [ { "id": "ext:ESHOP:FV-2026-001234", "@action": "storno" } ] } }
Ďalšie akcie závisia od evidencie – napr. pri faktúrach sign-for-payment (podpísať na úhradu), uhrad-zapoctem alebo odeslani-mailem. Zoznam je pri každej evidencii v katalógu. Dobropis prepojíte s pôvodnou faktúrou vnoreným objektom "vytvor-vazbu-dobropis": {"dobropisovanyDokl": "code:FV-2026-001234"}.
Mazanie cez DELETE /{evidencia}/{id}.json (alebo "@action": "delete") je nevratné a nepodarí sa, ak sa na záznam odkazujú iné záznamy. Účtovné doklady preto radšej stornujte. Bankové pohyby s neuhradenými dokladmi spárujete automaticky volaním POST /banka/automaticke-parovani.json.
Odpovede a chyby
Každý zápis vráti štatistiku a výsledok pre každý záznam:
{
"winstrom": {
"@version": "1.0",
"success": "true",
"stats": { "created": "1", "updated": "0", "deleted": "0", "skipped": "0", "failed": "0" },
"results": [
{ "id": "40125", "request-id": "ext:ESHOP:FV-2026-001234",
"ref": "/c/vasa_firma/faktura-vydana/40125.json" }
]
}
}
Pri chybe je success "false", HTTP kód 400 a pri zázname pole errors:
{ "message": "Zadaný text 'code:NEEXISTUJE' musí identifikovat objekt …",
"for": "typDokl", "value": "code:NEEXISTUJE",
"code": "PROP", "messageCode": "notObjectIdentifier" }
Na spracovanie v programe používajte messageCode – text chyby je v češtine a môže sa meniť. Najčastejšie chyby:
| messageCode | Príčina | Opakovať? |
|---|---|---|
notObjectIdentifier | Odkaz na neexistujúci záznam (typ dokladu, firma, položka cenníka…) | Nie – najprv založte číselník alebo opravte kód. |
importXmlNeexistujeStitek | Štítok neexistuje | Nie |
dokladNeniUnikatniKod | Číslo dokladu už existuje | Nie |
NelzeVlozitDoZamcenehoObdobi, importXmlJeZamceno | Uzamknuté obdobie alebo doklad | Nie |
polSkladNaSkladeNeniDostatekZbozi | Nedostatok tovaru na sklade | Až po naskladnení |
importXmlCreateNeniPovolen | Záznam neexistuje a @create je fail | Nie |
daoNejdeSmazatOdkaz | Mazanie záznamu, na ktorý sa niečo odkazuje | Nie |
wqlVlastnostNespravnyFormat | Hodnota vo filtri nezodpovedá typu poľa | Nie |
| výpadok spojenia, HTTP 5xx, chyba databázy | Dočasný problém servera | Áno – s odstupom |
HTTP kódy: 200/201 úspech, 400 chybná požiadavka alebo zápis, 401 neplatné prihlásenie, 402 chýbajúca licencia modulu, 403 chýbajúce oprávnenie, 404 neexistujúci záznam či adresa.
Synchronizácia zmien a webhooky
Na pravidelné sťahovanie zmien máte dve možnosti. Jednoduchšia je filter na čas poslednej zmeny:
GET /c/{firma}/faktura-vydana/(lastUpdate >= '2026-09-30T08:00:00').json?detail=custom:id,kod,stavUhrK
Spoľahlivejšie je changes API, ktoré zachytí aj zmazané záznamy. Administrátor ho raz zapne (PUT /changes/enable.json) a potom si stačí pamätať poslednú verziu:
GET /c/{firma}/changes.json?start=967025&limit=1000
{ "winstrom": { "@globalVersion": "967030", "next": "967031",
"changes": [ { "@evidence": "faktura-vydana", "@operation": "update",
"@in-version": "967026", "id": "40125",
"external-ids": ["ext:ESHOP:FV-2026-001234"] } ] } }
Hodnotu next pošlite pri ďalšom volaní ako start. Ak nechcete Flexi pravidelne kontrolovať, zaregistrujte webhook (PUT /hooks.json?url=…&format=JSON) – Flexi bude zmeny posielať na vašu adresu sám.
PDF, prílohy a súčty
- PDF dokladu:
GET /faktura-vydana/123.pdf?report-name=…&report-lang=sk. PDF nájdete aj podľa čísla:/faktura-vydana/(kod = 'FV-2026-001234').pdf. Zoznam tlačových zostáv vráti/faktura-vydana/reports.json. - Prílohy: zoznam cez
/faktura-prijata/123/prilohy.json, obsah súboru cez/priloha/{id}/content. Nahrávanie:PUT /zavazek/123/prilohy/new/zmluva.pdfso súborom v tele a hlavičkouContent-Type. - Súčty:
GET /faktura-vydana/(datVyst >= '2026-01-01')/$sum.jsonvráti súčty (celkom, uhradené, zostáva) za vyfiltrované doklady. - Exporty: rovnaké URL s príponou
.xlsxalebo.csvvráti tabuľku – napr. na rýchly export pre účtovníčku.
Príklady z praxe: e-shop a ABRA Flexi
Nasledujúce scenáre pochádzajú z reálnej integrácie e-shopu a interného informačného systému s ABRA Flexi. Kompletné telá požiadaviek nájdete vo Swagger UI pri operácii Vytvoriť alebo aktualizovať záznamy (rozbaľovací zoznam Examples).
| Scenár | Volanie |
|---|---|
| Nová objednávka z e-shopu vrátane založenia zákazníka, rezervácia tovaru | POST objednavka-prijata + adresar v jednej obálke |
| Riadenie expedície štítkami (napr. EXPEDOVAŤ), sledovanie zmien každých 5 minút | zápis stitky, čítanie s filtrom lastUpdate >= … |
| Faktúra po expedícii s položkami z cenníka | POST faktura-vydana s ext: ID |
| Stiahnutie PDF faktúry pre zákazníka | GET faktura-vydana/(kod = '…').pdf?report-lang=sk |
| Kontrola úhrad – ktoré faktúry sú zaplatené a kedy | filter stavUhrK in ('stavUhr.uhrazeno', 'stavUhr.uhrazenoRucne') + relations=vazebni-doklady |
| Dobropis k vrátenému tovaru a príjemka vratky na sklad | POST faktura-vydana (dobropis), POST skladovy-pohyb |
| Synchronizácia produktov a ich rozmerov z interného systému | POST cenik + atribut |
| Stav zásob a minimálne množstvá pre sklad | GET skladova-karta, POST skladova-karta (minMJ) |
| Prijaté faktúry na schválenie vrátane PDF príloh | GET faktura-prijata s prilohy(content,…), schválenie štítkom |
| Honoráre a mzdové záväzky rozúčtované na zákazky, s PDF zmluvou | POST zavazek + PUT …/prilohy/new/… |
| Import bankových výpisov a párovanie platieb | POST bankovni-ucet/{id}/nacteni-vypisu.json, POST banka/automaticke-parovani.json |
Z prevádzky takejto integrácie sa osvedčilo:
- Fronta s opakovaním. Požiadavky na zápis ukladajte do fronty a pri dočasnej chybe ich zopakujte (napr. najviac 5-krát). Trvalé chyby (tabuľka vyššie) neopakujte, ale nahláste.
- Denný limit volaní na strane integrácie chráni Flexi pred zahltením pri chybe v kóde.
- Log požiadaviek a odpovedí – pri reklamácii „faktúra sa neprepísala“ je to jediný spôsob, ako rýchlo nájsť príčinu.
- Externé ID všade, kde záznam vzniká vo vašom systéme. Odpadne hľadanie interného ID pred každou úpravou.
Tipy a časté chyby
- Dostávam len 20 záznamov. Predvolený
limitje 20 – nastavte vlastný alebo stránkujte. - Odpoveď je pomalá. Použite
detail=custom:…len s poliami, ktoré potrebujete, ano-ext-ids=true. - Čísla neviem sčítať. Hodnoty sú reťazce – pred výpočtom ich prekonvertujte.
- Požiadavka s
code:vracia 301. Zapnite v HTTP klientovi nasledovanie presmerovaní. - Pri úprave sa zdvojili položky. Chýba
polozkyFaktury@removeAll. - Dátumy sú posunuté o deň. Pri prevode na UTC nezabudnite na časové pásmo
+02:00/+01:00. - Testujte na kópii firmy alebo s
dry-run=true– nie na ostrých dátach.
OpenAPI na stiahnutie
Špecifikácia OpenAPI 3.0.3 (JSON). Kompletný súbor naimportujete do Postmanu (Import → File), Insomnie alebo ho použijete v generátore klientov (openapi-generator, NSwag…). Hodnoty sú v špecifikácii zámerne typu string – tak ich Flexi skutočne vracia; pôvodný typ poľa je v rozšírení x-flexi-type.
Po moduloch (menšie súbory, rovnaké ako vo Swagger UI):
- Základ a služby 52 kB
- Adresár a CRM 267 kB
- Cenník a produkty 354 kB
- Sklad 257 kB
- Predaj 511 kB
- Nákup 379 kB
- Banka, pokladňa a platby 418 kB
- Pohľadávky, záväzky, interné doklady 377 kB
- Účtovníctvo a DPH 391 kB
- Majetok a leasing 157 kB
- Prehľady a výkazy 329 kB
- Číselníky, prílohy a systém 405 kB
O dokumentácii
Toto je neoficiálna dokumentácia, ktorú pripravila spoločnosť NextVision Analytics. Štruktúra evidencií, polí, väzieb, akcií a tlačových zostáv je vygenerovaná priamo z metadát ABRA Flexi 2026.5.5 (verejný demo server, 30. 9. 2026). Príklady zápisu vychádzajú z reálnych integrácií a sú overené na demo serveri. Ako dokumentácia vznikla, popisujeme v článku na blogu.
Vaša firma môže mať iné nastavenia, typy dokladov a používateľské polia – aktuálny popis vašich evidencií vráti vždy /{evidencia}/properties.json na vašom serveri. Oficiálnu dokumentáciu nájdete na flexibee.eu/api/dokumentace. ABRA Flexi je produkt spoločnosti ABRA Software a. s.
Napájate systém na ABRA Flexi?
Pomôžeme vám s analýzou aj realizáciou: prepojenie e-shopu a skladu, automatický import dokladov, synchronizácia cenníka, reporting v Power BI. Integrácie s ABRA Flexi robíme v praxi a vieme, kde sú úskalia.
Prvá konzultácia je zdarma.
Napíšte nám Kontaktný formulár