Skip to main content

XML + XSD

In the XML file, the order of the fields is fixed, they cannot be interchanged. For currency codes in <penznem> and for foreign-currency invoices the fields <arfolyam> and <arfolyamBank>, see Supported currencies.

<?xml version="1.0" encoding="UTF-8"?>
<xmlszamla xmlns="http://www.szamlazz.hu/xmlszamla" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.szamlazz.hu/xmlszamla https://www.szamlazz.hu/szamla/docs/xsds/agent/xmlszamla.xsd">
<beallitasok>
<szamlaagentkulcs>Please fill!</szamlaagentkulcs>
<eszamla>true</eszamla>
<!-- „true" in case you need to create an e-invoice -->
<szamlaLetoltes>true</szamlaLetoltes>
<!-- „true" in case you would like to get the
PDF invoice in the response -->
<valaszVerzio>1</valaszVerzio>
<!-- 1: gives a simple text or PDF as answer.
2: xml answer, in case you asked for the PDF as well,
it will be included in the XML with base64 coding.
-->
<aggregator></aggregator>
<!-- omit this tag -->
<szamlaKulsoAzon></szamlaKulsoAzon> <!-- string --> <!-- The invoice can be identified with this key by the third party system (system which uses the Számla Agent): later the invoice can be queried with this key. Important: The invoice will only have this external identifier if you send this field when creating the invoice. -->
</beallitasok>
<fejlec>
<!-- header -->
<keltDatum>2020-01-20</keltDatum>
<!-- creating date, in this exact format -->
<teljesitesDatum>2020-01-20</teljesitesDatum>
<!-- payment date -->
<fizetesiHataridoDatum>2020-01-20</fizetesiHataridoDatum>
<!-- due date -->
<fizmod>Átutalás</fizmod>
<!-- payment type: it can be seen in case you create the invoice
from browser -->
<penznem>HUF</penznem>
<!-- currency: it can be seen in case you create the invoice
from browser -->
<szamlaNyelve>hu</szamlaNyelve>
<!-- language of invoice, can be: de, en, it, hu, fr, ro, sk, hr
-->
<megjegyzes>Invoice comment</megjegyzes>
<!-- comment of the invoice -->
<arfolyamBank>MNB</arfolyamBank>
<!-- name of bank: in case of invoice about other currency
than HUF you have to display which bank's exchange rates
did we use to calculate VAT -->
<arfolyam>0.0</arfolyam>
<!-- exchange rate: in case of invoice about other currency
than HUF you have to display which bank's exchange rates
did we use to calculate VAT -->
<rendelesSzam></rendelesSzam>
<!-- order number -->
<dijbekeroSzamlaszam></dijbekeroSzamlaszam>
<!-- reference to pro forma invoice number -->
<elolegszamla>false</elolegszamla>
<!-- deposit invoice -->
<vegszamla>false</vegszamla>
<!-- invoice (after a deposit invoice) -->
<helyesbitoszamla>false</helyesbitoszamla>
<!-- correction invoice -->
<helyesbitettSzamlaszam></helyesbitettSzamlaszam>
<!-- the number of the corrected invoice -->
<dijbekero>false</dijbekero>
<!-- proform invoice -->
<szamlaszamElotag></szamlaszamElotag>
<!-- One of the prefixes from the invoice pad menu -->
<simpleItems>false</simpleItems>
<!-- simplified invoice image for tour operators; "true" hides price
and VAT details on the invoice image, see the
"Simplified item data for tour operators" page -->
</fejlec>
<elado>
<!-- Details of the merchant-->
<bank>BB</bank>
<!-- bank name -->
<bankszamlaszam>11111111-22222222-33333333</bankszamlaszam>
<!-- bank account -->
<emailReplyto></emailReplyto>
<!-- reply e-mail address -->
<emailTargy>Invoice notification</emailTargy>
<!-- e-mail subject -->
<emailSzoveg>mail text</emailSzoveg>
<!-- text of e-mail -->
</elado>
<vevo>
<!--Buyer details -->
<nev>Kovacs Bt.</nev>
<!-- name -->
<irsz>2030</irsz>
<!-- ZIP code -->
<telepules>Érd</telepules>
<!-- city -->
<cim>Tárnoki út 23.</cim>
<!-- address -->
<email>[email protected]</email>
<!-- e-mail address, if given, we will send the invoice to this mail address -->
<sendEmail>false</sendEmail>
<!-- should we send the e-mail to the customer (by email) -->
<adoszam>12345678-1-42</adoszam>
<!-- fiscal number/tax number -->
<postazasiNev>Kovács Bt. mailing name</postazasiNev>
<!--delivery name/postal name -->
<postazasiIrsz>2040</postazasiIrsz>
<!--delivery ZIP code/postal ZIP code -->
<postazasiTelepules>Budaörs</postazasiTelepules>
<!--delivery city/postal city -->
<postazasiCim>Szivárvány utca 8.</postazasiCim>
<!--delivery address/postal address -->
<azonosito>1234</azonosito>
<!-- If you have a subscription in your billing account,
you can assign a unique identifier to your partners on their profile page
in the Beállítások -Partnerek menu. It's important that each identifier
is linked to only one partner! DO NOT use an identifier that has already
been assigned to another customer in your billing account's partner database. -->
<telefonszam>Tel:+3630-555-55-55, Fax:+3623-555-555</telefonszam>
<!-- phone number -->
<megjegyzes>Call extension 214 from the reception</megjegyzes>
<!-- comment -->
</vevo>
<fuvarlevel>
<!-- waybill/confinement note, you do not need this: omit the entire tag -->
<uticel></uticel>
<futarSzolgalat></futarSzolgalat>
</fuvarlevel>
<tetelek>
<!-- items on invoice -->
<tetel>
<!-- item 1 -->
<megnevezes>Elado izé</megnevezes>
<!-- name -->
<mennyiseg>1.0</mennyiseg>
<!-- quantity -->
<mennyisegiEgyseg>db</mennyisegiEgyseg>
<!-- unit of quantity -->
<nettoEgysegar>10000</nettoEgysegar>
<!-- unit price -->
<afakulcs>27</afakulcs>
<!-- VAT rate -->
<nettoErtek>10000.0</nettoErtek>
<!-- net price -->
<afaErtek>2700.0</afaErtek>
<!-- VAT amount -->
<bruttoErtek>12700.0</bruttoErtek>
<!-- gross amount -->
<megjegyzes>lorem ipsum</megjegyzes>
<!-- comment for item -->
<torloKod>123</torloKod>
<!-- optional: data erasure code per item -->
</tetel>
<tetel>
<!-- item 2, details are same as above -->
<megnevezes>Elado izé 2</megnevezes>
<mennyiseg>2.0</mennyiseg>
<mennyisegiEgyseg>db</mennyisegiEgyseg>
<nettoEgysegar>10000</nettoEgysegar>
<afakulcs>27</afakulcs>
<nettoErtek>20000.0</nettoErtek>
<afaErtek>5400.0</afaErtek>
<bruttoErtek>25400.0</bruttoErtek>
<megjegyzes>lorem ipsum 2</megjegyzes>
</tetel>
</tetelek>
</xmlszamla>

All fields shown in the example are mandatory (the tag must be present in the XML), but some may be left blank if they are not used by Számla Agent.

Számlázz.hu does not calculate amounts from item data, so all amounts shown on the invoice must be provided explicitly. The Agent validates the following per line item:

  • net unit price × quantity = net value
  • net value + VAT = gross value

If a discrepancy is found, the invoice is rejected with one of the following error codes: 57, 259, 260, 261, 262, 263, 264.

Do not send an identifier already registered to another customer

In the case of automatic invoicing (by using Számla Agent), DO NOT send an identifier (<azonosito>) that has already been registered to another customer in your billing account's partner database. This has two consequences: customers with a matching identifier can access all documents belonging to that customer account using the customer account link; furthermore, the partner's information will be automatically updated with the billing data you provided in the XML.