rechnung library

Rechnungen (§ 11 UStG, keine Belege) und Kunden über die Rechnungs-API — Zwilling von @kreiseck/kasseneck-api/rechnung im JS-Paket.

Der Schlüssel ist der api_key des Kontos, ohne Kassen-Token. Live braucht das Konto die Freigabe durch Kasseneck; vor dem ersten Ausstellen RechnungApi.getInvoiceSetupStatus aufrufen.

Classes

Brand
Eine Marke des Kontos (Logo, Farbe, Absender); id geht als brandId in issueInvoice.
CancelResult
CreditNoteRequest
CreditNoteResult
CreditNoteSummary
Customer
CustomerInput
CustomerPage
Invoice
Eine Rechnung oder Gutschrift. Die Felder unter „Detail" liefert nur getInvoice; in Listen und Ausstell-Antworten sind sie null.
InvoiceItem
Eine gespeicherte Position — wie gesendet, fehlende Angaben mit ihrem Standardwert.
InvoiceItemInput
InvoiceNotice
Ein Hinweis an einer erfolgreichen Antwort — kein Fehler, nur etwas, das der Aufrufer wissen sollte (heute nur cash_receipt_required).
InvoicePage
InvoicePayment
Eine gebuchte Zahlung, wie die API sie zurückgibt.
InvoiceSetupGap
InvoiceSetupStatus
InvoiceTotals
IssueInvoiceRequest
IssueResult
PaymentInput
Eine Zahlung, wie das Fremdsystem sie meldet.
RechnungApi
RechnungTransport
RecordPaymentRequest
Eine Zahlung nachtragen. Der Schlüssel ist Pflicht: ohne ihn bucht eine Wiederholung nach einem Zeitlimit ein zweites Mal.
RecordPaymentResult
Ergebnis von recordInvoicePayment.
VatRateTotal

Constants

creditNoteReasons → const List<String>
Gründe einer Gutschrift; der Server druckt den deutschen Text.
customerTypes → const List<String>
docTypes → const List<String>
einvoiceFormats → const List<String>
invoiceErrorCodes → const List<String>
Stabile Fehlercodes — am Code entscheiden, nie am Text.
invoiceLanguages → const List<String>
Sprachen einer Rechnung. Eine Rechnung hat eine Nummer und eine Sprache, beim Ausstellen eingefroren; Behörden bekommen immer de.
invoiceListStatus → const List<String>
invoiceNoticeCodes → const List<String>
Hinweise an einer erfolgreichen Antwort — keine Fehler.
invoicePaymentMethods → const List<String>
Einheiten einer Position. Der Aufdruck folgt der Sprache der Rechnung (Stk / pcs), in der E-Rechnung steht der Code aus UN/ECE Rec 20/21. Wie eine Rechnung bezahlt wurde. cash wird gebucht, die Antwort trägt dann zusätzlich den Hinweis cash_receipt_required: eine Barzahlung ist ein Barumsatz und braucht einen Beleg (§ 132a BAO).
invoiceSetupRequirements → const List<String>
Was vor dem Ausstellen erfüllt sein muss — in dieser Reihenfolge meldet getInvoiceSetupStatus die Lücken.
invoiceUnits → const List<String>
kRechnungBaseUrl → const String
Standardadresse der Rechnungs-API.
priceModes → const List<String>
rechnungAufrufe → const List<String>
Die Aufrufe der Rechnungs-API, in der Reihenfolge des Vertrags.
taxSchemes → const List<String>
vatRates → const List<int>

Functions

istRechnungFehlercode(String? code) bool
Gehört code zum Katalog der Rechnungs-API?
rechnungFehlerCode(Object? fehler) String?
Der Fehlercode eines geworfenen Fehlers — null, wenn es keiner der Rechnungs-API ist.
rechnungFeldFehler(Object? fehler) List<({String field, String message})>
Die Feldfehler einer validation-Antwort; leer, wenn es keine sind.

Exceptions / Errors

KasseneckApiError
Fachlicher Fehler des Backends (PIN falsch, Kasse belegt, Geraet gesperrt …).
KasseneckHttpError
Die Antwort war keine brauchbare Huelle {status, data} oder der HTTP-Weg scheiterte. Traegt bewusst nichts aus dem Rumpf: dort koennten Werte stehen, die wir gerade nicht ins Protokoll lassen wollen.
KasseneckValidationError
Der Aufrufer hat etwas nicht mitgegeben, oder die Antwort trug nicht, was der Aufruf zusagt. Die Meldung nennt immer nur das Feld, nie seinen Wert — sonst stuende ein Geraetegeheimnis im Protokoll.