Nordlet vs Odoo pre vývojárov platforiem
Porovnanie pre vývojárov, ktorí sa rozhodujú medzi integrovaným účtovným API a open-source ERP súborom, na základe oficiálnej dokumentácie jednotlivých produktov.
Odoo a Nordlet sa v zoznamoch kandidátov pre platformové tímy často objavujú spolu, nejde však o rovnaký typ produktu. Odoo je široký balík podnikových aplikácií, ktorého súčasťou je aj účtovníctvo, pričom si ho môžete sami hostovať a upravovať. Nordlet je účtovný backend, ktorý nemá iné ambície ako účtovníctvo a je navrhnutý tak, aby ho bolo možné volať z produktu tretej strany.
Voľba sa zvyčajne zužuje na dve otázky: akú veľkú časť vášho podnikania chcete mať v jednom systéme a kto ho bude prevádzkovať. Všetky informácie o Odoo uvedené nižšie pochádzajú z oficiálnej dokumentácie a cenníkov Odoo a sú odkazované tam, kde je to relevantné.
Čo sú jednotlivé produkty zač
Odoo je open-source balík zahŕňajúci účtovníctvo, sklady, výrobu, predaj, CRM, ľudské zdroje, webové stránky a ďalšie funkcie, ktorý je k dispozícii ako Odoo Online, na Odoo.sh alebo na vlastnom hostingu. Jeho silnými stránkami sú šírka záberu, rozhrateľnosť a možnosť prevádzkovať ho vo vlastnej réžii. Účtovné špecifiká jednotlivých krajín zabezpečujú lokalizačné moduly a komunita okolo produktu je rozsiahla.
Nordlet je cloudové účtovné API. Poskytuje nemennú (immutable) účtovnú knihu podvojného účtovníctva, fakturáciu, evidenciu nákupov, bankové výpisy a párovanie platieb, sklady, dlhodobý majetok, mzdy, výkazníctvo a správu daní v EÚ prostredníctvom jedného rozhrania REST – v súčasnosti ide o viac ako 400 koncových bodov (endpoints) v 29 moduloch, ktoré sú generované z jedinej špecifikácie OpenAPI. Súčasťou je aj aplikačné rozhranie a beží na rovnakých koncových bodoch, aké získavajú externí volajúci.
Otázka API, ktorá rozhoduje o väčšine hodnotení
Tu sa cesty oboch produktov pre tvorcov platforiem rozchádzajú najvýraznejšie.
Externé API Odoo je na úrovni modelov. Overíte svoju totožnosť a následne voláte metódy ORM pre dátové modely, ako sú napríklad account.move pre denníkové zápisy a faktúry, res.partner pre kontakty a account.account pre účtovnú osnovu, a to cez XML-RPC alebo JSON-RPC. Je to silný nástroj: dosiahnete na čokoľvek, čo systém dokáže vymodelovať. Zároveň to znamená, že zodpovednosť za správne používanie modelov leží na vás a vaša integrácia je naviazaná na interný dátový model Odoo namiesto stabilného doménového kontraktu.
Výpočet menia dva faktory z oficiálnych materiálov Odoo:
- Dokumentácia Odoo uvádza, že prístup k externému API je k dispozícii v cenovej únii Custom a nie v plánoch One App Free alebo Standard. Prístup k API je teda cenovým rozhodnutím, nielen technickým. Aktuálne plány a ceny nájdete na stránke s cenami Odoo.
- Spoločnosť Odoo oznámila, že koncové body
/xmlrpc,/xmlrpc/2a/jsonrpcsú naplánované na vyradenie – vo verzii Odoo 22 a Odoo Online 21.1 –, pričom ako náhrada slúži novšie API JSON-2. Integrácia napísaná pre súčasné koncové body RPC bude v budúcnosti vyžadovať migráciu.
API systému Nordlet je na doménovej úrovni. Operácie majú podobu POST /v1/{module}/{resource}/{action} s telom vo formáte JSON, takže voláte napríklad sales/invoices/issue namiesto priamej manipulácie s modelom denníka a účtovné dôsledky sú v kompetencii samotného API. Kľúče nesú oprávnenia, ako napríklad sales:write. Opakované požiadavky sú chránené hlavičkou Idempotency-Key: rovnaký kľúč s rovnakým užitočným zaťažením (payload) vracia uloženú odpoveď a rovnaký kľúč so zmeneným zaťažením je odmietnutý s chybou idempotency_key_reuse namiesto tichého akceptovania. Udalosti webhookov sa zapisujú do transakčnej schránky na odoslanie (transactional outbox) v rámci tej istej databázovej transakcie ako zmena, takže zrušený dokument nikdy nevygeneruje udalosť a doručené správy sú podpísané podpisom HMAC, ktorý si môžete overiť.
Porovnanie funkcií
Políčka označené ako „neoverené verejne“ znamenajú, že sa nám nepodarilo overiť danú schopnosť na úrovni, akú by vývojár potreboval pred prijatím záväzku. Nie sú to tvrdenia, že funkcia neexistuje.
| Schopnosť | Nordlet | Odoo |
|---|---|---|
| Podoba produktu | Účtovné API, hosťované | Kompletný podnikový balík; hosťovaný alebo na vlastnom serveri |
| Primárne rozhranie | REST API so silne typovaným SDK pre TypeScript | Webová aplikácia; externé API na úrovni modelov |
| Protokol API | JSON nad HTTPS, štýl RPC POST pre každú akciu | XML-RPC a JSON-RPC, s náhradou v podobe API JSON-2 |
| Dostupnosť API | V každom pláne, všetky moduly | Vlastný plán (Custom) podľa dokumentácie Odoo |
| Kniha podvojného účtovníctva | Áno, zostatok je vynútený databázovým triggerom pri schválení | Áno, v rámci účtovného modulu |
| Uzávierka období | Áno; zaúčtovania s dátumom v uzatvorenom období sú odmietnuté s chybou 409 |
Dátumy uzávierky sú podporované v účtovnom module |
| Kľúče idempotencie | Áno, zdokumentovaná sémantika vrátane opakovania a kolízií | Nie je verejne potvrdené pre externé API |
| Webhooky | Áno, podpísané, opakovane odosielané z transakčného outboxu | Automatické akcie a webhooky existujú; garancie doručenia nie sú verejne potvrdené |
| Záznam auditu (audit trail) | Každá zmena s aktérom, akciou, entitou, diffom; možnost dotazovania | Chatovacia konzola (chatter) a poznámky v protokole; rozsah sa líši podľa modelu |
| DPH v EÚ | Sadzby pre jednotlivé krajiny EÚ-27, overenie VIES, výpočet OSS/IOSS s opravami | Lokalizačné moduly pre jednotlivé krajiny; hĺbka sa líši podľa krajiny |
| Elektronická fakturácia | EN 16931 UBL pre Peppol BIS 3.0; národné formáty pre IT, PL, RO | Lokalizačné moduly pokrývajú viaceré národné formáty |
| Sklady, výroba | FIFO zásoby, kusovníky (BOM), montáž a demontáž, technologické postupy, pracoviská, výrobné príkazy so záznamom na operáciu, kontroly kvality, údržba | Rozsiahle, ide o hlavnú silnú stránku |
| CRM, web, marketing | Len dopyty partnerov, skupiny a stavy; žiadny nástroj na tvorbu webov ani marketingové nástroje | Áno, hlavná silná stránka |
| Vlastný hosting (self-hosting) | Nie; podpora vlastného cloudu (BYOC) je uvedená v pláne Custom | Áno |
| Dostupnosť zdrojového kódu | Proprietárny | Open-source jadro s platenými edíciami |
| Viacero spoločností | Neobmedzený počet spoločností pod jedným účtom, prístup na základe rolí | Viacero spoločností je podporovaných |
Cenové modely
Nie sú porovnateľné položka po položke, pretože účtujú poplatky za odlišné veci.
Odoo účtuje poplatky za používateľa a mesiac, pričom bezplatný plán je obmedzený na jedinú aplikáciu a prístup k externému API je k dispozícii v pláne Custom. Pre platformu je nepríjemné, že „používatelia“ sú slabým ukazovateľom vyťaženia, keď účtovníctvo generuje váš softvér a nie vaši zamestnanci. Vlastný hosting odstraňuje poplatky za predplatné a pridáva náklady na infraštruktúru a údržbu.
Nordlet účtuje poplatky na základe počtu požiadaviek. Zverejnené plány sú 10 EUR mesačne za 3 000 požiadaviek, 50 EUR za 30 000 a 300 EUR za 200 000, pričom dodatočné požiadavky sa fakturujú za kus a vlastný plán (Custom) je k dispozícii na požiadanie. Každý plán zahŕňa všetky moduly a kompletné API; počet používateľov, spoločností a testovacích spoločností (sandbox) je neobmedzený. Požiadavka je akákoľvek akcia vykonaná prostredníctvom API alebo aplikácie.
Praktický dôsledok: trhové miesto (marketplace) so štyrmi zamestnancami a 50 000 mesačnými účtovnými úkonmi platí za 50 000 úkonov v modeli založenom na spotrebe a za štyroch používateľov v modeli na základe počtu používateľov – pričom hodnota pre používateľov sa nemení, keď sa objem zdvojnásobí, čo má svoje pre a proti. Vytvorte si model pre vlastné čísla.
Kde je Odoo lepšou voľbou
- Chcete mať účtovníctvo, sklady, výrobu, CRM a webovú stránku v jednom systéme s jednou databázou.
- Musíte prevádzkovať systém na vlastnom hostingu kvôli lokalizácii údajov, nákladom alebo podnikovým predpisom.
- Chcete upravovať zdrojový kód a máte interné kapacity na údržbu týchto úprav naprieč aktualizáciami.
- Vaše účtovníctvo slúži na internú administratívu podniku a nie ako funkcia produktu, ktorý predávate.
- Nachádzate sa v krajine, kde je lokalizačný modul Odoo prepracovaný a aktívne udržiavaný.
Šírka záberu Odoo je reálna a žiadne účtovné API ju nenahradí.
Kde sa uplatní Nordlet
- Účtovné udalosti vytvára váš softvér, nie vaši zamestnanci.
- Potrebujete viesť účtovníctvo pre mnoho spoločností pod jedným účtom bez nutnosti platiť predplatné za každú entitu.
- Vyžadujete vynútené invarianty, na ktoré sa vaša platforma môže spoľahnúť: vyrovnané zaúčtovania, číslovanie bez medzier, uzatvorené obdobia, nemenná história, idempotentné zápisy.
- Chcete sa integrovať so stabilným doménovým kontraktom namiesto interného dátového modelu.
- Vaše povinnosti týkajúce sa DPH v EÚ presahujú hranice viacerých krajín a túto logiku nechcete udržiavať sami.
Obmedzenia, povedané otvorene: Nordlet je v počiatočnej fáze prístupu (early access) a navrhuje riešenia pre prvých partnerov (design partners); je hosťovaný namiesto vlastného hostingu; partnerské záznamy obsahujú dopyty, skupiny a stavy namiesto obchodného lievika (sales pipeline) a neobsahuje nástroj na tvorbu webov ani marketingové funkcie; mzdy sú dostupné len pre Litvu; balíky domácich daňových priznaní sa v súčasnosti dodávajú pre tri krajiny – Litvu (FR0600), Nemecko (UStVA) a Poľsko (JPK_V7M) – pričom OSS a IOSS sa vypočítavajú, ale nepodávajú sa vo vašom mene.
Čo by sme si overili pred prijatím záväzku
- Overte si plán Odoo, ktorý reálne potrebujete. Ak prístup k externému API vyžaduje úroveň Custom, nacenistie tento plán pre váš počet používateľov, nie základný vstupný plán.
- Informujte sa o harmonograme migrácii RPC pre akúkoľvek integráciu Odoo, ktorú plánujete zachovať aj po oznámenom vyradení súčasných koncových bodov.
- Otestujte opakovanie požiadaviek na oboch systémoch. Pošlite tú istú požiadavku dvakrát a spočítajte výsledné záznamy.
- Otestujte uzávierku. Uzatvorte obdobie a potom sa pokúste doňho zaúčtovať doklad.
- Skontrolujte konkrétne krajiny. V prípade Odoo zistite, ktorý lokalizačný modul je k dispozícii a ako aktívne sa udržiava; v prípade Nordletu skontrolujte, aké výstupy DPH pre dané krajiny dnes existujú.
- Vytvorte si model celkových nákladov na tri roky, vrátane nákladov na hosting a úsilia spojeného s aktualizáciami pri vlastnom hostingu, prípadne rastu objemu požiadaviek pri modeloch so spotrebnou platbou.
FAQ
Je Odoo zadarmo?
Odoo zverejňuje bezplatný plán obmedzený na jedinú aplikáciu a komunitná edícia je open-source. V prípade integrácie platformy sú relevantnými nákladmi zvyčajne hosting, aktualizácie, údržba lokalizácie a platený plán potrebný na prístup k externému API, a nie samotná licencia.
Dá sa Odoo použiť ako integrovaný účtovný backend pre trhové miesto (marketplace)?
Dá sa s ním integrovať a niektoré tímy to presne takto robia. Úvahy by mali zahŕňať fakt, že externé API funguje na úrovni dátových modelov, prístup k API je viazaný na konkrétnu cenovú úroveň, súčasné koncové body RPC sú naplánované na výmenu a vy preberáte zodpovednosť za správne používanie účtovných modelov. Tieto body si overte voči vlastným požiadavkám, namiesto toho, aby ste spoliehali na predpoklady.
Dokáže Nordlet všetko, čo Odoo?
Nie. Nordlet je nástroj na účtovníctvo a súvisiace operácie – fakturáciu, účtovnú knihu, banku, sklady, majetok, výrobu, mzdy, výkazníctvo, dane v EÚ. Výroba pokrýva kusovníky, technologické postupy, pracoviská, výrobné príkazy so záznamom na operáciu, kontroly kvality a údržbu zariadení, avšak bez plánovania dopytu a kapacity, ktoré ponúka Odoo. Partnerské záznamy obsahujú dopyty, skupiny a stavy namiesto obchodného lievika a chýba nástroj na tvorbu webov či marketingové nástroje.
Ktoré riešenie je lepšie pre DPH v EÚ?
Závisí to od konkrétnej krajiny. Nordlet poskytuje sadzby DPH v EÚ pre jednotlivé krajiny, overovanie VIES, výpočet priznaní OSS a IOSS s opravami predchádzajúcich období, výkazy i.SAF a štandard EN 16931 UBL, pričom najprepracovanejší je litovský balík. Pokrytie v Odoo pochádza z lokalizačných modulov, ktorých hĺbka a údržba sa líšia podľa krajiny, takže čestnou odpoveďou pre akúkoľvek konkrétnu krajinu je preveriť stav modulu pre danú krajinu.
Môžem Nordlet hostovať vo vlastnej réžii?
Na štandardných plánoch nie. Úroveň Custom zahŕňa podporu pre vlastný cloud (bring-your-own-cloud), čo je predmetom diskusie, ak je vlastný hosting podmienkou.