Ugrás a tartalomra
kassza

Válasz

Sikeres számlakészítés után a create() egy CreatedInvoice objektummal tér vissza:

const szamla = await kassza.invoices.create(adatok)

await db.rendeles.update({
  where: { id: rendelesId },
  data: { szamlaszam: szamla.number, brutto: szamla.grossTotal },
})

CreatedInvoice#

MezőTípusForrás a válaszbanLeírás
numberstringszamlaszamA kiállított számla száma, például 'WEB-2026-128'.
netTotalnumberszamlanettoNettó végösszeg.
grossTotalnumberszamlabruttoBruttó végösszeg.
outstandingnumber | undefinedkintlevosegHátralék. paid: true esetén 0.
buyerAccountUrlstring | undefinedvevoifiokurlA vevői fiók linkje, ha a fiókban be van kapcsolva. Ezen keresztül a vevő online is fizethet.
pdfUint8Array | undefinedpdfA számla PDF-je. downloadPdf: false esetén nincs.
itemsCreatedInvoiceItem[]kasszaA tételek a kassza által számolt összegekkel.

Egy CreatedInvoiceItem a tétel nevét és a számolt értékeket tartalmazza: name, quantity, vat, netUnitPrice, netAmount, vatAmount, grossAmount. Ezeket el is mentheted a saját adatbázisodba, pontosan ezek kerültek a számlára.

A PDF mentése#

A pdf egy Uint8Array, amit közvetlenül fájlba írhatsz, feltölthetsz tárhelyre, vagy visszaadhatsz HTTP válaszként:

import { writeFile } from 'node:fs/promises'

if (szamla.pdf) await writeFile(`szamlak/${szamla.number}.pdf`, szamla.pdf)

A PDF később is lekérhető a Bizonylat lekérése PDF-ben művelettel, ezért nem kötelező azonnal eltárolni.

Előnézet válasza#

Az invoices.preview() ugyanazt a bemenetet fogadja, de nem állít ki számlát. InvoicePreview objektumot ad vissza, amelyben csak a pdf, a netTotal, a grossTotal és az items szerepel. Lásd az Előnézet oldalt.

Hibák#

Ha a számla nem készült el, a create() SzamlazzError-t dob. A számlakészítésnél leggyakoribb hibák:

KódKategóriaMikor fordul elő?
validationA kassza a küldés előtt hibát talált a bemenetben, lásd Kérés.
3authHibás Agent kulcs.
54, 55accountAz e-számla nincs engedélyezve, vagy az aláírás nem sikerült.
56partial_successA számla elkészült, csak az értesítő e-mail nem ment ki. Ne állítsd ki újra.
57validationAz XML nem felel meg az XSD-nek.
71, 152duplicateA rendelésszámmal már készült számla, és a fiók tiltja az ismétlést.
136accountLejárt előfizetés vagy rendezetlen díj.
202validationA számlaszám előtag nincs rögzítve a fiókban.
259–264validationHibás tételösszeg. A kassza számolásával nem fordulhat elő, csak kézzel megadott összegeknél.
352, 396validationÉrvénytelen kelte vagy túl korai dátum.
537–539validation, accountAdattörlő kód hiba.
551–556validationAz egyszerűsített számlakép szabályainak megsértése.
network, timeoutNem tudni, elkészült-e a számla. Kérdezd le rendelésszám alapján.

Az összes kódot a Hibakezelés, hibakódok oldal sorolja fel.

Oldal szerkesztéseUtoljára frissítve: