bimetricsEntwickler
Zuordnungen

Privat bezahlt: Stand der Firma lesen

Als Markdown ansehen

Benötigte Berechtigung:read(Daten lesen)

GET
/api/match/payment/private

Sagt, wie bimetrics eine private Zahlung (recordPayment mit method private) für diese Firma bucht, und bei GmbH und UG, was die Firma dem Gesellschafter noch schuldet. Den Zahlungsstand eines einzelnen Belegs liefert getDocument (remainingPaymentMinor, recordedPayments). Nur mit eingeschalteter Zahlungserfassung (manualPaymentsEnabled), sonst 403 ManualPaymentUnavailable.

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

Authentifizierung

headerAuthentifizierungBearer <bm_…>

Empfohlen: Authorization: Bearer bm_…. Der Schlüssel wird nur einmal angezeigt; nie in URLs, Logs oder Frontend-Code ablegen.

Antworten

Erfolg.

application/json
  1. response

Wie die Firma private Zahlungen bucht und was sie dem Gesellschafter noch schuldet.

account?integer

Konto, auf das bimetrics private Zahlungen bucht, bei GmbH und UG 1665 (SKR03) bzw. 3640 (SKR04); fehlt, wenn keine private Zahlung möglich ist.

openMinor?integer

Nur bei shareholder: was die Firma auf diesem Konto seit dem Start in bimetrics noch schuldet, über alle Belege, in Cent; negativ, wenn sie mehr zurückgezahlt hat. Zurückgezahlt wird mit der Buchungsvorlage „Gesellschafter-Verrechnung“.

paidBy?string

paidBy der aktiven privaten Zahlungen, wenn alle denselben Namen tragen; fehlt sonst.

treatment?string

Buchung nach Rechtsform: shareholder (GmbH, UG) als Schuld an den Gesellschafter, owner (Einzelunternehmen, GbR, OHG) als Privateinlage, legal_form_missing erst, wenn die Rechtsform in der App eingetragen ist, unsupported für andere Rechtsformen nicht möglich.

Wert in"shareholder""owner""legal_form_missing""unsupported"
Beispielanfrage
curl --fail-with-body "https://app.bimetrics.de/api/match/payment/private" \  -H "Authorization: Bearer $BIMETRICS_API_KEY"
Beispielantwort
{  "account": 1665,  "openMinor": 11900,  "paidBy": "Erika Beispiel",  "treatment": "shareholder"}

Zahlungen für mehrere Belege eintragen POST

Dokumentiert für Eingangsbelege eine bereits erfolgte Bar- oder Privatzahlung, wie „Zahlung eintragen“ in der Mehrfachauswahl der App: je Beleg der volle offene Betrag, Zahltag ist das Belegdatum, bei einem Datum in der Zukunft heute. Geld bewegt sich nicht, es entsteht weder eine Banktransaktion noch ein Zahlungsauftrag. Standardmäßig ausgeschaltet (`403 ManualPaymentUnavailable`). Übersprungen werden wie in der App alles außer Eingangsbelegen (`kind`), Gutschriften (`credit`), stornierte Belege (`deleted`), Belege aus Dauerbuchungen oder Vorlagen (`linked`), Sammelzuordnungen (`collective`), an DATEV exportierte (`exported`), teilweise bezahlte (`partial`), bezahlte (`paid`), mit Buchungsfehlern (`issues`), noch nicht gelesene (`reading`), ungebuchte (`unbooked`), ohne Betrag (`noAmount`) oder ohne Datum (`noDate`). Dazu `notFound` und `notPreviewed`. Eine einzelne Zahlung nimmst du mit `POST /api/match/payment/reverse` zurück. Höchstens 50 Belege je Aufruf (`400 BulkLimitExceeded`). Die Antwort nennt je Beleg, was geschah: `change` geändert, `skipped` mit Grund übersprungen, `failed` mit Code abgelehnt. Das ist ein Teilerfolg wie in der App: Ein abgelehnter Beleg hält die anderen nicht auf, und die Route antwortet mit `200`. Mit `dryRun` ändert sie nichts und zeigt, was geschähe, mit einer `version` je Beleg. Zum Ausführen gibst du diese als `expectedVersions` zurück, sonst antwortet die Route mit `400 ExpectedVersionRequired`. Es ändert sich nur, was unter `change` stand und seitdem unverändert ist: Ein geänderter Beleg kommt mit `VersionConflict` in `failed`, die übrigen laufen, und ein Beleg ohne Eintrag bleibt mit `notPreviewed` in `skipped`. Jeder Beleg läuft als eigener Befehl mit eigenem Eintrag im Protokoll und zählt einzeln auf die Tagesgrenzen der Firma und der Testphase. Der ganze Aufruf zählt einmal auf die Grenzen je Minute. Eine Wiederholung mit gleichem Idempotency-Key ändert nichts doppelt und erledigt, was noch offen ist. Sie klärt auch den Stand, wenn ein Aufruf abbricht: `OutcomeUnknown` heißt, der Beleg kann schon gebucht sein. Benötigt einen Schlüssel mit der Berechtigung `matching:write`.

Erfasste Zahlung zurücknehmen POST

Nimmt eine erfasste Bar-, Verrechnungs- oder Privatzahlung durch Gegenbuchung zurück. Die ursprüngliche Zahlung und Buchung bleiben in der Historie. Erwartet aktuelle Belegversion und offenen Betrag; auch bei ausgeschalteter Neuerfassung verfügbar. Benötigt einen Schlüssel mit der Berechtigung `matching:write`.