[API] Abo-Rechnungen

Alle Abo-Rechnungen auflisten

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

Über Parameter kann gefiltert werden:

GET /api/recurrings?label=foo

Listet alle Abo-Rechnungen auf, die "foo" in der Bezeichnung haben. Groß- und Kleinschreibung wird ignoriert.
Folgende Filter-Parameter stehen zur Verfügung:

Parameter Beschreibung
client_id ID des Kunden
name Der Name der Abo-Rechnung
payment_type Zahlart (z.B. CASH, BANK_TRANSFER, PAYPAL, ...). Mehrere Zahlarten können per Komma getrennt werden und werden ODER-Verknüpft. Eine Übersicht aller Zahlarten findet man bei der API-Dokumentation für Zahlungen.
cycle Intervall (DAILY, WEEKLY, MONTHLY, QUARTERLY, SEMIYEARLY, YEARLY).
label Freitextsuche in der Bezeichnung
intro Freitextsuche im Einleitungstext
note Freitextsuche im Anmerkungstext
tags Kommaseparierte Liste der Schlagworte

Einzelne Abo-Rechnung aufrufen

GET /api/recurrings/{id}
<?xml version="1.0" encoding="UTF-8"?>
<recurring>
    <id type="integer">2</id>
    <created type="datetime">2012-03-02T16:17:41+01:00</created>
    <client_id type="integer">33234</client_id>
    <template_id type="integer" />
    <currency_code>EUR</currency_code>
    <name>Monatsmiete</name>
    <cycle>MONTHLY</cycle>
    <action>EMAIL</action>
    <hour type="integer">16</hour>
    <start_date type="date">2012-03-03</start_date>
    <end_date type="date">2012-10-11</end_date>
    <last_creation_date type="date">2012-05-25</last_creation_date>
    <next_creation_date type="date">2012-06-01</next_creation_date>
    <iterations type="integer">0</iterations>
    <counter type="integer">9</counter>
    <address />
    <due_days type="integer">0</due_days>
    <discount_rate type="float">1.1</discount_rate>
    <discount_days type="integer">7</discount_days>
    <intro>Hiermit berechnen wir für...</intro>
    <note>Vielen Dank für Ihren Auftrag</note>
    <total_gross type="float">107.1</total_gross>
    <total_net type="float">90.0</total_net>
    <reduction>10</reduction>
    <total_gross_unreduced type="float">119.0</total_gross_unreduced>
    <total_net_unreduced type="float">100.0</total_net_unreduced>
    <quote type="float">1.0000</quote>
    <ultimo type="integer">1</ultimo>
    <label />
    <supply_date_type>SUPPLY_TEXT</supply_date_type>
    <supply_date>[Dates.month]</supply_date>
    <email_sender />
    <email_subject />
    <email_message />
    <email_filename />
    <payment_types />
    <offer_id>777</offer_id>
    <confirmation_id />
</recurring>

cycle kann folgende Werte haben:

  • DAILY
  • WEEKLY
  • MONTHLY
  • QUARTERLY
  • SEMIYEARLY
  • YEARLY

action kann folgende Werte haben:

  • CREATE (erstellen)
  • COMPLETE (abschließen)
  • EMAIL (Versand per E-Mail)

supply_date_type kann folgende Werte haben:

  • SUPPLY_DATE (Leistungsdatum als Datum)
  • DELIVERY_DATE (Lieferdatum als Datum)
  • SUPPLY_TEXT (Leistungsdatum als Freitext)
  • DELIVERY_TEXT (Lieferdatum als Freitext)

Bei den Zahlarten handelt es sich um eine durch Komma getrennte Liste. Die Namen der Zahlarten werden bei den Zahlungen aufgelistet.

Die Abo-Rechnungspositionen können gesondert abgerufen werden.

Abo-Rechnung erstellen

POST /api/recurrings

Erstellt eine neue Abo-Rechnung.

XML-Element Beschreibung Typ Default-Wert Pflichtfeld
client_id ID des Kunden INT ja
address komplette Abo-Rechnungsadresse ALNUM Adresse des Kunden (wird ein leerer Wert übergeben, wird die aktuelle Kunden-Adresse verwendet)
supply_date Liefer-/Leistungsdatum MIXED (DATE/ALNUM)
supply_date_type Typ des Feldes Liefer-/Leistungsdatum ALNUM ("SUPPLY_DATE", "DELIVERY_DATE", "SUPPLY_TEXT", "DELIVERY_TEXT")
due_days Fälligkeit in Tagen INT Fälligkeit in Tagen aus Einstellungen
discount_rate Skonto in Prozent INT Wert aus Einstellungen
discount_days Skontozeitraum in Tagen INT Skontozeitraum in Tagen aus Einstellungen
name Name der Abo-Rechnung ALNUM
label Bezeichnung ALNUM
intro Einleitungstext ALNUM Wert aus Einstellungen
note Anmerkungstext ALNUM Wert aus Einstellungen
currency_code Währung ISO-Währungscode Standard-Währung
reduction Rabatt (Absolut oder als Prozentwert: 10/10%) ALNUM
quote Währungskurs (für Abo-Rechnung in Standard-Währung) FLOAT 1.0000
payment_types akzeptierte Zahlarten (kommasepariert) ALNUM Wert aus den Einstellungen
action Auszuführende Aktion (CREATE, COMPLETE, EMAIL) ALNUM CREATE
cycle Interval (DAILY, WEEKLY, MONTHLY, QUARTERLY, SEMIYEARLY, YEARLY)ALNUM MONTHLY
hour Tageszeit (Stunde)INT 2
start_date Start-Datum DATE aktuelles Datum
end_date End-Datum DATE
next_creation_date Datum für nächste Erstellung DATE start_date
email_sender Absender beim Versand per E-Mail. Wird ein leerer Wert übergeben, wird der Absender aus den Einstellungen verwendet. ALNUM
email_subject Betreff beim Versand per E-Mail. Wird ein leerer Wert übergeben, wird der Betreff aus den Einstellungen verwendet. ALNUM
email_message Nachricht beim Versand per E-Mail. Wird ein leerer Wert übergeben, wird der Nachrichtentext aus den Einstellungen verwendet. ALNUM
email_filename Dateiname der Rechnungs-PDF beim Versand per E-Mail. Wird ein leerer Wert übergeben, wird der Dateiname aus den Einstellungen verwendet.ALNUM
offer_id Die ID des Angebots, wenn die Abo-Rechnung aus einem Angebot erstellt wurde.INT
confirmation_id Die ID der Auftragsbestätigung, wenn die Abo-Rechnung aus einer Auftragsbestätigung erstellt wurde.INT

Die übrigen Eigenschaften der Abo-Rechnung werden automatisch berechnet.
Abo-Rechnungspositionen (recurring-items) können bei der Erstellung direkt mit angegeben werden. Es gelten die gleichen XML-Elemente wie unter Abo-Rechnungsposition erstellen. Nur das XML-Element recurring_id muss nicht mit angegeben werden.

<recurring>
    <client_id>1</client_id>
    <start_date>2011-11-18</start_date>
    <note>Vielen Dank für Ihren Auftrag</note>
    <recurring-items>
        <recurring-item>
            <unit>Stück</unit>
            <unit_price>1.23</unit_price>
            <quantity>1.5</quantity>
            <title>Muster</title>
        </recurring-item>
        <recurring-item>
            <unit>Stunde</unit>
            <unit_price>90</unit_price>
            <quantity>8</quantity>
            <title>Arbeiten</title>
        </recurring-item>
    </recurring-items>
</recurring>
<?xml version="1.0" encoding="UTF-8"?>
<recurring>
    <id type="integer">1234</id>
    <client_id type="integer">1</client_id>
    <created type="datetime">2007-12-13T12:12:00+01:00</created>
    <start_date type="date">2011-11-18</start_date>
    ...
</recurring>

Abo-Rechnung bearbeiten

PUT /api/recurrings/{id}

Abo-Rechnungspositionen können nicht direkt über die Abo-Rechnung bearbeitet werden. Bitte dafür über die entsprechende Ressource gehen.

<recurring>
    <name>Monatsmiete</name>
</recurring>


Abo-Rechnung löschen

DELETE /api/recurrings/{id}

Löscht eine Abo-Rechnung inkl. aller dazugehöriger Abo-Rechnungspositionen.