billomat[API]: Rechnungen – Positionen

Alle Positionen einer Rechnung auflisten

GET /api/invoice-items?invoice_id={invoice_id}

Rechnungspositionen können immer nur für eine bestimmte Rechnung zurückgegeben werden.

Deshalb ist invoice_id ein Pflichtparameter.

Response: 200 OK
<?xml version="1.0" encoding="UTF-8"?> <invoice-items type="array"> <invoice-item> ... <invoice-item> <invoice-item> ... <invoice-item> </invoice-items>

Einzelne Position aufrufen

GET /api/invoice-items/{id}
Response: 200 OK
<?xml version="1.0" encoding="UTF-8"?> <invoice-item> <id type="integer">1</id> <invoice_id type="integer">1</invoice_id> <position type="integer">1</position> <unit>Stück</unit> <quantity type="float">5.2</quantity> <unit_price type="float">10.0</unit_price> <tax_name>MwSt</tax_name> <tax_rate type="float">19.0</tax_rate> <title>Visitenkarten</title> <description>Wunderschöne 4c Visitenkarten</description> <total_gross type="float">61.88</total_gross> <total_net type="float">52.0</total_net> </invoice-item>

Position erstellen

POST /api/invoice-items

Erstellt eine neue Rechnungsposition.

Rechnungspositionen können nur für Rechnungen mit Status Entwurf (DRAFT) erstellt werden.

XML-Element

Beschreibung

Typ

Default-Wert

Pflichtfeld

invoice_id

ID der Rechnung

INT

ja (nicht aber bei der Rechnungserstellung)

unit

Einheit

ALNUM

quantity

Menge

FLOAT

0.0

unit_price

Preis pro Einheit

FLOAT

0.0

tax_name

Steuerbezeichnung

ALNUM

Wert aus Einstellungen

tax_rate

Steuerrate in Prozent

FLOAT

Wert aus Einstellungen

title

Titel

ALNUM

description

Beschreibung

ALNUM

Die Rechnungsposition wird nach evenutell bereits bestehenden Positionen angefügt.

Request Body
<invoice-item> <invoice_id>1</invoice_id> <unit>Stück</unit> <quantity>5.2</quantity> <unit_price>10.0</unit_price> <tax_name>MwSt</tax_name> <tax_rate>19.0</tax_rate> <title>Visitenkarten</title> <description>Wunderschöne 4c Visitenkarten</description> </invoice-item>
Response: 201 Created
<?xml version="1.0" encoding="UTF-8"?> <invoice-item> <id type="integer">1</id> <invoice_id type="integer">1</invoice_id> <created>2007-12-13T12:12:00+01:00</created> <position type="integer">1</position> <unit>Stück</unit> <quantity type="float">5.2</quantity> <unit_price type="float">10.0</unit_price> <tax_name>MwSt</tax_name> <tax_rate type="float">19.0</tax_rate> <title>Visitenkarten</title> <description>Wunderschöne 4c Visitenkarten</description> <total_gross type="float">61.88</total_gross> <total_net type="float">52.0</total_net> </invoice-item>

Position bearbeiten

PUT /api/invoice-items/{id}

bearbeitet eine bestehende Position.

Hier gelten die selben Parameter wie beim Anlegen, allerdings kann die verknüpfte Rechnung (invoice_id) nicht mehr geändert werden.

Rechnungspositionen können nur für Rechnungen mit Status Entwurf (DRAFT) bearbeitet werden.

Request Body
<invoice-item> <unit>Stunde</unit> <quantity>8.5</quantity> </invoice-item>
Response: 200 OK

Position löschen

DELETE /api/invoice-items/{id}

Löscht eine Rechnungsposition.

Beim Löschen von Rechnungspositionen wird position für alle verbleibenden Positionen neu vergeben (ohne die Sortierung zu ändern), um die evtl. entstandene Lücke wieder zu füllen.

Rechnungspositionen können nur für Rechnungen mit Status Entwurf (DRAFT) gelöscht werden.

Response: 200 OK
Du bist hier: Startseite » API » Rechnungen » Positionen