- Introduced EkaerConsignment model for direction-agnostic mapping (inbound/outbound), centralizing normalization and aggregation. - Refactored IShippingToEkaerMapper and service interfaces to use new model and expose obligation evaluation. - Added EkaerReportability logic for robust, threshold-based reporting obligation checks with error handling. - Updated UI and SignalR to support detailed creation results and user feedback for skipped entries. - Enhanced tests and documentation to cover new mapping, evaluation, and legal context. - Minor config/protocol adjustments for improved reliability. |
||
|---|---|---|
| .. | ||
| EKAER_INTERFACE.md | ||
| EKAER_OPERATIONS.md | ||
| EKAER_TRADECARD.md | ||
| EKAER_VALIDATION.md | ||
| README.md | ||
| common.xsd | ||
| eKAERManagementService_2.2.pdf | ||
| ekaermanagement.xsd | ||
README.md
Nav/docs — NAV referencia-anyagok és kivonatok
A NAV adatszolgáltatás (jelenleg EKÁER) hivatalos forrásai + LLM-barát kivonatok. A kivonatok célja: ne kelljen a 2.2 MB-os PDF-et olvasni a gyakori feladatokhoz (token-takarékos, kereshető, a docs-discovery skill megtalálja).
Hiteles források
| Fájl | Mit ad |
|---|---|
eKAERManagementService_2.2.pdf |
A hivatalos EKÁER 2.2 interfész-leírás (NAV). Ütközésnél ez + az XSD a mérvadó. |
ekaermanagement.xsd |
A management-séma — a generált modellek (Nav/Ekaer/Models/) forrása. XSD-validációhoz is ez. |
common.xsd |
Közös EKÁER-séma: BasicHeaderType, UserHeaderType, BaseResultType, és a teljes ReasonCodeType (~150 hibakód). |
Kivonatok (kezdd ezekkel)
| Fájl | Téma | Mikor |
|---|---|---|
EKAER_INTERFACE.md |
Transport, endpoint, auth-algoritmus (teszt-vektorral), üzenet-váz | A kommunikáció bekötésekor (megvan a kódban) |
EKAER_TRADECARD.md |
A payload: tradeType, fejrész, címadat, vehicle, deliveryPlan, tétel, tradeReason | A Shipping → TradeCard mapping (3. réteg) írásakor |
EKAER_OPERATIONS.md |
Műveletek (create/modify/delete/finalize/correction) + státusz-életciklus | A bejelentés-folyamat implementálásakor |
EKAER_VALIDATION.md |
Validációs szabályok (tradeType-függő) + hibakód-kategóriák | Hibakezelés / mező-kötelezőség eldöntésekor |
Olvasási sorrend új belépőnek: EKAER_INTERFACE → EKAER_TRADECARD → EKAER_OPERATIONS → EKAER_VALIDATION.
Jogszabályi alap, kötelezettség, hozzáférés (kontextus, 2026-06)
A fenti PDF/XSD a HOGYAN (a 2.2 interfész — a tradeCard beküldése). Néhány általános dolog, ami tisztázódott (a forrásból ellenőrizve):
Jogszabály (a MIKOR kötelező): a hatályos rendelet a 13/2020. (XII. 23.) PM rendelet (https://net.jogtar.hu). A leképezést/kötelezettséget érintő elvek:
- az EKÁER-egység = egy feladó → egy címzett, egy gépjárművel; § 12: EGY EKÁER-szám több fel-/kirakodási címet és több terméktételt is fedhet — nem szállítólevelenként kell darabolni;
- a bejelentés-kötelezettség küszöbe erre a relációra AGGREGÁLT (egy fuvarozás keretében ugyanazon feladótól ugyanazon címzett részére ugyanazon gépjárművel — § 4 i);
- a NAV mindkét irányban büntet: az aluljelentés ÉS a túljelentés is bírság — a kötelezettség-döntésnek pontosnak kell lennie.
A konkrét küszöb-kategóriák/értékek a jogszabálytól és a beállítástól függően változnak, és a fogyasztó (pl. FruitBank) dönti el a kötelezettséget — itt szándékosan nincs érték bedrótozva. A fogyasztó-oldali kapu + a dátumozott küszöb-referencia: a FruitBank plugin
docs/EKAER/.
Hozzáférés (kié a user + signingKey): az ADÓZÓé (a bejelentő cégé), nem a fejlesztőé — az adózó Ügyfélkapun, elsődleges felhasználóként állítja be a kulcsot, a szoftver az ő credentialját használja (INavCredentials). Részletek + a 2024–25-ös „NAV M2M" alternatíva: EKAER_INTERFACE.md → Hozzáférés.
A réteg-kód
A base réteg (interfészek, auth, send-flow) doksija: ../README.md.
Az EKÁER-kód a Nav/Ekaer/-ben:
- generált modellek:
Nav/Ekaer/Models/(+EkaerNavAdapters.cs— azINav*interfészek a generált típusokon) EkaerManageService/EkaerQueryService— NAV HTTP (manage / query)EkaerTradeCardValidator— aEKAER_VALIDATION.mdszabályainak ellenőrzése (séma + üzleti), hibalistávalEkaerSubmitService/EkaerSubmitResult— beküldés-orchestráció (validate → send)
Ez mind általános NAV/EKÁER réteg. A FruitBank-specifikus leképezés (Shipping → tradeCard) NEM itt van, hanem a fogyasztó oldalon: FruitBank.Common/Services/Ekaer/ (mapper) + FruitBank.Common.Server/Services/Ekaer/ (fogyasztó).