Jogszabályi háttér

Az Áfa tv. (2007. évi CXXVII. törvény) előírásai alapján elektronikus számlának minősül minden olyan számla, amelyet elektronikus formában bocsátottak ki és fogadtak be. Így az elektronikus számla megjelenésének számos formája lehet. A magyarországi gyakorlatban leginkább elterjedt megoldás – melyet az Áfa tv. is nevesít – a minősített elektronikus aláírással ellátott számla (PKI technológia) valamint az EDI elektronikus adatként létrehozott és továbbított számla.

Ugyanakkor az Áfa tv. felsorolása nem taxatív, megfelelőek azoktól eltérő, az eredet hitelességét és az adattartalom sértetlenségét biztosító megoldások is. Így például az, ami a digitális archiválás szabályairól szóló 1/2018. (VI. 29.) ITM rendelet 7. §-ában szerepel. E megoldás alkalmazásának feltétele, hogy a számlakibocsátó adóalany az online számlaadat-szolgáltatása során a NAV Online Számla rendszerbe továbbítsa az elektronikus számla hash kódját. Ebben az esetben az adatszolgáltatást és az elektronikus számla dokumentumot (például PDF állományt) azonos időpontban szükséges létrehozni, és a számlaadat-szolgáltatásban a PDF állomány hash kódja szerepeltetendő. Fontos követelmény, hogy az adatszolgáltatás a NAV által befogadott (feldolgozott) legyen, valamint, hogy az elektronikus számla dokumentum és a hash kód együttes megőrzése valósuljon meg. Ha a NAV által befogadott (feldolgozott) online számlaadat-szolgáltatásban megfelelő hash kód szerepelt, akkor ezt a megoldást (mint archiválást) a számlakibocsátó és a számlabefogadó is alkalmazhatja.

Lássuk részletesebben, hogy a fentiek mit is jelentenek a gyakorlatban.

Mi is az hash kód?

A hash (kiejtése: hes) kód nem más, mint egy betűkből és számokból álló karaktersorozat, mint pl. az alábbi:

ddee70613e3c90c6d966352b17bbdff8a977931f146872516a28e4cff1a8b0d4ae8fb602d6db4b6ae844183183f36f720e1e62d37210942a421281313935a247

Hash kód képzése során egy kriptográfiai algoritmus segítségével valamilyen beviteli adatból visszafejthetetlen kimeneti adatot állítunk elő. Beviteli (vagy forrás) adat bármi lehet (egy szöveg vagy PDF fájl például), a kimeneti adat pedig maga a hash kód.

Hash kód generálás

A hash kód a forrás (jelen esetben PDF fájl) alapján teljesen egyedi, akár egy ujjlenyomat, így a hash kód egyértelműen azonosítja magát azt a forrást, amiből képezték.

Ez a hash kód akárhányszor és bármilyen számítógépen előállítható (képezhető), és ugyanazon fájlból mindig ugyanazt a hash kódot fogjuk eredményül kapni! Bármit is változtatunk meg a PDF fájl tartalmán (akár csak egy vesszőt), akkor már teljesen más lesz a belőle képezhető hash, ezzel biztosítható a tartalom sérthetetlensége.

Azonban ennek a hash kódnak van két további fontos tulajdonsága, ami elektronikus dokumentumok hitelesítése során kap jelentőséget:

Hogy lesz ebből az egészből e-számla…?

Az elektronikus számlák döntő többsége már ma is valamilyen PDF fájl, ennek a PDF-nek az eredetét és sérthetetlenségét kell biztosítani az elektronikus számlakiállítás és megőrzés során. Ez utóbbi két elvárást lehet a hash kóddal és a NAV Online Számla feladással együtt megvalósítani, az alábbi folyamat szerint:

Hiteles e-számla

A számla kiállításakor az eladói oldalon létrejön egy PDF fájl (ami az emberi szem számára értelmezhető formában tartalmazza a számla adatokat), és ebből a PDF-ből kerül leképezésre a hash kód, a PDF lenyomata. A hash kód bekerül a NAV Online Számla Rendszerbe feladott XML állományba, vagyis az adatszolgáltatás során eljuttatásra kerül az Adóhatósághoz az a hash kód, amit csakis abból a PDF-ből lehet előállítani, ami számlaként készült. Így egy független, harmadik fél számára eljuttatásra került egy adat, a hash kód, amivel biztosítható az elektronikus számla (vagyis a PDF) eredete/hitelessége és sérthetetlensége.

Hash kódos elektronikus számla a gyakorlatban

Az eladó az általa kibocsátott elektronikus számla PDF mellett a vevő részére meg kell küldje a hash kódot is, amit a PDF-ből képzett és NAV rendszerbe feladott. Vagyis a vevő egy számla PDF-et (magát az elektronikus számlát) és egy hozzá tartozó hash kódott is kell kapjon. A hash kód vevő felé továbbításának legtipikusabb két módja:

Számos hash kódolási algoritmus létezik, azonban a NAV Online Számla rendszer két algoritmust támogat:

A vonatkozó előírások alapján mind a kiállítói, mind a befogadói oldalon a számla PDF-et és a hozzá tartozó hash kódot együttesen kell megőrizni.

Hash kódos elektronikus számla ellenőrzése

Számla befogadói oldalon (amennyiben adóalany) jogosan merül fel a kérdés, hogy miként lehet arról meggyőződni, hogy a hash kód valóban feladásra került a NAV rendszerébe, egyezik-e a NAV-nál lévő hash kód a kapott hash kóddal, illetve a számla PDF-el?

Amennyiben a számla befogadó teljes körültekintéssel kíván eljárni, akkor az alábbi lépéseket tudja elvégezni:

Első lépésként a kapott PDF-ből a befogadó is leképezi saját magának a hash kódot és összehasonlítja azzal a kóddal, amit a kiállítótól kapott a PDF mellé. Amennyiben a képzett és a PDF mellé kapott hash kód egyezik, úgy bizonyított, hogy valóban abból a PDF-ből készült a hash kód, amit számlaként megkaptunk.
Ezt követően a NAV Online Számla rendszerből le kell kérni a konkrét számlához tartozó hash kódot (hiszen azt a számla kiállító az adatszolgáltatás során megküldte az Adóhatóságnak) és azt összehasonlítani a kapott hash kóddal. Amennyiben a két kód egyezik, azzal bizonyítottnak tekinthető, hogy valóban a kapott számla PDF alapján képzett hash kód került átadásra a NAV rendszerébe.

Mint látható az ellenőrzés ez utóbbi lépése csak adóalanyok számára elérhető, tekintettel arra, hogy magánszemélyeknek nincs hozzáférési lehetőségükhöz a NAV Online Számla rendszerhez!

A fenti lépések minél kényelmesebb és automatizált elvégzésére készült az ervenyeseszamla.hu weboldal, melynek pontos működéséről és használatáról itt olvashatnak.

Itt kívánjuk megjegyezni, hogy az ervenyeseszamla.hu weboldalon keresztül nemcsak a hash kódos elektronikus számlák lekérdezésére van lehetőség, hanem minden olyan számla adatot le lehet kérni, melyet feladtak a NAV Online Számla rendszerbe.