Eingangsrechnungen

Alle Eingangsrechnungen auflisten

GET /api/incomings
<!--?xml version="1.0" encoding="UTF-8"?-->
<incomings type="array" page="1" per_page="100" total="2">
<incoming>
...
</incoming>
<incoming>
...
</incoming>
</incomings>

Über Parameter kann gefiltert werden:

GET /api/incomings?incoming_number=RE123

Listet alle Eingangsrechnungen auf, die „RE123“ in der Rechnungsnummer haben. Groß- und Kleinschreibung wird ignoriert.

Folgende Filter-Parameter stehen zur Verfügung:

ParameterBeschreibung
supplier_idID des Lieferanten
incoming_numberEingangsrechnungsnummer
statusEingangsrechnungsstatus (OPEN, PAID, OVERDUE). Mehrere Stati können per Komma getrennt werden und werden ODER-Verknüpft.
fromNur Eingangsrechnung ab diesem Datum (Format YYYY-MM-DD)
toNur Eingangsrechnung bis zu diesem Datum (Format YYYY-MM-DD)
noteFreitextsuche im Anmerkungstext
tagsKommaseparierte Liste der Schlagworte

Eingangsrechnungen aggregiert auflisten

GET /api/incomings?group_by=supplier

Eingangsrechnungen können auch gruppiert abgerufen werden. Obiges Beispiel gruppiert alle Eingangsrechnungen nach Lieferant.

Folgende Werte stehen für den Parameter group_by zur Verfügung:

WertBeschreibung
supplierLieferant
statusRechnungsstatus
dayTag
weekWoche (beginnt mit Montag)
monthMonat
yearJahr

Es kann auch nach mehreren Kriterien gruppiert werden. Dabei werden die gewünschten Werte einfach per Komma aneinandergehängt (?group_by=supplier,year). Die Reihenfolge der Werte bestimmt dabei die Reihenfolge der Aggregation.

Der Gruppierungs-Parameter kann auch mit den restlichen Filtern kombiniert werden.

<!--?xml version="1.0" encoding="UTF-8"?-->
<incoming-groups type="array" currency_code="USD">
<incoming-group>
<total_gross type="float">347.28</total_gross>
<total_net type="float">291.83</total_net>
<supplier_id type="integer">476</supplier_id>
<incoming-params>
<supplier_id type="integer">476</supplier_id>
</incoming-params>
</incoming-group>
<incoming-group>
<total_gross type="float">1127.53</total_gross>
<total_net type="float">947.50</total_net>
<supplier_id type="integer">477</supplier_id>
<incoming-params>
<supplier_id type="integer">477</supplier_id>
</incoming-params>
</incoming-group>
</incoming-groups>

Einzelne Eingangsrechnung aufrufen

GET /api/incomings/{id}
<!--?xml version="1.0" encoding="UTF-8"?-->
<incoming>
<id type="integer">1</id>
<supplier_id type="integer">123</supplier_id>
<created type="datetime">2007-12-13T12:12:00+01:00</created>
<number>123</number>
<status>OPEN</status>
<date type="date">2009-10-14</date>
<due_date type="date">2009-10-24</due_date></incoming>

<address>Billomat GmbH &amp; Co. KG
Hollertszug 26
57562 Herdorf
Deutschland</address>    <note>Kassenbeleg für Wareneinkauf</note>
<total_gross type="float">107.1</total_gross>
<total_net type="float">90.0</total_net>
    <paid_amount type="float">20.0</paid_amount>
    <open_amount type="float">99.0</open_amount>
<currency_code>EUR</currency_code>
<quote type="float">1.0000</quote>
<expense_account_number type="integer">12345</expense_account_number>
<label>Rechnung.pdf</label>
<client_number>12345</client_number>
<category>goods</category>

status kann folgende Werte haben:

  • OPEN (offen)
  • OVERDUE (überfällig)
  • PAID (bezahlt)

Die Rechnungskommentare und Zahlungen können gesondert abgerufen werden.

Eingangsrechnung erstellen

POST /api/incomings

Erstellt eine neue Eingangsrechnung.

XML-ElementBeschreibungTypDefault-WertPflichtfeld
supplier_idID des LieferantenINTja
addresskomplette AbsendeadresseALNUMAdresse des Lieferanten
numberRechnungsnummerALNUMja
dateRechnungsdatumDATEjs
due_dateFälligkeitsdatumDATE
noteAnmerkungstextALNUM
total_netGesamtbetrag nettoFLOAT
total_grossGesamtbetrag bruttoFLOAT
currency_codeWährungISO-WährungscodeWährung des Lieferanten
quoteWährungskurs (für Umrechnung in Standard-Währung)FLOAT1.0000
base64fileBase64-kodiertes PDF oder Bild.BASE64FILE
expense_account_numberAufwandskontonummerINT
labelBezeichnungALNUM
client_numberKundennummer beim LieferantenALNUM
categoryKategorieALNUM

Die übrigen Eigenschaften der Eingangsrechnung werden automatisch berechnet.

<incoming>
<supplier_id>1</supplier_id>
<number>RE124</number>
<date>2009-11-18</date>
<note>Telefonrechnung</note>
</incoming>
<!--?xml version="1.0" encoding="UTF-8"?-->
<incoming>
<id type="integer">1234</id>
<supplier_id type="integer">1</supplier_id>
<created type="datetime">2007-12-13T12:12:00+01:00</created>
<number>RE124</number>
<date type="date">2009-11-18</date>
<note>Telefonrechnung</note>
...
</incoming>

Eingangsrechnung bearbeiten

PUT /api/incomings/{id}

Kommentare können nicht direkt über die Eingangsrechnung bearbeitet werden. Bitte dafür über die entsprechende Ressource gehen.

<incoming>
<date>2009-10-13</date>
</incoming>

Eingangsrechnung löschen

DELETE /api/incomings/{id}

Löscht eine Eingangsrechnung inkl. aller dazugehöriger Dokumente (PDF) und Kommentare.

PDF einer Eingangsrechnung aufrufen

GET /api/incomings/{id}/pdf

An dieser Stelle kann außerdem der Parameter format=pdf verwendet werden, um das PDF direkt mit Mimetype „application/pdf“ aufzurufen.

<pdf>
    <id type="integer">4882</id>
<created type="datetime">2009-09-02T12:04:15+02:00</created>
<incoming_id type="integer">240</incoming_id>
<filename>incoming_123.pdf</filename>
<mimetype>application/pdf</mimetype>
<filesize>70137</filesize>
<base64file>{base64-kodiertes PDF}</base64file>
</pdf>