Zum Inhalt springen
Developer

Kassen

Buchhaltung4 EndpunkteBilling / Kassen

Die Kassen.

GET/api/invoice/cash_register

Query-Parameter

idinteger
deletedbooleanDiese Eigenschaft markiert eine Entität als gelöscht / archiviert | Benötigtes Zugriffsrecht: SCOPE | Standardwert: false
namestring
codestringKurzzeichen für die Belegnummer, etwa "VH" für Vereinsheim. | Benötigt Zugriffs-Tag: SCOPE
isActivebooleanStillgelegte Kassen nehmen keine Buchungen mehr an, bleiben aber mit ihrem Buch bestehen - die Aufzeichnungen sind aufzubewahren.
lockedThroughstringBis zu welchem Tag das Kassenbuch abgeschlossen ist. Der Kassenabschluss schiebt dieses Datum vor. Bis hierhin nimmt die Kasse keine Bewegung mehr an – auch nicht am selben Tag: Die Chronologieprüfung allein ließ nach dem Monatsabschluss noch eine Bewegung mit dem letzten Tag des Monats zu, und der abgeschlossene Monat wäre hinterher ein anderer gewesen als der abgeschlossene.
ledgerAccountstringDas Bestandskonto dieser Kasse für die Bilanzierung. Je Kasse ein eigenes Konto, sonst stünden in der Bilanz beide Bestände auf einer Zeile und ließen sich nicht mehr trennen.
costCenterstringDie steuerliche Sphäre beim gemeinnützigen Verein. Eine Kasse gehört meist zu einem Bereich - die Kasse am Getränkestand zum wirtschaftlichen Geschäftsbetrieb, die Kasse der Geschäftsstelle zum ideellen Bereich. | Erfordert Zugriffs-Tag: SCOPE
createdstring
updatedstring
searchStringstringText, nach dem in der Liste gesucht wird
orderFieldNamestringName des Bestellfelds
orderFieldSortstringSortiermodusErlaubt: DESCASC
pageintegerSeite der Liste
pageSizeintegerAnzahl der Einträge je Seite
withMaxPageNumberstringgibt die Anzahl verfügbarer Seiten als Header zurück, wenn dies gesetzt ist

Antworten

200Kassenarray<CashRegister>

Felder anzeigen (10)
  • idinteger

    Primärschlüssel der Kasse. Interne ID.

  • codestring

    Kurzzeichen für die Belegnummer, etwa "VH" für Vereinsheim.

  • ledger_accountLedgerAccount

    Das Bestandskonto dieser Kasse für die Bilanzierung. Je Kasse ein eigenes Konto, sonst stünden in der Bilanz beide Bestände auf einer Zeile und ließen sich nicht mehr trennen.

    Felder anzeigen (15)
    • display_namestring
    • idinteger

      Primärschlüssel des Hauptbuchkontos. Interne ID.

    • numberstring

      Kontonummer im Kontenrahmen, z.B. "1200" (SKR03 Bank) oder "40000" (SKR42). Als String geführt, weil SKR42 fünfstellig ist und führende Nullen bedeutungstragend sein können.

    • chart_of_accountsstring

      Kontenrahmen, zu dem das Konto gehört, zum Beispiel SKR03.

    • account_typestring

      Art des Kontos, zum Beispiel Aktiv oder Erlös.

    • default_taxTax

      Steuersatz, der beim Buchen auf dieses Konto vorgeschlagen wird. Bei Erlös- und Aufwandskonten ist der Satz durch die Kontonummer vorgegeben (etwa „Erlöse 19% USt“), deshalb hängt er am Konto und nicht an der einzelnen Buchung.

    • tax_accountLedgerAccount

      Gegenkonto für die Steuer, die beim Buchen auf dieses Konto entsteht. Bei Erlöskonten das Umsatzsteuerkonto, bei Aufwandskonten das Vorsteuerkonto. Damit lässt sich aus einem Bruttobetrag automatisch der dreizeilige Buchungssatz erzeugen.

    • expense_categoryExpenseCategory10

      Brücke zur EÜR: auf welcher Zeile der Anlage EÜR dieses Konto zählt. Erlaubt es, beide Gewinnermittlungsarten aus denselben Belegen zu bedienen - etwa im Wechseljahr oder wenn ein Verein den wirtschaftlichen Geschäftsbetrieb per EÜR und den Rest bilanziell führt.

    • cost_center_requiredboolean

      Ob auf diesem Konto eine Kostenstelle angegeben werden muss. Der SKR42 bildet die vier steuerlichen Sphären eines gemeinnützigen Vereins über Kostenstellen ab, nicht über getrennte Konten. Für die Erfolgskonten ist die Angabe dort deshalb Pflicht.

    • is_systemboolean

      Vom Kontenrahmen-Initialisierer angelegt. Nummer und Art sind dann durch den Rahmen vorgegeben und sollten nicht geändert werden.

    • is_activeboolean

      Konten lassen sich stilllegen, statt sie zu löschen - bebuchte Konten dürfen nicht verschwinden.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

  • cost_centerCostCenter

    Die steuerliche Sphäre beim gemeinnützigen Verein. Eine Kasse gehört meist zu einem Bereich - die Kasse am Getränkestand zum wirtschaftlichen Geschäftsbetrieb, die Kasse der Geschäftsstelle zum ideellen Bereich.

    Felder anzeigen (10)
    • display_namestring
    • idinteger

      Primärschlüssel der Kostenstelle. Interne ID.

    • numberstring

      Nummer der Kostenstelle.

    • spherestring

      Steuerliche Sphäre, null bei rein betriebswirtschaftlicher Gliederung.

    • is_systemboolean

      Die Kostenstelle wird vom System angelegt und kann nicht gelöscht werden.

    • is_activeboolean

      Die Kostenstelle ist aktiv.

    • deletedboolean

      Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

    • namestring

      Name der Einheit.

    • createdstring (date-time)

      Zeitpunkt, zu dem der Datensatz angelegt wurde.

    • updatedstring (date-time)

      Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

  • is_activeboolean

    Stillgelegte Kassen nehmen keine Buchungen mehr an, bleiben aber mit ihrem Buch bestehen - die Aufzeichnungen sind aufzubewahren.

  • locked_throughstring (date-time)

    Bis zu welchem Tag das Kassenbuch abgeschlossen ist. Der Kassenabschluss schiebt dieses Datum vor. Bis hierhin nimmt die Kasse keine Bewegung mehr an - auch nicht am selben Tag: die Chronologieprüfung allein ließ nach dem Monatsabschluss noch eine Bewegung mit dem letzten Tag des Monats zu, und der abgeschlossene Monat wäre hinterher ein anderer gewesen als der abgeschlossene.

  • deletedboolean

    Diese Eigenschaft markiert eine Entität als gelöscht / archiviert

  • namestring

    Name der Einheit.

  • createdstring (date-time)

    Zeitpunkt, zu dem der Datensatz angelegt wurde.

  • updatedstring (date-time)

    Zeitpunkt, zu dem der Datensatz zuletzt aktualisiert wurde.

Anfrage
curl --request GET \
  --url https://eure-instanz.iw-erp.de/api/invoice/cash_register \
  --header 'x-iw-jwt-token: <TOKEN>'
Antwort 200 application/json
[
  {
    "id": 42,
    "name": "Beispiel",
    "code": "string",
    "ledger_account": {
      "display_name": "Beispiel",
      "id": 42,
      "name": "Beispiel",
      "number": "string",
      "chart_of_accounts": "string",
      "account_type": "string",
      "cost_center_required": true,
      "is_system": true,
      "is_active": true,
      "deleted": true
    },
    "cost_center": {
      "display_name": "Beispiel",
      "id": 42,
      "name": "Beispiel",
      "number": "string",
      "sphere": "string",
      "is_system": true,
      "is_active": true,
      "deleted": true,
      "created": "2026-10-15T09:30:00+02:00",
      "updated": "2026-10-15T09:30:00+02:00"
    },
    "is_active": true,
    "locked_through": "2026-10-15T09:30:00+02:00",
    "deleted": true,
    "created": "2026-10-15T09:30:00+02:00",
    "updated": "2026-10-15T09:30:00+02:00"
  }
]

Legt eine Kasse an.

POST/api/invoice/cash_register

Request-Body application/json

  • namestring
  • codestring
  • ledger_accountinteger
  • cost_centerinteger

Antworten

201Die angelegte Kasse

Anfrage
curl --request POST \
  --url https://eure-instanz.iw-erp.de/api/invoice/cash_register \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "name": "Kasse Vereinsheim",
  "code": "VH",
  "ledger_account": 42,
  "cost_center": 3
}
'

Ändert eine Kasse.

PUT/api/invoice/cash_register/{identifier}

Stammdaten, nicht Bewegungen - die bleiben unangetastet.

Pfad-Parameter

identifierPflichtstring

Antworten

200Die geänderte Kasse

Anfrage
curl --request PUT \
  --url https://eure-instanz.iw-erp.de/api/invoice/cash_register/42 \
  --header 'x-iw-jwt-token: <TOKEN>'

Legt eine Kasse still oder löscht sie, wenn sie nie bebucht wurde.

DELETE/api/invoice/cash_register/{identifier}

Eine Kasse mit Bewegungen zu löschen hieße, ein Kassenbuch zu vernichten. Sie wird deshalb stillgelegt: keine neuen Buchungen, das Buch bleibt lesbar.

Pfad-Parameter

identifierPflichtstring

Antworten

200Ob gelöscht oder stillgelegt wurde

Anfrage
curl --request DELETE \
  --url https://eure-instanz.iw-erp.de/api/invoice/cash_register/42 \
  --header 'x-iw-jwt-token: <TOKEN>'