# Buchung lesen (https://developer.bimetrics.de/reference/accounting/get-booking)

`GET https://app.bimetrics.de/api/accounting/booking/{id}`

operationId: `getBooking` · Berechtigung (Scope): `read` · Bereich: Buchhaltung

Liefert eine Buchung.

Benötigt einen Schlüssel mit der Berechtigung `read`.

### Authentifizierung

`Authorization: Bearer bm_…` (alternativ `X-API-KEY: bm_…`, nie beide zugleich).

### Parameter

| Name | Ort | Pflicht | Typ | Beschreibung |
| --- | --- | --- | --- | --- |
| `id` | path | ja | string (uuid) | ID der Buchung (UUID). |

### Beispiel

```sh
curl --fail-with-body "https://app.bimetrics.de/api/accounting/booking/{id}" \
  -H "Authorization: Bearer $BIMETRICS_API_KEY"
```

### Antworten

| Status | Beschreibung | Inhalt |
| --- | --- | --- |
| 200 | Erfolg. | `application/json`: AccountBooking |
| 400 | Ungültige Anfrage, z. B. ein Parameter mit ungültigem Wert wie eine ID, die keine UUID ist; korrigieren statt wiederholen. Mehr unter [Fehler](https://developer.bimetrics.de/errors). | `application/json`: Error |
| 401 | Kein gültiger Schlüssel: fehlt (`Unauthorized`), ist unbekannt, abgelaufen oder widerrufen oder wurde nicht in genau einem Header gesendet (`InvalidAPIKey`). Schlüssel prüfen, nicht wiederholen. Auch eine ID, die zu einer anderen Firma gehört, ergibt `401 Unauthorized`. | `application/json`: Error |
| 403 | Dem Schlüssel fehlt die Berechtigung für diese Route (`APIKeyPermissionDenied`), oder die Firma hat keinen aktiven Tarif mit API-Zugang, etwa in der Testphase oder nach Ende des Abos (`APIUnavailable`). | `application/json`: Error |
| 404 | Nicht gefunden (`NotFound`). | `application/json`: Error |
| 413 | Die Anfrage ist zu groß (`APIRequestTooLarge`), siehe `x-bimetrics-limits`. | `application/json`: Error |
| 429 | Zu viele Anfragen; nach `Retry-After` Sekunden erneut senden. Mehr unter [Fehler](https://developer.bimetrics.de/errors). (Header: Retry-After) | `application/json`: Error |
| 500 | Serverfehler; die Anfrage später wiederholen. Mehr unter [Fehler](https://developer.bimetrics.de/errors). | `application/json`: Error |

#### Felder der Antwort 200 (`AccountBooking`)

| Feld | Typ | Beschreibung |
| --- | --- | --- |
| `account` | integer | Konto im Kontenrahmen: Sachkonto, Bankkonto, Debitor oder Kreditor. `amount` bezieht sich auf dieses Konto. |
| `accountContra` | integer | Gegenkonto. |
| `accountingModel` | string | Kontenrahmen der Buchung: `SKR03` oder `SKR04`, mit Zusatz `-v` ohne Umsatzsteuerpflicht und `-v-k` als Kleinunternehmer. |
| `amount` | string (decimal) | Betrag als Dezimalzahl (String), bezogen auf `account`: größer 0 Soll, kleiner 0 Haben. |
| `bookingDate` | NaiveDate | Buchungsdatum. |
| `bookingFlags` | string | Steuerkennzeichen, z. B. `v19%` (Vorsteuer 19 %), `ust19%` (Umsatzsteuer 19 %), `v-none` bzw. `ust-none` (keine Steuer im Betrag, etwa bei steuerfreien Positionen oder Positionen zu 0 %), `v-reverse-charge` bzw. `ust-reverse-charge` (Reverse Charge) oder `ust-none-kleinunternehmer` (Kleinunternehmer, § 19 UStG). Bei Kennzeichen mit Steuersatz enthält `amount` die Steuer. Leer nur bei Buchungen von Bankumsätzen ohne steuerliche Behandlung, etwa Zahlungen und Geldtransfers zwischen eigenen Konten. Auch Belegpositionen ohne Steuer tragen ein Kennzeichen, etwa `v-none` oder `ust-none`. |
| `companyId` | string (uuid) | ID der Firma. |
| `createdAt` | string (date-time) | Anlage in bimetrics. |
| `finalized` | string (date-time), kann null sein | Zeitpunkt der Festschreibung; `null`, solange nicht festgeschrieben. |
| `id` | string (uuid) | ID der Buchung. |
| `label` | string | Buchungstext. |
| `performanceFrom` | NaiveDate | Beginn des Leistungszeitraums. |
| `performanceTo` | NaiveDate | Ende des Leistungszeitraums. |
| `refBankTransactionId` | string (uuid), kann null sein | ID des gebuchten Umsatzes. |
| `refDocumentId` | string (uuid), kann null sein | ID des gebuchten Belegs. |
| `refMatch` | string (uuid), kann null sein | ID der Zuordnung, aus der die Buchung entstand. |
| `revertsAccountBookingId` | string (uuid), kann null sein | Diese Buchung storniert die Buchung mit dieser ID. |
| `updatedAt` | string (date-time) | Letzte Änderung. |

Verschachtelte Schemas stehen vollständig in der OpenAPI-Beschreibung: https://app.bimetrics.de/api/openapi.json
