Anmelden

Schnellstart

Als Markdown ansehen

Fünf Schritte von null zur ersten Rechnung als JSON. Sie brauchen ein Ocost-Konto, in dem Sie Inhaber oder Buchhaltung sind.

1. Registrieren

Registrieren Sie sich unter https://app.ocost.io/auth/sign-up, oder melden Sie sich an. Dateien, die Sie über die API schicken, stehen wie jeder Upload unter Dateien.

2. Einen Schlüssel erstellen

  1. Öffnen Sie Einstellungen › API und wählen Sie Schlüssel erstellen.
  2. Benennen Sie den Schlüssel nach seinem Nutzer, etwa „Odoo Produktion“.
  3. Lassen Sie die vorgegebenen Berechtigungen angehakt und wählen Sie Schlüssel erstellen.
  4. Wählen Sie Schlüssel kopieren. Der Schlüssel beginnt mit ocost_sk_, und Ocost zeigt ihn nur einmal.

Legen Sie ihn für die nächsten Schritte in Ihrer Shell ab:

Shell
export OCOST_KEY="ocost_sk_…"

3. Ein PDF schicken

Schicken Sie die Datei als multipart/form-data im Feld file. external_ref ist Ihre eigene Kennung, und Ocost gibt sie zurück.

curl -sS https://api.ocost.io/public/v1/files \
  -H "Authorization: Bearer $OCOST_KEY" \
  -F "file=@invoice.pdf" \
  -F "external_ref=account.move,42"

Ocost antwortet 202 Accepted und beginnt zu lesen:

JSON
{
  "id": "01a1b08c-6e3a-7562-8f4a-7924722667b1",
  "name": "invoice.pdf",
  "status": "received",
  "reason": null,
  "external_ref": "account.move,42",
  "documents": [],
  "sha256": "0edd5593…"
}

4. Warten, bis sie gelesen ist

Fragen Sie die Datei alle paar Sekunden ab, solange ihr status received oder reading ist. Die meisten PDFs brauchen unter einer Minute.

curl -sS https://api.ocost.io/public/v1/files/$FILE_ID \
  -H "Authorization: Bearer $OCOST_KEY"

Eine gelesene Datei listet ihre Belege:

JSON
{
  "id": "01a1b08c-6e3a-7562-8f4a-7924722667b1",
  "status": "read",
  "documents": [
    {
      "id": "01a1b08c-7aa1-7b52-9d4e-2f1f1c0c4f11",
      "kind": "invoice",
      "number": "RE-2026-1187",
      "pages": [1]
    }
  ]
}

Endet eine Datei mit not_read oder failed, nennt reason den Grund. Status und Gründe listet sie auf.

5. Den Beleg lesen

Fragen Sie den ersten Beleg der Datei ab.

curl -sS https://api.ocost.io/public/v1/files/$FILE_ID/document \
  -H "Authorization: Bearer $OCOST_KEY"

Die Antwort ist die Rechnung als ocost.document.v1, hier gekürzt:

JSON
{
  "schema": "ocost.document.v1",
  "kind": "invoice",
  "number": "RE-2026-1187",
  "issue_date": "2026-11-03",
  "due_date": "2026-12-03",
  "currency": "EUR",
  "seller": { "name": "Musterbüro Lieferant GmbH", "vat_id": "DE123456789" },
  "totals": { "net": "1068.00", "tax": "202.92", "gross": "1270.92" }
}

Weiter