Ugrás a tartalomra
kassza

Válasz

A deleteProforma() visszatérési értéke Promise<void>: sikeres törlés után nincs visszaadott mező. Ha a promise hiba nélkül teljesül, a díjbekérő törlődött.

A Számlázz.hu xmlszamladbkdelvalasz XML-lel válaszol. A kassza csak akkor tekinti sikeresnek, ha a sikeres elem true, minden más esetben SzamlazzError hibát dob.

XML elemkasszaLeírás
sikerestrue esetén a promise teljesül, különben hiba jön.
hibakoderror.codeA Számlázz.hu hibakódja.
hibauzeneterror.messageA Számlázz.hu hibaüzenete, a kód elé írva.

Hibák#

KódKategóriaMikor fordul elő?
validationÜres azonosító, vagy a hivatkozásban nem pontosan egy mező van. A kassza nem küld kérést.
3authHibás Agent kulcs.
335not_foundNincs ilyen díjbekérő: nem is létezett, vagy már törölték.
unexpected_responseA válasz nem a várt XML, vagy hiányzik belőle a sikeres true érték.
network, timeoutNem tudni, törlődött-e a díjbekérő. A kassza nem küldi újra.

A 335-ös hibához a kassza hint mezőben magyar tippet is ad. A többi kódot a Hibakezelés, hibakódok oldalon találod.

Hálózati hiba után#

Hálózati hiba vagy időtúllépés után nem tudhatod, hogy a Számlázz.hu megkapta-e a kérést. Ilyenkor küldd el még egyszer a törlést: ha 335-ös hibát kapsz, a díjbekérő már nincs meg, vagyis az első kérés valószínűleg célba ért.

import { isSzamlazzError } from 'kassza'

const BIZONYTALAN = ['network', 'timeout']

async function dijbekeroTorlese(dijbekeroSzam: string) {
  try {
    await kassza.invoices.deleteProforma(dijbekeroSzam)
  } catch (error) {
    if (!isSzamlazzError(error) || !BIZONYTALAN.includes(error.category)) throw error
    try {
      await kassza.invoices.deleteProforma(dijbekeroSzam)
    } catch (ismetelt) {
      if (!isSzamlazzError(ismetelt) || ismetelt.code !== 335) throw ismetelt
    }
  }
}

Ha újraküldés helyett előbb ellenőriznél, kérdezd le a díjbekérőt a számával. Az invoices.find() null-t ad, ha a Számlázz.hu nem találja:

const dijbekero = await kassza.invoices.find(dijbekeroSzam)
if (dijbekero) await kassza.invoices.deleteProforma(dijbekeroSzam)
Oldal szerkesztéseUtoljára frissítve: