Ugrás a fő tartalomhoz

Kimenő számlák

A Számlázz.hu képes átadni a számlázási fiókban létrehozott számlákat (és PDF-eket) egy külső rendszer felé. A regisztráció részben definiált táblázatban két plusz paraméter (URL a kimenő számlák fogadására) megadásával, meglévő kapcsolat is könnyen bővíthető. Az átküldés push jellegű, tehát amikor a Számlázz.hu-ban számlakibocsátás történik, akkor a Számlázz.hu erről üzenetet küld a fogadó rendszer felé. Nincs lehetőség arra, hogy a fogadó rendszer "lekérdezze" a számlaadatokat. A Hogyan működik? részben leírt működési logika ugyanúgy igaz a kimenő számlákra, mint a bejövőkre.

📄 Átadott bizonylattípusok

A következő típusú (kimenő) bizonylatokat a Számlázz.hu átadja a fogadó rendszer felé:

  • számlák
  • sztornó számlák
  • helyesbítő számlák
  • előlegszámlák
  • végszámlák
  • díjbekérők
  • szállítólevelek

Ha a fogadó rendszernek valamelyik bizonylattípusra nincs szüksége, akkor az <alap> tagen belüli <tipus> tag alapján szűrhet.

Számlaküldést indukáló események

A Számlázz.hu egy kibocsátott számlát többször is átküldhet a fogadó rendszer felé. Minden egyes átküldés során átadja a kérdéses számla összes (aktuális) adatát (XML formában). A következő események indukálják azt, hogy a számla (először vagy ismételten) elküldésre kerül a fogadó rendszer felé:

  • számla kibocsátása
  • számla kifizetettségi állapotának megváltozása
  • számla utólag módosítható adatainak változása, nevezetesen:
  • könyvelés dátuma
  • vevő főkönyvi szám
  • vevő főkönyvi azonosító
  • számla „folyamatos teljesítés” állapot
  • bármely számlatétel árbevétel főkönyvi száma
  • bármely számlatétel áfa főkönyvi száma
  • bármely számlatétel gazdasági eseménye
  • bármely számlatétel áfa gazdasági esemény
  • bármely számlatétel elszámolási időszakának kezdete
  • bármely számlatétel elszámolási időszakának vége
  • a számla fizetési határidejének módosítása (<fizh>)
  • a számla fizetési módjának módosítása (<fizmod>, <fizmodunified>)
  • a számla bankszámlaszámának módosítása (<bankszamla> a <szallito> blokkban)

NAV-tól lehívott számlák továbbítása (Számlaverzum)

A Számlaverzummal a NAV Online Számla rendszeréből letöltött számlák (külső forrás, az XML-ben <forras>34) csak akkor kerülnek továbbításra a fogadó rendszer felé, ha a számlázási fiókban be van kapcsolva a „NAV-tól lehívott számlák továbbítása a könyvelői rendszerek felé” kapcsoló.

  • A kapcsolót a fiók beállításokban találod, a Beállítások → NAV online adatkapcsolat oldalon, a Számlaverzum blokkban. Csak akkor látható, ha a fiókban van aktív pénzügyi adatkapcsolat.
  • A kapcsoló alapértelmezetten kikapcsolt. A Számlaverzum bekapcsolásakor a rendszer automatikusan bekapcsolja, de utólag kikapcsolható, ezért érdemes ellenőrizni az állapotát.
  • Ha a kapcsoló kikapcsolt, a NAV-tól lehívott számlák nem kerülnek továbbításra a fogadó rendszer felé. Ez a kimenő és a bejövő számlákat egyaránt érinti. A Számlázz.hu-ban kiállított számlákra nincs hatással.
  • Ha a kapcsoló bekapcsolt, a NAV-ból letöltött számlák is átadásra kerülnek; bekapcsolás után a korábban letöltött NAV-számlák is feladásra kerülnek.
Számlaverzum beállítások a továbbítás kapcsolóval

Ugyanez a beállítás vonatkozik a bejövő számlákra is.

Külső forrás, fizetési adatok

Külső forrásból (pl. NAV) érkező számlán a fizetési mód, fizetési határidő és bankszámlaszám a felületen utólag kitölthető, ha a mező üres. Kitöltés vagy módosítás után a bizonylat teljes adattartalommal újraküldésre kerül a fogadó rendszer felé; minden további módosítás is újabb átküldést indukál. Meglévő érték, akár Számlázz.hu-ban korábban rögzített, akár 2026.06.04. előtt külső forrásból letöltött adat nem szerkeszthető.

Ha a NAV nem ad értéket és a felhasználó sem tölti ki a felületen, az átadott XML-ben:

Mező2026.06.04. előtt2026.06.04. után
Fizetési módismeretlen (NAV)üres string
Fizetési határidő2099-12-312099-12-31 (változatlan)
Bankszámlaszámismeretlen (NAV)üres string

Ugyanez a szabály a bejövő számlák esetén is érvényes.

információ

Hogyan igényeld kimenő számla szolgáltatásunkat? A részletekhez kattints ide!

Kimenő számla feladás (XML)

A kimenő számlák feladása XML formátumban történik. Az alábbi tabokon a minta XML és az XSD séma található.

<?xml version="1.0" encoding="UTF-8"?>
<szamla xmlns="http://www.szamlazz.hu/szamla" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.szamlazz.hu/szamla https://www.szamlazz.hu/szamla/docs/xsds/szamla/szamla.xsd">
<szallito> <!-- REQ -->
<id>12345</id> <!-- REQ int -->
<nev>Példa Kft.</nev> <!-- REQ string -->
<cim> <!-- REQ -->
<orszag></orszag> <!-- string -->
<irsz>1234</irsz> <!-- REQ string -->
<telepules>Budapest</telepules> <!-- REQ string -->
<cim>Kis utca 2.</cim> <!-- REQ string --> <!-- a cím többi része -->
</cim>
<postacim>
<orszag></orszag> <!-- string -->
<irsz></irsz> <!-- string -->
<telepules></telepules> <!-- string -->
<cim></cim> <!-- string --> <!-- a cím többi része -->
</postacim>
<adoszam>12345678-9-99</adoszam> <!-- REQ string -->
<adoszameu></adoszameu> <!-- string -->
<bank>
<nev></nev> <!-- string -->
<bankszamla>12345678-12345678</bankszamla> <!-- string -->
</bank>
</szallito>
<alap> <!-- REQ -->
<id>123456</id> <!-- REQ int --> <!-- a számla számlázz.hu-s belső azonosítója -->
<szamlaszam>2015-123</szamlaszam> <!-- REQ string --> <!-- a számla egyedi száma -->
<gazdEsemAzon>123456</gazdEsemAzon> <!-- REQ int --> <!-- a számla számlázz.hu-s belső gazdasági esemény azonosítója -->
<forras>34</forras> <!-- int --> <!-- csak abban az esetben szerepel, ha a kérdéses számla nem a Számlázz.hu-val lett kibocsátva. 26:QUiCK, 28:SMARTBooks, 34:NAV Online számla -->
<iktatoszam></iktatoszam> <!-- string --> <!-- könyvelési rendszertől kapott adat -->
<tipus>SZ</tipus> <!-- REQ string --> <!-- "SZ" Számla, "SS" Sztornó számla, "JS" Jóváíró számla, "HS" Helyesbítő számla, "ES" Előlegszámla, "VS" Végszámla, "D" Díjbekérő, "SL" szállítólevél -->
<eszamla>1</eszamla> <!-- REQ string --> <!-- 0: nem számla, 1: papír számla, 2: e-számla, 3: e-számla -->
<hivszamlaszam>2015-1</hivszamlaszam> <!-- string --> <!-- Ha a számla sztornózó vagy jóváíró vagy végszámla, akkor a szülő számla számlaszáma -->
<hivdijbekszam>D-1</hivdijbekszam> <!-- string --> <!-- Ha a számla díjbekérő alapján készült akkor a díbekérő száma -->
<kelt>2015-12-01</kelt> <!-- REQ date --> <!-- Számla kelte -->
<telj>2015-12-02</telj> <!-- REQ date --> <!-- Teljesítés időpontja -->
<fizh>2015-12-03</fizh> <!-- REQ date --> <!-- Fizetései határidő -->
<fizmod>bankkártya</fizmod> <!-- REQ string --> <!-- Fizetési mód: agent esetén bármi lehet, egyébként fix értékek a felületen -->
<fizmodunified>bankkártya</fizmodunified> <!-- REQ string --> <!-- Fizetési mód: ha nem olyan a fizetési mód, mint ami a kézi számlán is elérhető, akkor "egyéb" lesz az értéke -->
<keszpenz>true</keszpenz> <!-- REQ boolean --> <!-- true ha a számla készpénzes -->
<rendelesszam></rendelesszam> <!-- string -->
<nyelv>hu</nyelv> <!-- REQ string --> <!-- hu/en/de/sk/it/fr/hr/ro -->
<devizanem>EUR</devizanem> <!-- string --> <!-- üres, Ft, HUF, EUR, CHF, USD, ... -->
<devizabank></devizabank> <!-- string -->
<devizaarf>210</devizaarf> <!-- double -->
<megjegyzes></megjegyzes> <!-- string -->
<penzforg>true</penzforg> <!-- REQ boolean --> <!-- true ha a számla pénzforgalmi -->
<kata>true</kata> <!-- REQ boolean --> <!-- true ha a számla KATA-s -->
<katafokonyv>false</katafokonyv> <!-- REQ boolean --> <!-- Ez a számla a számlakibocsátó véleménye szerint katás számlaként kezelendő-e (könyvelés) -->
<email>[email protected]</email> <!-- string --> <!-- számlával összefüggésbe hozható emailcím (utoljára ide lett elküldve a számla) -->
<teszt>false</teszt> <!-- REQ boolean --> <!-- A számla teszt vagy éles üzemű fiókban van -->
</alap>
<vevo> <!-- REQ -->
<id>1234567</id> <!-- REQ int -->
<nev></nev> <!-- REQ string -->
<azonosito></azonosito> <!-- string --> <!-- Vevő azonosító -->
<cim>
<orszag></orszag> <!-- REQ string -->
<irsz></irsz> <!-- REQ string -->
<telepules></telepules> <!-- REQ string -->
<cim></cim> <!-- REQ string --> <!-- a cím többi része -->
</cim>
<postacim>
<nev></nev> <!-- string -->
<orszag></orszag> <!-- string -->
<irsz></irsz> <!-- string -->
<telepules></telepules> <!-- string -->
<cim></cim> <!-- string --> <!-- a cím többi része -->
</postacim>
<email>[email protected]</email> <!-- string --> <!-- a vevő emailcíme -->
<adoszam></adoszam>
<adoszameu></adoszameu>
<lokacio>1</lokacio> <!-- REQ int --> <!-- 1: belföldi (magyar), 2: EU-n belüli,3: EU-n kívüli (3. ország),-1: ismeretlen -->
<privatePersonIndicator>false</privatePersonIndicator> <!-- boolean --> <!-- vevő magánszemély -->
<fokonyv>
<vevo>12345A</vevo> <!-- string --> <!-- vevői főkönyvi szám -->
<vevoazon>12345A</vevoazon> <!-- string --> <!-- vevői főkönyvi azonosító -->
<datum>2015-12-05</datum> <!-- date --> <!-- könyvelés dátuma -->
<folyamatostelj>false</folyamatostelj> <!-- boolean --> <!-- folyamatos teljesítésű-e a számla -->
</fokonyv>
</vevo>
<tetelek> <!-- REQ -->
<tetel> <!-- REQ -->
<nev>Alma</nev> <!-- REQ string -->
<azonosito></azonosito> <!-- string -->
<mennyiseg>2</mennyiseg> <!-- REQ double -->
<mennyisegiegyseg>kg</mennyisegiegyseg> <!-- REQ string -->
<nettoegysegar>100.1</nettoegysegar> <!-- REQ double -->
<afatipus>ÁKK</afatipus> <!-- string --> <!-- ÁKK: áfakörön kívüli, K.AFA: különbözeti áfa, F.AFA: fordított áfa fizetés, MAA: Mentes az adó alól, EUKT: EU-n kívül, EUT: EU-n belül, EUK: EU-n kívül, EU: EU-n belül, AAM: Alanyi adómentes, TAM: Tárgyi adómentes, TAHK: áfa tárgyi hatályán kívül -->
<afakulcs>0</afakulcs> <!-- REQ double -->
<netto>200</netto> <!-- REQ double -->
<arresafaalap>0</arresafaalap> <!-- REQ double -->
<afa>54</afa> <!-- REQ double -->
<brutto>254</brutto> <!-- REQ double -->
<megjegyzes>zöld</megjegyzes> <!-- string -->
<sztetordering>1</sztetordering> <!-- REQ double --> <!-- tétel sorrendje a számlán -->
<fokonyv>
<arbevetel>12345A</arbevetel> <!-- string --> <!-- árbevétel főkönyvi szám -->
<afa>12345A</afa> <!-- string --> <!-- ÁFA főkönyvi szám -->
<gazdasagiesemeny>12345A</gazdasagiesemeny> <!-- string --> <!-- gazdasági esemény főkönyvi szám -->
<gazdasagiesemenyafa>12345A</gazdasagiesemenyafa> <!-- string --> <!-- ÁFA gazdasági esemény főkönyvi szám -->
<elszdattol>2018-01-01</elszdattol> <!-- date --> <!-- A számla tétel elszámolási időszak kezdete -->
<elszdatig>2018-01-31</elszdatig> <!-- date --> <!-- A számla tétel elszámolási időszak vége -->
</fokonyv>
</tetel>
</tetelek>
<osszegek>
<afakulcsossz> <!-- REQ double -->
<afatipus>ÁKK</afatipus> <!-- string --> <!-- ÁKK: áfakörön kívüli, K.AFA: különbözeti áfa, F.AFA: fordított áfa fizetés, MAA: Mentes az adó alól, EUK: EU-n kívül, EU: EU-n belül, AAM: Alanyi adómentes, TAM: Tárgyi adómentes -->
<afakulcs>0</afakulcs> <!-- REQ double -->
<netto>200</netto> <!-- REQ double -->
<afa>54</afa> <!-- REQ double -->
<brutto>254</brutto> <!-- REQ double -->
</afakulcsossz>
<totalossz> <!-- REQ -->
<netto>200</netto> <!-- REQ double -->
<afa>54</afa> <!-- REQ double -->
<brutto>254</brutto> <!-- REQ double -->
</totalossz>
</osszegek>
<kifizetesek>
<kifizetes>
<datum>2015-02-28</datum> <!-- date -->
<jogcim>átutalás</jogcim> <!-- string -->
<osszeg>300</osszeg> <!-- double -->
<megjegyzes></megjegyzes> <!-- string -->
<bankszamlaszam></bankszamlaszam> <!-- string --> <!-- A kifizetés ténylegesen erről a bankszámláról érkezett, vagy a számlán szereplő bankszámlaszám (ha a küldő bankszámlaszám nem ismert) -->
<banktranzid>1234</banktranzid> <!-- int -->
<devizaarf>275</devizaarf> <!-- double -->
</kifizetes>
</kifizetesek>
<pdf></pdf>
</szamla>

Elvárt válasz

Fogadó végpont követelményei

Csak olyan végponttal működik megbízhatóan a kapcsolat, amely HTTP 200 (OK) státusszal és a helyes válasz XML-lel tér vissza egyetlen HTTP-válasz törzsében. Nem támogatjuk azokat a végpontokat, amelyek fogadáskor csak HTTP 302 (átirányítás) választ adnak, például a Google Apps Script (vagy hasonló "web appok"). Bővebben: Regisztráció.

A Számlázz.hu-nak érzékelnie kell, hogy az általa küldött HTTP kérést a fogadó rendszer “átvette”, értelmezte és kezelte. A számlaválasznak az alábbi XSD-nek kell megfelelnie: https://www.szamlazz.hu/szamla/docs/xsds/szamla/szamlavalasz.xsd

Az elvárt válaszhoz négy dolog szükséges:

  • A HTTP válasz státuszkódja legyen 200 (OK).
  • A válasz egy helyesen formázott XML.
  • A válaszban kötelező szerepelnie a <id> mezőnek, és annak egyeznie kell a kapott számla XML-ben érkező <id> értékkel (az <alap><id>...</id></alap> blokkban). Ha a számlaválaszban szereplő <id> nem egyezik meg a kapott számla <id> értékével, a válasz elutasításra kerül.
  • A válaszban opcionálisan megadható a fogadó rendszer által a számlához kiosztott iktatószám.

Elvárt válasz példa XML

<szamlavalasz xmlns="http://www.szamlazz.hu/szamlavalasz"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.szamlazz.hu/szamlavalasz">
<alap>
<id>1001</id> <!-- egyezzen a kapott számla XML <szamla><alap><id>...</id></alap></szamla> értékével -->
<iktatoszam>IKT-20250101</iktatoszam>
</alap>
<!--<hibakod>KEY_ERR</hibakod>-->
</szamlavalasz>

Az iktatószámról

A Számlázz.hu lehetővé teszi azt, hogy a fogadó rendszer egy egyedi iktatószámot rendeljen a frissen befogadott számlához. Ezt az iktatószámot a számla első befogadásakor, válaszként kell elküldeni a Számlázz.hu felé. Ha a válaszban érkezik iktatószám, akkor:

  • azt a Számlázz.hu eltárolja a számla adatai között (a számla pdf-en nem jelenik meg!)
  • a számla ismételt átküldésekor ezt az iktatószámot is elküldjük a számla többi adatával együtt. Fentebb részleteztük, hogy a számla adatait a Számlázz.hu mindig teljes körűen átküldi a fogadó rendszer felé, továbbá hogy a számla adatai többször is átküldésre kerülhetnek (Számlaküldést indukáló események). A számlaadatok első átküldésekor az iktatószám mindig üres. A számla adatok második (vagy későbbi) átküldésekor az iktatószám mezőben lehet adat attól függően, hogy a korábbi átküldésre válaszul a Számlázz.hu kapott-e iktatószámot a fogadó rendszertől.

Kulcshiba kezelés

Hibás kulcs esetén a válaszban lehetőség van két speciális paramétert küldeni a hibakodTipus-on belül:

KEY_ERR: hibás kulcs. Az átküldött kulcs nem található a fogadó rendszerben, ilyenkor a bizonylatot a következő változásáig nem küldjük újra.

KEY_DEL: törlendő kulcs. Törölni kell az online feladáshoz szükséges információkat a számlázási fiókból. Ezen válasz hatására a fiókgazda e-mailben fog értesülni arról, hogy a fiókjában kikapcsoltuk a fogadó rendszer felé az online kapcsolatot. Mivel a küldés aszinkron, a már feladásra jelölt bizonylatokat átadhatjuk a törlés tényének regisztrálása után is.

tanács

Ha ezen az oldalon nem találtad meg, amit kerestél, akkor nézz körbe a Hogyan működik? oldalon.

Mi történik akkor, ha díjbekérő alapján történik számlakibocsátás?

  1. Ilyenkor a frissen kibocsátott számlát elküldjük a fogadó rendszer felé, de a díjbekérőt nem küldjük újra.
  2. A frissen kibocsátott számla az <alap><hivdijbekszam> tagben tartalmazza majd a díjbekérő számlaszámát. A díjbekérő iktatószámát viszont nem tartalmazza.
  3. A díjbekérő attól függően törlődik, hogy a beállítások között mi szerepel (Beállítások/Fiók beállításai).
  4. Díjbekérő törléséről a Számlázz.hu semmilyen üzenetet nem küld a fogadó rendszer felé.

💳 Fizetési módok kezelése

A Számlázz.hu-ban kézi számlakészítéskor vagy jóváírások adminisztrálása során fix értékkészletből választható a fizetés módja, de a Számla Agenttel készített számlákon a küldő rendszer tetszőleges stringet adhat át a fizetés módjaként. Emiatt a számlák online feladásakor a fizetési módot kétféleképpen küldjük az XML-ben:

  • A <fizmod> tag tartalmazza a fizetési módként tárolt tetszőleges értékű stringet (gyakorlatilag ez a fizetési mód szerepel a számlán).
  • A <fizmodunified> tag pedig ennek normalizált értéke. Az értékkészlet: átutalás, készpénz, bankkártya, csekk, utánvét, ajándékutalvány, barion, barter, csoportos beszedés, OTP Simple, kompenzáció, kupon, PayPal, PayU, SZÉP kártya, utalvány, egyéb. Ha a <fizmod> értéke ezek valamelyikéhez nem rendelhető hozzá egyértelműen, akkor az érték “egyéb” lesz. Az értékek az XSD-ben is megtalálhatóak.
  • A <keszpenz> értéke true, ha készpénzes a fizetés, egyébként false.