Ugrás a tartalomra
kassza

Nyugta vagy számla?

A Számla Agenttel kiállított nyugta jogilag számítógéppel előállított nyugta. Nem pótolja az online pénztárgépet, és nem e-nyugta. Mielőtt nyugtát állítasz ki, két kérdést kell eldönteni: adhatsz-e egyáltalán ilyen nyugtát, és elég-e az adott vevőnek a nyugta.

A nyugták fajtái#

FajtaMivel készülA kassza tudja?
Kézi nyugtaNyomdai nyugtatömb, kézzel írvaNem, de a napi NAV-összesítőhöz ad eszközt (kézi nyugtatömb)
Számítógéppel előállított nyugtaSzámlázó program, például a Számlázz.hu felülete vagy a Számla AgentIgen, ezt adja a receipts.create()
Gépi nyugtaOnline pénztárgép (OPG)Nem
E-nyugtaE-pénztárgép, például a Számlázz.hu ePénztárgép alkalmazásaNem, ehhez nincs API

Az Agent-nyugtát ne hívd e-nyugtának: e-nyugtát kizárólag e-pénztárgép adhat (8/2025. (III. 31.) NGM rendelet).

Ki adhat Agent-nyugtát?#

Csak az, akinek a tevékenysége nem online pénztárgép-köteles. A pénztárgép-kötelezettséget az NGM rendelet melléklete sorolja fel, a fontosabbak:

  • gyógyszertár,
  • kiskereskedelem (TEÁOR 47.1–47.7); csomagküldő és internetes kereskedelemnél (47.91) csak a nyílt árusítású üzlet és a bemutatóterem,
  • vendéglátás (56.1 és 56.3), a mozgó vendéglátás kivételével,
  • szálláshely-szolgáltatás (55.1–55.3),
  • kölcsönzés (77.1–77.2, 77.33) és javítás (95.1–95.2).

Egy helyhez kötött bolt vagy büfé tehát online pénztárgéppel vagy e-pénztárgéppel ad nyugtát, a kasszával nem. Az online pénztárgép 2028. június 30-ig használható, utána e-pénztárgép kell.

A kassza nyugtája jellemzően ezekhez való: webshop és online jegy fizetés után, letölthető termék, food truck és más mozgó árusítás, valamint nem pénztárgép-köteles szolgáltatás (fodrászat, edzés, oktatás, parkolás, rendezvény).

Mikor elég a nyugta?#

Nyugta akkor adható számla helyett, ha mind a négy feltétel teljesül:

  1. a vevő nem adóalany és nem jogi személy,
  2. az ellenérték nem éri el a 900 000 Ft-ot,
  3. a teljes összeget legkésőbb a teljesítéskor kifizetik,
  4. a vevő nem kér számlát.

Ha bármelyik nem teljesül, számlát kell kiállítani. Devizás eladásnál a 900 000 Ft-os határt forintra átszámítva kell nézni.

A döntés kódban: chooseDocument#

A chooseDocument() a fenti szabályokat alkalmazza, és indoklással együtt adja vissza a döntést. Nem hív hálózatot.

import { chooseDocument } from 'kassza'

const dontes = chooseDocument({
  grossTotal: 18_990,
  currency: 'HUF',
  buyer: { taxNumber: undefined },
  paidByFulfillment: true,
  invoiceRequested: false,
  cashRegisterRequired: false,
})

console.log(dontes.type, dontes.reasons)
MezőJelentés
grossTotal, currency, exchangeRateA bruttó végösszeg. Devizánál az árfolyam is kell, mert a határ forintban van.
buyertaxNumber, euTaxNumber vagy isBusiness: true esetén a vevő cég.
paidByFulfillmentfalse, ha nem fizetik ki legkésőbb a teljesítésig.
invoiceRequestedtrue, ha a vevő számlát kér.
cashRegisterRequiredtrue, ha a tevékenységed pénztárgép-köteles.

A type értéke:

  • invoice: legalább egy feltétel nem teljesül, a reasons megmondja, melyik,
  • cash-register: a vevőnek nyugta járna, de a tevékenység pénztárgép-köteles, így Agent-nyugta nem adható (számlát viszont kiállíthatsz),
  • receipt: mind a négy feltétel teljesül, nyugta adható.

A fizetésből bizonylatot készítő issueForPayment() ugyanezt a döntést használja.

Ha a vevő utólag számlát kér#

Ha a vevő a nyugta után számlát kér, a nyugtát sztornózni kell, és számlát kell kiállítani a vevő nevére. A receipts.convertToInvoice() ezt egy lépésben végzi el, és ismételt hívásnál sem állít ki második számlát:

const eredmeny = await kassza.receipts.convertToInvoice({
  receiptNumber: 'NYGT-2026-118',
  buyer: {
    name: 'Példa Kft.',
    zip: '1111',
    city: 'Budapest',
    address: 'Fő utca 1.',
    taxNumber: '12345676-2-42',
  },
})

console.log(eredmeny.reversal?.number, eredmeny.invoice.number, eredmeny.invoice.created)

A számla a nyugta tételeiből készül, a megjegyzésben hivatkozik a nyugtára és a sztornóra, a külső azonosítója CONV/{nyugtaszám}. A csak nyugtán használható áfakódokhoz (ÁKK, MAA, EU, EUK) a vatMapping opcióban kell megadni a számlán használandó kulcsot, a könyvelőddel egyeztetve.

Kapcsolódó#

Oldal szerkesztéseUtoljára frissítve: