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>
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 |
contact_id | ID des Kontakts |
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, YEARLY). |
label | Freitextsuche in der Bezeichnung |
intro | Freitextsuche im Einleitungstext |
note | Freitextsuche im Anmerkungstext |
tags | Kommaseparierte Liste der Schlagworte |
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> <contact_id type="integer"> <template_id type="integer"> <email_template_id type="integer"> <currency_code>EUR</currency_code> <name>Monatsmiete</name> <title>Rechnung</title> <cycle_number>1</cycle_number> <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></email_template_id></template_id></contact_id></recurring> <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> <net_gross>NET</net_gross> <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> <email_bcc> <letter_color>0</letter_color> <letter_duplex>1</letter_duplex> <letter_paper_weight>90</letter_paper_weight> <payment_types> <offer_id>777</offer_id> <confirmation_id>
cycle kann folgende Werte haben:
– DAILY
– WEEKLY
– MONTHLY
– YEARLY
action kann folgende Werte haben:
– CREATE (erstellen)
– COMPLETE (abschließen)
– EMAIL (Versand per E-Mail)
– MAIL (Versand per Post)
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)
net_gross kann folgende Werte haben:
– NET (Netto-Preise)
– GROSS (Brutto-Preise)
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.
POST /api/recurrings
Erstellt eine neue Abo-Rechnung.
XML-Element | Beschreibung | Typ | Default-Wert | Pflichtfeld |
---|---|---|---|---|
client_id | ID des Kunden | INT | ja | |
contact_id | ID des Kontakts | INT | ||
template_id | ID der Vorlage | INT | ||
email_template_id | ID der E-Mail-Vorlage | INT | ||
title | Dokumentenüberschrift | ALNUM | ||
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 | FLOAT | 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 | ||
net_gross | Preisbasis (Brutto- oder Netto-Preise) | ALNUM („NET“, „GROSS“) | Wert aus den Einstellungen | |
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, MAIL) | ALNUM | CREATE | |
cycle_number | Anzahl des Intervals. Zum Beispiel 3 für „alle 3 Monate“ | INT | 1 | |
cycle | Interval (DAILY, WEEKLY, MONTHLY, YEARLY) | ALNUM | MONTHLY | |
hour | Tageszeit (Stunde) | INT | 2 | |
start_date | Start-Datum | DATE | morgiges 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 | ||
email_bcc | Gibt an, ob der Absender ins BCC gesetzt werden soll. | BOOL | ||
letter_color | Gibt an, ob ein Farbdruck beauftragt werden soll. | BOOL | 0 | |
letter_duplex | Gibt an, ob Duplexdruck beauftragt werden soll. | BOOL | 1 | |
letter_paper_weight | Welche Papierstärke in Gramm soll das Papier haben? Mögliche Werte sind 80 oder 90. | INT | 90 | |
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 | ||
free_text_id | Die ID des Freitextes zur Belegung von title, label, intro und note. | 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>
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>
DELETE /api/recurrings/{id}
Löscht eine Abo-Rechnung inkl. aller dazugehöriger Abo-Rechnungspositionen.
PUT /api/recurrings/{id}/stop
Setzt das Feld „next_creation_date“ auf null und stoppt somit die Erzeugung weiterer Rechnungen.