Vorschau eines Kontoauszugs
Benötigte Berechtigung:statements:import(Kontoauszüge einlesen)
Echte Wirkung
/api/bankstatement/previewKein Testversand aus der Dokumentation: Dieser Aufruf ist nicht als rein lesend gekennzeichnet. Nutze das Codebeispiel.
Liest die ganze Datei und vergleicht sie mit den Umsätzen des Kontos, ohne etwas zu buchen: neu, schon da, zu prüfen (review) oder vorgemerkt, nicht gelesene Zeilen, Salden, DATEV-Hinweise und Warnungen. bimetrics merkt sich diese Vorschau 60 Minuten für applyStatement, mit genau diesem Konto und dieser Zuordnung. Liest gerade eine andere Vorschau: 409 BankStatementBusy, in einer Minute erneut.
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.
Upload, Konto und Zuordnung der Spalten
application/json- body
Upload, Konto und Zuordnung der Vorschau.
account?Das Konto.
mapping?Die Zuordnung.
uploadId?stringID des Uploads.
uuidErfolg.
application/json- response
Was das Einlesen täte.
balance?Saldenprüfung.
canApply?booleanEs gibt etwas zu übernehmen, und mindestens die Hälfte der Datei ist lesbar.
counts?Zeilen je Stand.
datev?|Hinweis zum DATEV-Export, sonst null.
file?Die Datei.
guards?Warnungen; sie sperren nichts.
readableShare?numberAnteil lesbarer Zeilen, 0 bis 1.
rows?array<>|Alle Zeilen.
sameFile?|Ein Import, der diese Datei schon übernommen hat, sonst null.
unread?integerNicht gelesene Zeilen.
unreadSample?array<>|Die ersten 50 nicht gelesenen Zeilen mit Grund.
curl --fail-with-body "https://app.bimetrics.de/api/bankstatement/preview" \ -H "Authorization: Bearer $BIMETRICS_API_KEY" \ -H "Content-Type: application/json" \ -d '{}'{ "balance": { "closing": null, "gaps": [], "inverted": false, "ok": false, "opening": null, "present": false }, "canApply": true, "counts": { "all": 2, "existing": 0, "new": 1, "pending": 0, "review": 1 }, "datev": null, "file": { "encoding": "utf-8", "from": "2026-09-01", "name": "umsaetze.csv", "rows": 2, "to": "2026-09-02" }, "guards": { "newInSyncedPeriod": null, "reviewShare": true }, "readableShare": 1, "rows": [ { "amountCents": -4990, "bookingDate": "2026-09-01", "name": "Beispiel GmbH", "pos": 0, "purpose": "Rechnung 1234", "review": null, "status": "new" }, { "amountCents": -1200, "bookingDate": "2026-09-02", "name": "Muster AG", "pos": 1, "purpose": "Abo", "review": { "amountCents": -1200, "bookingDate": "2026-09-03", "name": "Muster AG" }, "status": "review" } ], "sameFile": null, "unread": 0, "unreadSample": []}Kontoauszug ansehen POST
Liest den Anfang der Datei und schlägt Spalten (`mapping`), Format und Zielkonto vor, mit bis zu 20 Zeilen, wie bimetrics sie liest. Es wird nichts gespeichert. Mit `mapping` im Anfrageinhalt liest die Route die Zeilen mit dieser Zuordnung. Benötigt einen Schlüssel mit der Berechtigung `statements:import`.
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`.