Rechnungsentwurf erzeugen
bb_invoices_create_draftCreate a draft invoice in BuchhaltungsButler without a final number or PDF. Use it for internal coordination, like an offer awaiting approval, before the final invoice is generated.
Instructions
Erzeugt in BuchhaltungsButler einen Rechnungsentwurf: ohne endgültige Nummer, ohne PDF, aber als sichtbares Objekt in der Rechnungsstellung des Mandanten. Zu nehmen, solange der Vorgang noch abgestimmt wird, etwa ein Angebot zur internen Durchsicht; bb_invoices_create erzeugt die endgültige, nummerierte Rechnung, bb_invoices_create_einvoice die E-Rechnung. Die Antwort trägt ausschließlich success und message: keine id_by_customer, keine invoicenumber, und die API kennt keinen Pfad, den Entwurf später zu lesen. Die Felder invoicenumber, due_days und payment_reference führt dieser Endpunkt nicht. Schreibt in die echten Buchhaltungsdaten von BuchhaltungsButler. Die API bietet keinen Endpunkt, das rückgängig zu machen.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | Postleitzahl, zum Beispiel "28195". | |
| city | No | Ort, zum Beispiel Bremen. | |
| date | Yes | Rechnungsdatum als YYYY-MM-DD, zum Beispiel 2026-04-26. Ein leerer String wird abgelehnt; das Feld stattdessen weglassen. Ob der Wert im Entwurf erhalten bleibt, ist nicht verifiziert. | |
| No | E-Mail-Adresse, zum Beispiel rechnung@beispiel.de. | ||
| items | Yes | Die Positionen des Entwurfs, je Eintrag eine Zeile des späteren Dokuments. item_amount ist die Menge und nicht der Betrag; der Preis einer Einheit steht in item_single_price. Die BuchhaltungsButler-API nimmt diese Werte als parallele Arrays entgegen (item_name, item_amount, item_unit, item_vat, item_single_price, item_description); dieses Werkzeug nimmt eine Positionsliste und rechnet sie um, wodurch die Arrays zwingend gleich lang sind. | |
| street | No | Straße und Hausnummer, zum Beispiel Hauptstraße 12. | |
| country | No | Land des Empfängers, deutscher Ländername oder ISO-Code, zum Beispiel DK. | |
| language | No | Sprache der festen Beschriftungen: 'de_DE' oder 'en_US', ohne Angabe 'de_DE'. Positionstexte werden nicht übersetzt. | |
| company_name | Yes | Firmenname des Empfängers, wie er auf dem Dokument erscheint. | |
| invoice_type | Yes | Art des Dokuments: 'invoice' Rechnung, 'credit' Gutschrift, 'offer' Angebot. Heißt in der API type, hier umbenannt: type ist dort siebenfach belegt. | |
| discount_type | No | Rabatt auf die gesamte Rechnung: 'percent' Prozent, 'EUR' Euro. Positionsrabatte kennt die API nicht; gemeinsam mit discount_value setzen. | |
| show_bankdata | No | true zeigt die im Mandanten hinterlegte Bankverbindung auf dem Dokument. Die Bankdaten selbst stammen aus den Mandanteneinstellungen. | |
| correspondence | No | Anschreiben an den Empfänger, erscheint vor den Positionen. | |
| date_of_supply | No | Liefer- oder Leistungsdatum, freier Text oder YYYY-MM-DD. Nur im Format YYYY-MM-DD wird der Wert zusätzlich date_delivery des entstehenden Belegs. Ein Datum nach date verwirft BuchhaltungsButler wegen der DATEV-Regel stillschweigend. | |
| discount_value | No | Höhe des Rabatts mit Dezimalpunkt, zum Beispiel 10 oder 49.50. Die Bedeutung entscheidet discount_type. | |
| customer_number | No | Kunden- oder Lieferantennummer des Mandanten. | |
| final_provisions | No | Schlusstext des Dokuments, erscheint nach den Positionen. | |
| show_contactdata | No | true zeigt die im Mandanten hinterlegten Kontaktdaten auf dem Dokument. | |
| show_prices_type | Yes | Preisdarstellung: 'net' Nettopreise, 'gross' Bruttopreise. Danach werden die Werte in item_single_price gelesen. | |
| payment_conditions | No | Zahlungsbedingungen als Text auf dem Dokument. Ein Fälligkeitsdatum entsteht daraus nicht; das Feld due_days führt dieser Endpunkt nicht. | |
| recurring_interval | No | Rhythmus eines Rechnungsplans: 'weekly', 'monthly', 'quarterly' oder 'yearly'. Es entsteht ein dauerhafter Plan, der selbsttätig weitere Rechnungen erzeugt und über die API weder lesbar noch zu beenden ist. | |
| contact_person_name | No | Name der Ansprechperson, zum Beispiel Maria Schmidt. | |
| recurring_date_next | No | Nächster Termin des Rechnungsplans als YYYY-MM-DD. Ein leerer String wird abgelehnt; das Feld stattdessen weglassen. Pflicht, sobald recurring_interval gesetzt ist. | |
| additional_addressline | No | Zusätzliche Adresszeile, zum Beispiel Gebäude B. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| created | No | ||
| message | No | ||
| success | Yes | ||
| endpoint | No | ||
| reversal | No | ||
| _contract_warnings | No | ||
| fields_not_returned | No |