Alle Lieferscheine auflisten
GET /api/delivery-notes
<?xml version="1.0" encoding="UTF-8"?> <delivery-notes type="array" page="1" per_page="100" total="2"> <delivery-note> ... </delivery-note> <delivery-note> ... </delivery-note> </delivery-notes>
Über Parameter kann gefiltert werden:
GET /api/delivery-notes?delivery_note_number=LS123
Listet alle Lieferscheine auf, die “LS123” in der Lieferscheinnummer haben. Groß– und Kleinschreibung wird ignoriert.
Folgende Filter-Parameter stehen zur Verfügung:
| Parameter | Beschreibung |
|---|---|
| client_id | ID des Kunden |
| delivery_note_number | Lieferscheinnummer |
| status | Lieferscheinstatus (DRAFT, CREATED). Mehrere Stati können per Komma getrennt werden. |
| from | Nur Lieferscheine ab diesem Datum (Format YYYY-MM-DD) |
| to | Nur Lieferscheine bis zu diesem Datum (Format YYYY-MM-DD) |
| label | Freitextsuche in der Bezeichnung |
| intro | Freitextsuche im Einleitungstext |
| note | Freitextsuche im Anmerkungstext |
Lieferscheine aggregiert auflisten
GET /api/delivery-notes?group_by=client
Lieferscheine können auch gruppiert abgerufen werden. Obiges Beispiel gruppiert alle Lieferscheine nach Kunde.
Folgende Werte stehen für den Parameter group_by zur Verfügung:
| Wert | Beschreibung |
|---|---|
| client | Kunde |
| status | Lieferscheinstatus |
| day | Tag |
| week | Woche (beginnt mit Montag) |
| month | Monat |
| year | Jahr |
Einzelnen Lieferschein aufrufen
GET /api/delivery-notes/{id}
<?xml version="1.0" encoding="UTF-8"?>
<delivery-note>
<id type="integer">1</id>
<client_id type="integer">123</client_id>
<created type="datetime">2007-12-13T12:12:00+01:00</created>
<delivery_note_number>GS123</delivery_note_number>
<number type="integer">123</number>
<number_pre>LS</number_pre>
<status>CREATED</status>
<date type="date">2009-10-14</date>
<address>Billomat GmbH & Co. KG
Hollertszug 26
57562 Herdorf
Deutschland</address>
<label>Projekt 123</label>
<intro>Wir liefern Ihnen folgende Ware:</intro>
<note>Vielen Dank!</note>
</delivery-note>
status kann folgende Werte haben:
- DRAFT (Entwurf)
- CREATED (erstellt)
Die Lieferscheinpositionen und Lieferscheinkommentare können gesondert abgerufen werden.
Lieferschein erstellen
POST /api/delivery-notes
| XML-Element | Beschreibung | Typ | Default-Wert | Pflichtfeld |
|---|---|---|---|---|
| client_id | ID des Kunden | INT | ja | |
| address | komplette Lieferscheinadresse | ALNUM | Adresse des Kunden | |
| number_pre | Präfix | ALNUM | Wert aus Einstellungen | |
| number | lfd. Nummer | INT | nächste freie Nummer | |
| number_length | Mindestlänge der Lieferscheinnummer (wird mit führenden Nullen aufgefüllt) | INT | Wert aus den Einstellungen | |
| date | Lieferscheindatum | DATE | heute | |
| label | Bezeichnung | ALNUM | ||
| intro | Einleitungstext | ALNUM | Wert aus Einstellungen | |
| note | Anmerkungstext | ALNUM | Wert aus Einstellungen |
status ist bei der Erstellung immer DRAFT.
Die übrigen Eigenschaften des Lieferscheins werden automatisch berechnet.
Lieferscheinpositionen (delivery-note-items) können bei der Erstellung direkt mit angegeben werden. Es gelten die gleichen XML-Elemente wie unter Lieferscheinposition erstellen. Nur das XML-Element delivery_note_id muss nicht mit angegeben werden.
<delivery-note> <client_id>1</client_id> <date>2009-11-18</date> <note>Wir schreiben Ihnen gut:</note> <delivery-note-items> <delivery-note-item> <unit>Stück</unit> <quantity>1.5</quantity> <title>Muster</title> </delivery-note-item> <delivery-note-item> <unit>Stunde</unit> <quantity>8</quantity> <title>Arbeiten</title> </delivery-note-item> </delivery-note-items> </delivery-note>
<?xml version="1.0" encoding="UTF-8"?> <delivery-note> <id type="integer">1234</id> <client_id type="integer">1</client_id> <created type="datetime">2007-12-13T12:12:00+01:00</created> <delivery_note_number>LS124</delivery_note_number> <number type="integer">124</number> <number_pre>LS</number_pre> <date type="date">2009-11-18</date> ... </delivery-note>
Lieferschein bearbeiten
PUT /api/delivery-notes/{id}
Ein Lieferschein kann grundsätzlich nur im Entwurfs-Status (DRAFT) bearbeitet werden.
Lieferscheinepositionen und Kommentare können nicht direkt über den Lieferschein bearbeitet werden. Bitte dafür über die entsprechende Ressource gehen.
<delivery-note> <date>2009-10-13</date> </delivery-note>
Lieferschein löschen
DELETE /api/delivery-notes/{id}
Löscht einen Lieferschein inkl. aller dazugehöriger Dokumente (PDFs), Lieferscheinpositionen und Kommentare.
PDFs eines Lieferscheins aufrufen
GET /api/delivery-notes/{id}/pdf
An dieser Stelle kann 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>
<delivery_note_id type="integer">240</delivery_note_id>
<filename>delivery-note_123.pdf</filename>
<mimetype>application/pdf</mimetype>
<filesize>70137</filesize>
<base64file>{base64-kodiertes PDF}</base64file>
</pdf>
Lieferschein abschließen
PUT /api/delivery-notes/{id}/complete
Schließt einen Lieferschein im Entwurfsstatus (DRAFT) ab. Dabei wird der Status auf offen (OPEN) gesetzt, ein PDF erzeugt und im Dateisystem abgelegt.
Welche Vorlage für die PDF-Erzeugung benutzt wird, steuert der optionale Parameter template_id.
Wird dieser Parameter nicht angegeben, wird die eingestellte Standard-Vorlage benutzt.
<complete> <template_id>123</template_id> </complete>
Lieferschein per E-Mail versenden
POST /api/delivery-notes/{id}/email
| XML-Element | Beschreibung | Typ | Default-Wert | Pflichtfeld |
|---|---|---|---|---|
| from | Absender | E-Mail des eingeloggten Benutzers | ||
| recipients | Empfänger der E-Mail. Muss mindestens einen XML-Knoten “to”, “cc” und/oder “bcc” mit den gewünschten E-Mail-Adressen enthalten | XML-Knoten/EMAIL | ja | |
| subject | Betreff der E-Mail, kann Platzhalter enthalten | ALNUM | Wert aus Einstellungen | |
| body | Text der Mail, kann Platzhalter enthalten | ALNUM | Wert aus Einstellungen | |
| filename | Dateiname der PDF-Lieferschein (ohne .pdf) | ALNUM | delivery-note_{id} | |
| attachments | Weitere Dateianhänge. Kann beliebig viele Dateianhänge über die Knoten “attachment” mit den Elementen “filename”, “mimetype” und “base64file” enthalten | XML-Knoten |
<email>
<from>info@billomat.com</from>
<recipients>
<to>info@billomat.com</to>
<cc>mail@example.com</cc>
</recipients>
<subject>Ihr Lieferschein</subject>
<body>Sehr geehrte Damen und Herren, ....</body>
<filename>Lieferschein</filename>
<attachments>
<attachment>
<filename>zeichnung.pdf</filename>
<mimetype>application/pdf</mimetype>
<base64file>{base64-kodierte Datei}</base64file>
</attachment>
</attachments>
</email>
Lieferschein stornieren
PUT /api/delivery-notes/{id}/cancel
Deutsch »
English