Rechnung oder Angebot duplizieren
Benötigte Berechtigung:invoices:draft(Rechnungsentwürfe verwalten)
Echte Wirkung
/api/draft/{id}/copyKein Testversand aus der Dokumentation: Dieser Aufruf ist nicht als rein lesend gekennzeichnet. Nutze das Codebeispiel.
Legt wie „Duplizieren“ in der App einen neuen Entwurf derselben Art an, mit Käufer, Positionen und Texten des Originals und dem heutigen Datum. Eine Rechnung behält die Zahlungsfrist des Originals in Tagen; ohne Fälligkeit im Original gilt das Zahlungsziel der Firma, ohne Zahlungsziel 14 Tage. Ihr Leistungszeitraum beginnt heute, ein Ende vor heute entfällt. Skonto bleibt nur, wenn es zur neuen Fälligkeit passt. Ein Angebot gilt so viele Tage wie das Original, ab heute gezählt. Das alte Lieferdatum entfällt. Auftragsbestätigungen, Stornorechnungen und Rechnungskorrekturen lassen sich nicht duplizieren (400). Das Original bleibt unverändert; nichts wird ausgestellt, gebucht oder versendet.
Benötigt einen Schlüssel mit der Berechtigung invoices:draft.
AuthentifizierungBearer <bm_…>Empfohlen: Authorization: Bearer bm_…. Der Schlüssel wird nur einmal angezeigt; nie in URLs, Logs oder Frontend-Code ablegen.
id*stringID des Objekts in dieser Firma (UUID).
uuidIdempotency-Key*stringStabiler Schlüssel für genau diese Änderung: 1–128 druckbare ASCII-Zeichen ohne Leerzeichen. Bei Wiederholungen denselben Schlüssel und unveränderten Inhalt senden; das Ergebnis wird nicht nochmals erzeugt.
^[!-~]+$1 <= length <= 128Erfolg.
application/json- response
Offener oder abgeschlossener Rechnungsentwurf mit Version und Referenz zum ausgestellten Beleg.
billing?Nur getDraft eines ausgestellten Angebots oder einer ausgestellten Auftragsbestätigung: Abrechnung des Auftrags mit Abschlägen, abschließender Rechnung und Summen.
billingSummary?Nur filterDrafts, an ausgestelltem Angebot und ausgestellter Auftragsbestätigung: Kurzform von billing.
companyId?stringID der Firma.
uuidcreatedAt?stringAnlage in bimetrics.
date-timecreatorUserCompanyId?stringID der erstellenden Mitgliedschaft.
uuiddeductedBy?Nur ausgestellter Abschlag: die ausgestellte, nicht stornierte Schlussrechnung, die ihn abzieht.
deletedAt?|Gilt als gelöscht seit diesem Zeitpunkt; null, solange nicht gelöscht. Gesetzt ist es nur in der Antwort von deleteDraft und deleteOrderConfirmationDraft; gelöschte Entwürfe liefert keine andere Route, auch filterDrafts mit includeDeleted nicht.
date-timedocumentId?|ID des ausgestellten Rechnungsbelegs; null bei offenem Entwurf.
uuiddocumentMatched?booleanDer ausgestellte Beleg ist bereits einer Zuordnung zugeordnet.
downPaymentOrdinal?integerNur Abschlag: seine Ordnungszahl im Auftrag, wie ordinal in billing.
draftBody?Gespeicherter Rechnungsinhalt.
externalRef?stringExterne Bestellreferenz.
finalTotal?integerBruttosumme des ausgestellten Belegs in Cent.
id?stringID des Entwurfs.
uuidinvoiceCorrection?Quellgebundener Grund und Bruttokorrekturbeträge je Position.
invoiceNumber?stringArbeitsnummer; nach Abschluss endgültige Rechnungsnummer.
invoiceRole?stringRolle der Rechnung im Auftrag: down_payment (Abschlag) oder final (Schlussrechnung), fest ab dem Ableiten; fehlt bei allen anderen Entwürfen. Filterbar in filterDrafts.
"down_payment""final"kind?stringDokumentart invoice, proposal, order_confirmation, cancellation, invoice_correction oder correction_reversal.
legacyProposalTotal?booleanAngebot vor dem 21.09.2026 ausgestellt: Summe je Zeile gerundet wie sein PDF.
orderConfirmationId?|Ausgestellte Auftragsbestätigung; null bei offenem Entwurf.
uuidoriginalInvoiceId?|Originalentwurf für eine Stornorechnung; sonst null.
uuidoriginalTotal?integerBruttosumme des Storno-Originals in Cent.
payment?Zahlstand einer ausgestellten Rechnung (Typ 380); fehlt bei allen anderen Entwürfen.
proposal?Ergebnis eines ausgestellten Angebots; fehlt bei allen anderen Entwürfen.
reversesCorrectionDocumentId?stringAusgestellte Korrektur, die dieser Gegenbeleg aufhebt.
uuidsalesProposalId?|ID eines erstellten Angebots, falls vorhanden.
uuidsettledByFinalDraftId?stringNur Storno oder Korrektur eines Abschlags: die Schlussrechnung, deren Ausstellen diesen Beleg erzeugt hat.
uuidsource?stringZugang bei Anlage: web, api, mcp oder series für erzeugte Serienrechnungen.
sourceInvoiceDocumentId?stringUnverändertes Original einer Rechnungskorrektur.
uuidsourceOrderConfirmationId?|Ausdrücklich gewählte finale AB als Rechnungsquelle; sonst null.
uuidsourceSalesProposalId?|Ursprüngliches Angebot, falls vorhanden.
uuidtaxCase?Beim Abschluss eingefrorener Steuerfall.
typeCode?stringEN-16931-Dokumenttyp: Rechnung 380, Rechnungskorrektur 381, Vollstorno oder Korrektur-Gegenbeleg 384.
updatedAt?stringLetzte Änderung.
date-timecurl --fail-with-body "https://app.bimetrics.de/api/draft/497f6eca-6276-4993-bfeb-53cbbbba6f08/copy" -X POST \ -H "Authorization: Bearer $BIMETRICS_API_KEY" \ -H "Idempotency-Key: rechnung-2026-001"{ "companyId": "9c388e1f-04a6-4770-80bd-66cd98dd00d5", "createdAt": "2026-09-01T08:00:00Z", "creatorUserCompanyId": "53cd10a9-c864-4dc3-a777-9860d59efe6c", "deletedAt": null, "documentId": null, "draftBody": { "buyer": { "address": { "city": "Hamburg", "countryId": "DE", "line1": "Am Hafen 12", "postcode": "20457" }, "contactId": "b17e8812-eae4-49b6-b5dc-30510635cb07", "customerNumber": 1004, "email": "", "name": "Brauhaus Elbwiese GmbH", "vatId": "" }, "dueDate": { "day": 15, "month": 9, "year": 2026 }, "issueDate": { "day": 1, "month": 9, "year": 2026 }, "items": [ { "description": "Gestaltung einer Geschäftsausstattung", "discount": "0", "name": "Gestaltung", "position": "1", "quantity": "1", "taxRate": "19", "unit": "C62", "unitPrice": "100" } ], "notes": "", "performancePeriodFrom": { "day": 1, "month": 9, "year": 2026 }, "priceType": "net", "remark": "", "showQRCode": false, "strict": false, "taxRateReason": "none", "validUntil": null }, "id": "821c3664-640a-4e10-b120-a4ff713532f8", "invoiceNumber": "Entwurf 1042", "kind": "invoice", "orderConfirmationId": null, "originalInvoiceId": null, "salesProposalId": null, "source": "api", "sourceOrderConfirmationId": null, "sourceSalesProposalId": null, "typeCode": "380", "updatedAt": "2026-09-01T08:01:02.123456Z"}Vertriebsdokument als PDF laden GET
Liefert das unveränderte gespeicherte PDF einer finalisierten Rechnung, Rechnungskorrektur, eines Gegenbelegs, Angebots oder einer Auftragsbestätigung. Offene Entwürfe werden als PDF mit Entwurfskennzeichnung gerendert. Kein Versand. Benötigt einen Schlüssel mit der Berechtigung `sales:read` oder `read`.
Rechnungskorrektur als Entwurf erstellen POST
Die Quell-ID ist der ursprüngliche Rechnungsentwurf; expectedUpdatedAt stammt aus der Kapazitätsantwort. Pro Quellposition positiven grossAmountMinor in Cent und einen Grund angeben. Steuer, Preise, Empfänger und negativer Beleginhalt werden aus dem unveränderten Original abgeleitet. Keine freie Gutschrift und noch keine Buchung. layoutId am besten weglassen, dann übernimmt die Korrektur das Layout, das gerade gilt. Benötigt einen Schlüssel mit der Berechtigung `invoices:draft`.