Endpunkte
Alle Endpunkte der bimetrics API mit Parametern, Antworten und Playground.
Die Referenz entsteht aus der OpenAPI-Beschreibung des Backends. Alle Pfade beginnen mit https://app.bimetrics.de/api/, authentifiziert wird mit Authorization: Bearer bm_… (siehe Authentifizierung).
Belege
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
POST /api/document/ | Beleg hochladen | upload |
POST /api/document/bulk/category | Kategorie für mehrere Belege setzen | documents:write |
POST /api/document/bulk/cost-center | Kostenstelle für mehrere Belege setzen | documents:write |
POST /api/document/bulk/counterparty | Kontakt für mehrere Belege setzen | documents:write |
POST /api/document/bulk/kind | Belegtyp für mehrere Belege setzen | documents:write |
GET /api/document/duplicates | Duplikate lesen | read |
POST /api/document/duplicates/delete | Duplikate entfernen | documents:delete |
POST /api/document/filter | Belege suchen | read |
GET /api/document/{id} | Beleg lesen | read |
PATCH /api/document/{id} | Belegdaten berichtigen | documents:write |
DELETE /api/document/{id} | Beleg löschen | documents:delete |
GET /api/document/{id}/content | Originaldatei eines Belegs laden | read |
GET /api/document/{id}/delete-preview | Löschen eines Belegs prüfen | read |
POST /api/document/{id}/reading/retry | Beleg erneut lesen | upload |
Kontakte
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/address/postal | Ort aus PLZ, PLZ aus Ort | contacts:read |
POST /api/contact/ | Kontakt anlegen | contacts:write |
POST /api/contact/check | Kontaktangaben prüfen | contacts:read |
POST /api/contact/filter | Kontakte suchen | contacts:read |
GET /api/contact/{id} | Kontakt lesen | contacts:read |
PUT /api/contact/{id} | Kontakt ändern | contacts:write |
POST /api/contact/{id}/merge | Kontakt zusammenführen | documents:write |
GET /api/contact/{id}/numbers | USt-IdNr. und IBAN mit den Belegen abgleichen | contacts:read |
POST /api/contact/{id}/numbers/confirm | Nummer des Kontakts bestätigen | contacts:write |
GET /api/contact/{id}/similar | Ähnliche Kontakte lesen | contacts:read |
Bankkonten
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/bankaccount/connections | Bankzugänge lesen | read |
POST /api/bankaccount/filter | Bankkonten suchen | read |
GET /api/bankaccount/{id} | Bankkonto lesen | read |
Umsätze
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
POST /api/banktransaction/filter | Umsätze suchen | read |
GET /api/banktransaction/{id} | Umsatz lesen | read |
Buchhaltung
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/accounting/accounts/ | Bebuchte Konten auflisten | read |
GET /api/accounting/accounts/labels/ | Kontenbezeichnungen auflisten | read |
POST /api/accounting/booking/filter | Buchungen suchen | read |
GET /api/accounting/booking/{id} | Buchung lesen | read |
GET /api/category/ | Kategorien auflisten | read |
GET /api/export/datev/addenda | Nachträge in schon exportierten Monaten | read |
GET /api/export/datev/cash-basis | Zahlungen vor dem DATEV-Export prüfen (Ist-Versteuerung) | read |
Tarif
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/entitlement/ | Tarif und Kontingent lesen | read |
Zu erledigen
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/home/tasks | „Zu erledigen“ lesen | read |
Layouts
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/layouts | Layouts lesen | sales:read |
POST /api/layouts | Layout anlegen | layout:write |
PUT /api/layouts/assignments | Layouts zuweisen | layout:write |
GET /api/layouts/catalog | Erlaubte Werte lesen | sales:read |
POST /api/layouts/preview | Vorschau rendern | sales:read |
POST /api/layouts/thumbnails | Miniaturen rendern | sales:read |
POST /api/layouts/versions/{id}/restore | Version wiederherstellen | layout:write |
GET /api/layouts/{id} | Layout lesen | sales:read |
PATCH /api/layouts/{id} | Layout ändern | layout:write |
POST /api/layouts/{id}/archive | Layout archivieren | layout:write |
POST /api/layouts/{id}/duplicate | Layout kopieren | layout:write |
POST /api/layouts/{id}/unarchive | Layout zurückholen | layout:write |
GET /api/layouts/{id}/versions | Versionen lesen | sales:read |
Logo
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
DELETE /api/company/logo | Rechnungslogo löschen | layout:write |
GET /api/company/logos | Logo lesen | read |
PUT /api/company/logos/app | App-Zeichen hochladen | layout:write |
DELETE /api/company/logos/app | App-Zeichen löschen | layout:write |
POST /api/company/logos/fix/{id}/apply | Vorschlag übernehmen | layout:write |
POST /api/company/logos/fix/{id}/dismiss | Vorschlag verwerfen | layout:write |
PUT /api/company/logos/invoice | Rechnungslogo hochladen | layout:write |
POST /api/company/logos/invoice/fix | „Mach es passend“ | layout:write |
POST /api/company/logos/invoice/original | Original zurückholen | layout:write |
Versand per E-Mail
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
POST /api/document-mail/attachments | Datei für eine Mail hochladen | mail:send |
POST /api/document-mail/preview | Mail vorbereiten | sales:read |
POST /api/document-mail/send | Per E-Mail senden | mail:send |
Vorlagen und Dauerbuchungen
Belegpostfach
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/email/inbox/ | Adresse des Belegpostfachs lesen | inbox:read |
POST /api/email/inbox/item/ | Mails suchen | inbox:read |
GET /api/email/inbox/item/{id} | Mail lesen | inbox:read |
POST /api/email/inbox/item/{id}/archive | Mail unter „Erledigt“ ablegen | inbox:write |
POST /api/email/inbox/item/{id}/attachment/{aid}/import | Anhang als Beleg übernehmen | inbox:write |
GET /api/email/inbox/item/{id}/attachment/{aid}/preview | Seite eines Anhangs ansehen | inbox:read |
POST /api/email/inbox/item/{id}/unarchive | Mail zurückholen | inbox:write |
Kontoauszüge
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/bankstatement/accounts | Konten ohne Bankverbindung lesen | read |
POST /api/bankstatement/apply | Kontoauszug übernehmen | statements:import |
GET /api/bankstatement/config | Grenzen lesen | read |
GET /api/bankstatement/datev-check | Importe vor dem ersten DATEV-Export prüfen | read |
GET /api/bankstatement/imports | Laufende Importe lesen | read |
GET /api/bankstatement/imports/{id} | Import lesen | read |
GET /api/bankstatement/imports/{id}/file | Originaldatei eines Imports laden | read |
POST /api/bankstatement/imports/{id}/retry | Import wiederholen | statements:import |
POST /api/bankstatement/inspect | Kontoauszug ansehen | statements:import |
POST /api/bankstatement/preview | Vorschau eines Kontoauszugs | statements:import |
POST /api/bankstatement/unread | Nicht gelesene Zeilen laden | statements:import |
POST /api/bankstatement/upload | Kontoauszug hochladen | statements:import |
Kostenstellen
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/cost-centers | Kostenstellen lesen | read |
POST /api/cost-centers | Kostenstelle oder Verteilung anlegen | company:write |
PUT /api/cost-centers/{id} | Kostenstelle oder Verteilung ändern | company:write |
POST /api/cost-centers/{id}/archive | Kostenstelle oder Verteilung archivieren | company:write |
POST /api/cost-centers/{id}/unarchive | Kostenstelle oder Verteilung zurückholen | company:write |
Firma
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/company/ | Firma lesen | read |
PATCH /api/company/ | Firmendaten ändern | company:write |
Forderungen und Mahnungen
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/receivable/ | Forderungsstände lesen | sales:read |
GET /api/receivable/{id} | Aktuellen Forderungsstand einer Rechnung lesen | sales:read |
PUT /api/receivable/{id}/reminder-hold | Mahnsperre setzen | invoices:draft |
DELETE /api/receivable/{id}/reminder-hold | Mahnsperre aufheben | invoices:draft |
GET /api/receivable/{id}/reminder-preview | Nächste Mahnung einer Rechnung als PDF ansehen | sales:read |
POST /api/receivable/{id}/retention-release | Sicherheitseinbehalt jetzt fällig stellen | invoices:draft |
GET /api/reminder/ | Mahnungen und Entwürfe suchen | sales:read |
POST /api/reminder/ | Mahnungsentwurf erstellen | invoices:draft |
POST /api/reminder/bulk | Mehrere Rechnungen auf einmal mahnen | invoices:draft |
GET /api/reminder/pdfs | Mehrere Mahnungs-PDFs als ZIP laden | sales:read |
GET /api/reminder/settings | Frist, Text und Gebühren der Mahnstufen lesen | sales:read |
PUT /api/reminder/settings/charges | Verzugszinsen und Pauschale ein- oder ausschalten | invoices:draft |
PUT /api/reminder/settings/{level} | Frist, Text und Mahngebühr einer Mahnstufe ändern | invoices:draft |
POST /api/reminder/settings/{level}/preview | Mahnstufe als PDF ansehen | sales:read |
GET /api/reminder/{id} | Mahnung lesen | sales:read |
PUT /api/reminder/{id} | Offenen Mahnungsentwurf ändern | invoices:draft |
DELETE /api/reminder/{id} | Offenen Mahnungsentwurf löschen | invoices:draft |
GET /api/reminder/{id}/content | Mahnungs-PDF laden | sales:read |
POST /api/reminder/{id}/external-send | Extern erfolgten Versand dokumentieren | invoices:draft |
POST /api/reminder/{id}/issue | Geprüfte Mahnung ausstellen | invoices:draft |
POST /api/reminder/{id}/preview | Mahnungsentwurf prüfen oder Original ansehen | sales:read |
POST /api/reminder/{id}/withdraw | Ausgestellte Mahnung zurückziehen | invoices:draft |
Wiederkehrende Rechnungen
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
GET /api/recurringinvoice/ | Serienvorlagen lesen | sales:read |
POST /api/recurringinvoice/ | Serienvorlage anlegen | invoices:draft |
GET /api/recurringinvoice/{id} | Serienvorlage und Periodenverlauf lesen | sales:read |
PUT /api/recurringinvoice/{id} | Serienvorlage ändern | invoices:draft |
POST /api/recurringinvoice/{id}/activate | Serienvorlage aktivieren | invoices:draft |
POST /api/recurringinvoice/{id}/end | Serienvorlage dauerhaft beenden | invoices:draft |
GET /api/recurringinvoice/{id}/next-dates | Nächste Serientermine prüfen | sales:read |
POST /api/recurringinvoice/{id}/pause | Serienvorlage pausieren | invoices:draft |
POST /api/recurringinvoice/{id}/prepare | Genau eine Rechnungsperiode erzeugen | invoices:draft |
Ausgangsrechnungen
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
POST /api/draft/ | Rechnungs- oder Angebotsentwurf anlegen | invoices:draft |
POST /api/draft/filter | Rechnungsentwürfe suchen | sales:read |
POST /api/draft/list/count | Rechnungen oder Angebote je Reiter zählen | sales:read |
GET /api/draft/{id} | Rechnungsentwurf lesen | sales:read |
PUT /api/draft/{id} | Rechnungs- oder AB-Entwurf ändern | invoices:draft |
DELETE /api/draft/{id} | Offenen Entwurf löschen | invoices:draft |
POST /api/draft/{id}/cancel | Ausgangsrechnung vollständig stornieren | invoices:finalize |
GET /api/draft/{id}/content | Vertriebsdokument als PDF laden | sales:read |
POST /api/draft/{id}/copy | Rechnung oder Angebot duplizieren | invoices:draft |
POST /api/draft/{id}/correction | Rechnungskorrektur als Entwurf erstellen | invoices:draft |
PUT /api/draft/{id}/correction | Korrekturentwurf ändern | invoices:draft |
GET /api/draft/{id}/correction-capacity | Verfügbare Rechnungskorrektur je Position lesen | sales:read |
POST /api/draft/{id}/correction/cancel | Ausgestellte Rechnungskorrektur vollständig aufheben | invoices:finalize |
POST /api/draft/{id}/derive | Folgedokument aus gewählter Quelle erstellen | invoices:draft |
GET /api/draft/{id}/einvoice-xml | Ausgestellte E-Rechnung laden | sales:read |
PUT /api/draft/{id}/finalize | Rechnung, Korrektur, Angebot oder Auftragsbestätigung ausstellen | invoices:finalize |
POST /api/draft/{id}/proposal-outcome | Angebot annehmen, ablehnen oder zurücksetzen | invoices:draft |
POST /api/draft/{id}/tax-case | Gespeicherten Rechnungsentwurf prüfen | invoices:draft |
DELETE /api/orderconfirmation/draft/{id} | Offenen AB-Entwurf verwerfen | invoices:draft |
GET /api/orderconfirmation/{id} | Ausgestellte Auftragsbestätigung lesen | sales:read |
GET /api/tax-case/exempt-reasons | Befreiungsgründe auflisten | sales:read |
Zuordnungen
| Endpunkt | Beschreibung | Berechtigung |
|---|---|---|
POST /api/document/collection/series/filter | Buchungsvorlagen suchen | read |
POST /api/match/ | Belege und Umsätze zuordnen | matching:write |
POST /api/match/correction-settlement/offset | Korrekturguthaben mit anderer Rechnung verrechnen | matching:write |
POST /api/match/correction-settlement/refund | Bereits erfolgte Rückzahlung erfassen | matching:write |
POST /api/match/correction-settlement/reverse | Erfasste Rückzahlung oder Verrechnung zurücknehmen | matching:write |
GET /api/match/correction-settlement/{correctionDocumentId} | Erstattungsfähiges Guthaben einer Rechnungskorrektur lesen | sales:read |
GET /api/match/correction-settlement/{correctionDocumentId}/targets | Geeignete Rechnungen für eine Verrechnung suchen | sales:read |
POST /api/match/dismiss | Zuordnungsvorschlag ausblenden | matching:write |
DELETE /api/match/dismiss/{id} | Ausgeblendeten Vorschlag zurückholen | matching:write |
POST /api/match/payment | Bereits erfolgte Zahlung erfassen | matching:write |
POST /api/match/payment/bulk | Zahlungen für mehrere Belege eintragen | matching:write |
GET /api/match/payment/private | Privat bezahlt: Stand der Firma lesen | read |
POST /api/match/payment/reverse | Erfasste Zahlung zurücknehmen | matching:write |
POST /api/match/suggestions | Zuordnungsvorschläge lesen | read |
POST /api/match/util/amountopen | Offenen Zuordnungsbetrag berechnen | read |
GET /api/match/{id} | Zuordnung lesen | read |
DELETE /api/match/{id} | Zuordnung aufheben | matching:write |
POST /api/match/{id}/cash-discount | Offenen Betrag einer Zuordnung als Skonto ausgleichen | matching:write |
GET /api/match/{id}/cash-discount-preview | Skonto einer Zuordnung prüfen | read |
GET /api/match/{id}/delete-preview | Aufheben einer Zuordnung prüfen | read |
POST /api/match/{id}/euro-amount | Euro-Betrag aus der Zahlung übernehmen | matching:write |
GET /api/match/{id}/euro-amount-preview | Euro-Betrag aus der Zahlung prüfen | read |
POST /api/match/{id}/extend | Zuordnung erweitern | matching:write |
POST /api/match/{id}/reminder-charges | Mehrbetrag einer Zuordnung als Mahnkosten und Zinsen buchen | matching:write |
GET /api/match/{id}/reminder-charges-preview | Mahnkosten einer Zuordnung prüfen | read |
Playground
Auf den Seiten der lesenden Endpunkte kannst du Anfragen direkt ausprobieren. Der Playground sendet sie aus deinem Browser unmittelbar an app.bimetrics.de; der Schlüssel läuft nicht über developer.bimetrics.de.
- Aus dem Browser funktioniert nur
Authorization: Bearer. Den HeaderX-API-KEYlässt der Browser nicht zu, weilapp.bimetrics.deihn bei Anfragen von anderen Websites (CORS) nicht erlaubt. - Der Schlüssel bleibt nur während deines Besuchs im Browser gespeichert. Er wird gelöscht, wenn du die Seite verlässt oder neu lädst. Überspringt der Browser das, wird er beim nächsten Besuch gelöscht.
Die Antworten enthalten echte Daten deiner Firma. Nutze den Playground nur auf einem Gerät, dem du vertraust. Für den Upload gibt es keinen Testversand, weil jeder Aufruf einen echten Beleg anlegt.
Sicherheit und Widerruf
Worauf du bei der Freigabe achtest, was mit den Daten passiert und wie du eine MCP-Verbindung beendest.
Beleg hochladen POST
Lädt genau eine Datei als neuen Beleg hoch und stößt die Erkennung an. Die Antwort ist ein Array mit genau einem Beleg. Das Formularfeld bestimmt die Belegart: `invoice[]` Ausgangsrechnung, `receipt[]` Eingangsbeleg, beides bindend; bei `auto[]` entscheidet die Erkennung mit den Daten deiner Firma. Kann sie nicht sicher entscheiden, bekommt der Beleg „Belegtyp prüfen“ (`kindReview`) und wird nicht gebucht, bis du den Belegtyp wählst. Unterstützt werden PDF, PNG, JPEG und XML-E-Rechnungen. `X-Upload-Request-Id` macht Wiederholungen sicher: Dieselbe ID mit identischer Datei, identischem Dateinamen und Feld liefert denselben Beleg, ohne weiteres Kontingent; dieselbe ID mit anderem Inhalt ergibt `409 UploadRequestConflict`. Für jeden neuen Beleg eine neue ID verwenden. Ist das Belegkontingent ausgeschöpft, wird der Beleg trotzdem gespeichert (`uploadDocument.ocrStatus` = `quota_paused`); dann keinen weiteren Upload mit neuer ID starten. Benötigt einen Schlüssel mit der Berechtigung `upload`.