Kontoauszug hochladen
Benötigte Berechtigung:statements:import(Kontoauszüge einlesen)
Echte Wirkung
/api/bankstatement/uploadKein Testversand aus der Dokumentation: Jeder Aufruf legt einen echten Beleg an. Nutze das Codebeispiel mit einer Datei, die wirklich in die Firma gehört.
Speichert eine Datei der Bank, gelesen und gebucht wird noch nichts. Eine Datei, die bimetrics nicht lesen kann, wird mit dem Grund abgelehnt (422), zu große mit 413 BankStatementTooLarge. Dieselbe Datei, noch nicht übernommen, ergibt denselben Upload und keine neue Zeile. sameFile nennt einen Import, der diese Datei schon übernommen hat. Nicht übernommene Dateien löscht bimetrics nicht von selbst.
Benötigt einen Schlüssel mit der Berechtigung statements:import.
AuthentifizierungBearer <bm_…>Empfohlen: Authorization: Bearer bm_…. Der Schlüssel wird nur einmal angezeigt; nie in URLs, Logs oder Frontend-Code ablegen.
Idempotency-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 <= 128multipart/form-data- body
file*unknownDie Datei der Bank, höchstens 30 MiB.
Erfolg.
application/json- response
Eine hochgeladene Datei.
fileName?stringName der Datei.
kind?stringArt der Datei.
sameFile?|Ein Import, der diese Datei schon übernommen hat, sonst null.
size?integerGröße in Byte.
uploadId?stringID des Uploads, für alle weiteren Schritte.
uuidcurl --fail-with-body "https://app.bimetrics.de/api/bankstatement/upload" \ -H "Authorization: Bearer $BIMETRICS_API_KEY" \ -H "Idempotency-Key: rechnung-2026-001" \ -F "auto[]=@rechnung.pdf"{ "fileName": "umsaetze.csv", "kind": "csv", "sameFile": null, "size": 48213, "uploadId": "1b7e4f30-5c2a-4d18-9e63-7a0c2f815d44"}Nicht gelesene Zeilen laden POST
Liefert die Zeilen, die bimetrics mit dieser Zuordnung nicht lesen kann, im Original, davor Zeile und Grund; bei CAMT und MT940 nur Zeile und Grund. Die ersten 50 mit Grund stehen auch in `unreadSample` der Vorschau. Benötigt einen Schlüssel mit der Berechtigung `statements:import`.
Kostenstellen lesen GET
Liefert alle Kostenstellen und Verteilungen der Firma, auch archivierte, jeweils mit der Zahl der Belege (`documents`). `used` sagt, ob ein Beleg oder eine Buchung sie schon trägt, direkt oder über eine Verteilung: Dann stehen Nummer und Anteile fest. Benötigt einen Schlüssel mit der Berechtigung `read`.