Zahlungsmittelkonten

Die Zahlungsmittelkonten sind Konten für Einnahmen und Ausgaben, d.h. Konten auf die Einzahlungen eingehen und von denen Ausgaben abgehen (z.B. Bankkonten, Kreditkarten).

Mit der bookamat–API können Zahlungsmittelkonten abgefragt, hinzugefügt, geändert und gelöscht werden. Es sind also GET, POST, PUT/PATCH und DELETE Requests möglich.

Liste der Zahlungsmittelkonten

Die Liste aller Zahlungsmittelkonten wird mit einem GET Request auf die URL der Liste abgefragt.

/preferences/bankaccounts/

Response

HTTP/1.0 200 OK
Content-Type: application/json; charset=utf-8

{
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": 1254,
            "name": "Bankkonto",
            "position": 0,
            "flag_balance": true,
            "opening_balance": "-999.99",
            "counter_booked_bookings": 20,
            "counter_open_bookings": 5,
            "counter_deleted_bookings": 5,
            "counter_bookingtemplates": 10
        },
        {
            "id": 1255,
            "name": "Kreditkarte",
            "position": 1,
            "flag_balance": false,
            "opening_balance": "0.00",
            "counter_booked_bookings": 30,
            "counter_open_bookings": 0,
            "counter_deleted_bookings": 0,
            "counter_bookingtemplates": 5
        },
    ]
}

Felder

id:

Eindeutige Identifikationsnummer

Format
name:

Bezeichnung des Zahlungsmittelkontos

Format
String (max. 40 Zeichen)
position:

Position

Format
flag_balance:

Saldenliste

Format
opening_balance:

Anfangssaldo

Format
counter_booked_bookings:

Anzahl gebuchter Buchungen (Buchungszeilen)

Format
Anmerkung
Die Zahl bezieht sich auf Buchungszeilen (amounts).
counter_open_bookings:

Anzahl offener Buchungen (Buchungszeilen)

Format
Anmerkung
Die Zahl bezieht sich auf Buchungszeilen (amounts).
counter_deleted_bookings:

Anzahl gelöschter Buchungen (Buchungszeilen)

Format
Anmerkung
Die Zahl bezieht sich auf Buchungszeilen (amounts).
counter_bookingtemplates:

Anzahl Buchungsvorlagen (Buchungszeilen)

Format
Anmerkung
Die Zahl bezieht sich auf Buchungszeilen (amounts).

Filter

flag_balance:

Saldenliste

Format
Boolean
Beispiele
flag_balance=true
has_bookings:

Buchungen vorhanden

Format
Boolean
Beispiele
has_bookings=true

Sortierung

ordering:

Sortierung

Möglichkeiten
id, name, position
Beispiele
ordering=id

Zahlungsmittelkonto Detail

Ein einzelnes Zahlungsmittelkonto wird mit einem GET Request auf die Detail URL abgefragt. Es sind dieselben Felder verfügbar wie bei der Listenansicht.

/preferences/bankaccounts/{id}/

Zahlungsmittelkonto hinzufügen

Ein neues Zahlungsmittelkonto wird mit einem POST Request auf die Listen URL hinzugefügt. Der Request Body muss alle notwendigen Felder beinhalten, als Response wird das neue Zahlungsmittelkonto zurückgegeben.

/preferences/bankaccounts/

Request Body

{
    "name": "Bar/Kassa",
}

Response

HTTP/1.0 201 CREATED
Content-Type: application/json; charset=utf-8

{
    "id": 1256,
    "name": "Bar/Kassa",
    "position": 2,
    "flag_balance": false,
    "opening_balance": "0.00",
    "counter_booked_bookings": 0,
    "counter_open_bookings": 0,
    "counter_deleted_bookings": 0,
    "counter_bookingtemplates": 0
}

Felder

name *:

Bezeichnung des Zahlungsmittelkontos

Format
String (max. 40 Zeichen)
position:

Position

Format
Anmerkung
Abhängig vom Positionswert ändern sich die Positionen aller anderen Zahlungsmittelkonten (siehe Grundlagen Positionsfelder)
Default
Letzte Position (falls keine Position angegeben wird)
flag_balance:

Saldenliste

Format
Default
false
opening_balance:

Anfangssaldo

Format
Default
"0.00"

Zahlungsmittelkonto ändern

Ein bestehendes Zahlungsmittelkonto kann mit einem PATCH oder PUT Request auf die Detail URL geändert werden.

/preferences/bankaccounts/{id}/

Request (PATCH)

Content-Type: application/json; charset=utf-8

{
    "flag_balance": true,
    "opening_balance": "100.00"
}

Request (PUT)

Content-Type: application/json; charset=utf-8

{
    "name": "Kreditkarte",
    "position": 1,
    "flag_balance": true,
    "opening_balance": "100.00"
}

Response

HTTP/1.0 202 ACCEPTED
Content-Type: application/json; charset=utf-8

{
    "id": 1255,
    "name": "Kreditkarte",
    "position": 1,
    "flag_balance": true,
    "opening_balance": "100.00"
    "counter_booked_bookings": 30,
    "counter_open_bookings": 0,
    "counter_deleted_bookings": 0,
    "counter_bookingtemplates": 5
}

Felder

Die Felder sind deckungsgleich mit dem POST Request (siehe Felder beim Hinzufügen eines Zahlungsmittelkontos). Beim PATCH Request sind nur die geänderten Felder anzugeben, beim PUT Request sind alle Felder notwendig. Beim Verändern einer Position werden die Positionen aller anderen Zahlungsmittelkonten verändert (siehe Grundlagen Positionsfelder).

Zahlungsmittelkonto löschen

Ein Zahlungsmittelkonto wird mit einem DELETE Request auf die Detail URL gelöscht.

Bemerkung

Es können nur Zahlungsmittelkonten gelöscht werden, denen keine Buchungen zugeordnet sind. Bei zugeordneten Buchungsvorlagen wird das Zahlungsmittelkonto aus der Vorlage gelöscht.

/preferences/bankaccounts/{id}/

Response

HTTP/1.0 204 NO CONTENT