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:

ParameterBeschreibung
client_idID des Kunden
contact_idID des Kontakts
delivery_note_numberLieferscheinnummer
statusLieferscheinstatus (DRAFT, CREATED). Mehrere Stati können per Komma getrennt werden.
fromNur Lieferscheine ab diesem Datum (Format YYYY-MM-DD)
toNur Lieferscheine bis zu diesem Datum (Format YYYY-MM-DD)
labelFreitextsuche in der Bezeichnung
introFreitextsuche im Einleitungstext
noteFreitextsuche im Anmerkungstext
tagsKommaseparierte Liste der Schlagworte
article_idID eines Artikels, der enthalten ist

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>
    <contact_id type="integer"></contact_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>
    <number_length type="integer">0</number_length>
    <status>CREATED</status>
    <date type="date">2009-10-14</date>
    <address>Billomat GmbH & Co. KG
    Hollertszug 26
    57562 Herdorf
    Deutschland</address>
    <title></title>
    <label>Projekt 123</label>
    <intro>Wir liefern Ihnen folgende Ware:</intro>
    <note>Vielen Dank!</note>
    <customerportal_url>https://mybillomatid.billomat.net/customerportal/deliverynotes/show/entityId/123?hash=123456789aabbcc</customerportal_url>
    <offer_id></offer_id>
    <confirmation_id>7</confirmation_id>
    <invoice_id></invoice_id>
</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-ElementBeschreibungTypDefault-WertPflichtfeld
client_idID des KundenINTja
contact_idID des KontaktsINT
addresskomplette LieferscheinadresseALNUMAdresse des Kunden
number_prePräfixALNUMWert aus Einstellungen
numberlfd. NummerINTnächste freie Nummer
number_lengthMindestlänge der Lieferscheinnummer (wird mit führenden Nullen aufgefüllt)INTWert aus den Einstellungen
dateLieferscheindatumDATEheute
titleDokumentenüberschriftALNUM
labelBezeichnungALNUM
introEinleitungstextALNUMWert aus Einstellungen
noteAnmerkungstextALNUMWert aus Einstellungen
offer_idDie ID des Angebots, wenn der Lieferschein aus einem Angebot erstellt wurde.INT
confirmation_idDie ID der Auftragsbestätigung, wenn der Lieferschein aus einer Auftragsbestätigung erstellt wurde.INT
invoice_idDie ID der Rechnung, wenn der Lieferschein aus einer Rechnung erstellt wurde.INT
free_text_idDie ID des Freitextes zur Belegung von title, label, intro und note.INT
template_idDie ID der Vorlage, mit der der Lieferschein abgeschlossen werden soll.INTID der Standardvorlage

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>
    <number_length type="integer">0</number_length>
    <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.

Lieferschein abschließen

PUT /api/delivery-notes/{id}/complete

Schließt einen Lieferschein im Entwurfsstatus (DRAFT) ab. Dabei wird der Status auf erstellt (CREATED) 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 entweder die am Lieferschein hinterlegte Vorlage oder die eingestellte Standardvorlage benutzt.

<complete>
    <template_id>123</template_id>
</complete>

PDFs eines Lieferscheins aufrufen

GET /api/delivery-notes/{id}/pdf

An dieser Stelle kann außerdem der Parameter format=pdf verwendet werden, um das PDF direkt mit Mimetype „application/pdf“ aufzurufen. Über den optionalen Parameter type=print kann das PDF ohne Hintergrund angefordert werden. Bitte beachte, dass zum Zeitpunkt der Erstellung die Einstellung print_version bei den Settings aktiviert gewesen sein muss.

<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 per E-Mail versenden

POST /api/delivery-notes/{id}/email
XML-ElementBeschreibungTypDefault-WertPflichtfeld
email_template_idID der E-Mail-VorlageINT
fromAbsenderEMAILStandard-E-Mail aus Einstellungen
recipientsEmpfänger der E-Mail. Muss mindestens einen XML-Knoten „to“, „cc“ und/oder „bcc“ mit den gewünschten E-Mail-Adressen enthaltenXML-Knoten/EMAILja
subjectBetreff der E-Mail, kann Platzhalter enthaltenALNUMWert aus der (Standard-)E-Mail-Vorlage
bodyText der Mail, kann Platzhalter enthaltenALNUMWert aus der (Standard-)E-Mail-Vorlage
filenameDateiname der PDF-Lieferschein (ohne .pdf)ALNUMdelivery-note_{id}
attachmentsWeitere Dateianhänge. Kann beliebig viele Dateianhänge über die Knoten „attachment“ mit den Elementen „filename“, „mimetype“ und „base64file“ enthaltenXML-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 per Brief versenden

POST /api/delivery-notes/{id}/mail

Versendet einen Lieferschein per Brief. Dazu muss Pixelletter als Add-On eingerichtet sein.

XML-ElementBeschreibungTypDefault-WertPflichtfeld
colorZeigt an, ob ein Farbdruck beauftragt werden soll.BOOL0
duplexZeigt an, ob Duplexdruck beauftragt werden soll.BOOL1
paper_weightWelche Papierstärke in Gramm soll das Papier haben? Mögliche Werte sind 80 oder 90.INT90
attachmentsPDF Dateien, die zusätzlich mit gedruckt werden sollen. Kann beliebig viele Dateien über die Knoten „attachment“ mit den Elementen „filename“, „mimetype“ und „base64file“ enthalten.XML-Knoten
<mail>
    <color>0</color>
    <duplex>1</duplex>
    <paper_weight>90</paper_weight>
    <attachments>
        <attachment>
            <filename>zeichnung.pdf</filename>
            <mimetype>application/pdf</mimetype>
            <base64file>{base64-kodierte Datei}</base64file>
        </attachment>
    </attachments>
</mail>