Die Bestell-API deckt den vollständigen Bestellzyklus ab — vom Abruf eingehender Aufträge aus ITscope über die Erstellung neuer Bestellungen bis hin zum Senden, Tracking und Dokumentenabruf. Sie besteht aus zwei Bereichen:

  • Legacy-Endpunkte (/orders/sales/*, /orders/purchase/*) für den klassischen Auftragsabruf und die direkte Bestellübermittlung an ITscope-Distributoren.
  • V2-Endpunkte (/orders/v2/*) für den modernen, zustandsbehafteten Bestellfluss mit eindeutiger Bestell-ID, Statusverfolgung und Dokumentenabruf.

Für neue Integrationen sollten ausschließlich die V2-Endpunkte verwendet werden. Die Legacy-Endpunkte stehen weiterhin zur Verfügung, werden aber langfristig nicht mehr erweitert.


Aufträge abrufen (Legacy)

1. Verkaufsaufträge abrufen

Holt eingehende Verkaufsaufträge (Sales Deals) aus ITscope ab — typischerweise zur Synchronisation in das eigene ERP.

Anwendungsfall: Eingegangene Kundenaufträge aus dem ITscope-Marktplatz periodisch in Odoo importieren.

Endpoint:

POST /orders/sales/fetch

Request-Body:

Feld Typ Pflicht Beschreibung
from_date string (ISO-8601) Nein Untergrenze des Zeitraums
to_date string (ISO-8601) Nein Obergrenze des Zeitraums
status string Nein Optionaler Statusfilter

curl-Beispiel:

curl -X POST "https://api.connector.mateit.de/api/v1/orders/sales/fetch" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{ "from_date": "2026-05-01T00:00:00Z" }'

Antwort (Auszug):

{
  "deals": [
    {
      "deal_id": "SD-100245",
      "status": "OPEN",
      "created_at": "2026-05-12T10:21:00Z",
      "buyer": { "name": "Beispiel GmbH" },
      "items": [
        { "puid": "12345678", "quantity": 2 }
      ]
    }
  ]
}

2. Einkaufsbestellungen abrufen

Analog zu sales/fetch, jedoch für Einkaufsbestellungen (Purchase Deals), die Sie selbst bei ITscope-Distributoren ausgelöst haben.

Anwendungsfall: Synchronisation des aktuellen Bestellstatus eigener Einkaufsbestellungen in das ERP.

Endpoint:

POST /orders/purchase/fetch

curl-Beispiel:

curl -X POST "https://api.connector.mateit.de/api/v1/orders/purchase/fetch" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{ "from_date": "2026-05-01T00:00:00Z" }'

3. Bestellung an ITscope übermitteln

Sendet eine Einkaufsbestellung direkt an einen ITscope-Distributor. Dieser Endpunkt überträgt die Bestellung ohne vorgelagerten Anlage-Schritt.

Anwendungsfall: Schnelle Übermittlung einer fertigen Bestellung an einen ausgewählten Distributor.

Endpoint:

POST /orders/purchase/submit

Request-Body (Auszug):

Feld Typ Pflicht Beschreibung
distributor_id string Ja Ziel-Distributor
items array Ja Bestellpositionen (puid, quantity)
delivery_address object Ja Lieferadresse
external_reference string Nein Eigene Referenz (Idempotenz-Schlüssel, siehe Hinweis unten)

curl-Beispiel:

curl -X POST "https://api.connector.mateit.de/api/v1/orders/purchase/submit" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
        "distributor_id": "1001",
        "items": [{ "puid": "12345678", "quantity": 1 }],
        "delivery_address": { "name": "Beispiel GmbH", "city": "Berlin" },
        "external_reference": "PO-2026-000123"
      }'

Bestellungen V2 (empfohlen)

Die V2-Endpunkte bilden den zweistufigen Bestellprozess ab: zunächst wird eine Bestellung im Connector angelegt (create) und kann anschließend gezielt an ITscope abgesendet (send) werden. Jede Bestellung erhält eine eigene id, über die Status, Details und Dokumente abrufbar sind.

4. Neue Bestellung anlegen

Legt eine Bestellung im Connector an — sie ist damit persistiert, aber noch nicht an ITscope übermittelt.

Anwendungsfall: Mehrstufige Freigabeprozesse, Vorbereitung mehrerer Bestellungen vor der eigentlichen Absendung.

Endpoint:

POST /orders/v2/create

Request-Body (Auszug):

Feld Typ Pflicht Beschreibung
distributor_id string Ja Ziel-Distributor
items array Ja Bestellpositionen (puid, quantity)
delivery_address object Ja Lieferadresse
external_reference string Nein Eigene Bestell­referenz

curl-Beispiel:

curl -X POST "https://api.connector.mateit.de/api/v1/orders/v2/create" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
        "distributor_id": "1001",
        "items": [{ "puid": "12345678", "quantity": 1 }],
        "delivery_address": { "name": "Beispiel GmbH", "city": "Berlin" },
        "external_reference": "PO-2026-000123"
      }'

Antwort (Auszug):

{
  "id": "ord_01HXYZ...",
  "status": "DRAFT",
  "created_at": "2026-05-31T08:14:00Z"
}

5. Bestellung an ITscope absenden

Sendet eine zuvor angelegte Bestellung tatsächlich an ITscope. Erst dieser Schritt löst die Übermittlung an den Distributor aus.

Anwendungsfall: Finaler Bestellabschluss nach interner Freigabe oder Plausibilitätsprüfung.

Endpoint:

POST /orders/v2/send

Request-Body:

Feld Typ Pflicht Beschreibung
id string Ja ID einer zuvor mit create angelegten Bestellung

curl-Beispiel:

curl -X POST "https://api.connector.mateit.de/api/v1/orders/v2/send" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{ "id": "ord_01HXYZ..." }'

6. Alle Bestellungen auflisten

Liefert eine paginierte Übersicht aller Bestellungen des Accounts.

Anwendungsfall: Bestellübersicht im ERP-System, Reporting und Reconciliation.

Endpoint:

GET /orders/v2/list

Parameter:

Parameter Typ Pflicht Beschreibung
status string Nein Filter auf einen bestimmten Status (DRAFT, SENT, CONFIRMED, SHIPPED, …)
limit integer Nein Anzahl Ergebnisse pro Seite (Standard: 25, Max: 100)
cursor string Nein Pagination-Cursor

curl-Beispiel:

curl -X GET "https://api.connector.mateit.de/api/v1/orders/v2/list?status=SENT&limit=25" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

7. Bestelldetails abrufen

Liefert eine einzelne Bestellung inklusive aller Positionen, Lieferadresse und Metadaten.

Anwendungsfall: Detailansicht einer Bestellung, Anzeige im Kundenportal oder im ERP.

Endpoint:

GET /orders/v2/{id}

curl-Beispiel:

curl -X GET "https://api.connector.mateit.de/api/v1/orders/v2/ord_01HXYZ..." \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

8. Bestellstatus abfragen

Liefert den aktuellen Status einer Bestellung in kompakter Form — ideal für Polling oder Statusanzeigen.

Anwendungsfall: Aktuellen Liefer- und Bearbeitungsstatus im ERP oder Kundenportal anzeigen.

Endpoint:

GET /orders/v2/{id}/status

curl-Beispiel:

curl -X GET "https://api.connector.mateit.de/api/v1/orders/v2/ord_01HXYZ.../status" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Antwort (Auszug):

{
  "id": "ord_01HXYZ...",
  "status": "SHIPPED",
  "tracking_number": "1Z999AA10123456784",
  "carrier": "UPS",
  "updated_at": "2026-05-31T08:14:00Z"
}

9. Bestelldokumente abrufen

Liefert die zur Bestellung verfügbaren Dokumente: Auftragsbestätigung, Rechnung und Lieferschein — sofern vom Distributor bereitgestellt.

Anwendungsfall: Dokumente im Kundenportal verfügbar machen oder automatisch in die ERP-Dokumentenablage übernehmen.

Endpoint:

GET /orders/v2/{id}/documents

curl-Beispiel:

curl -X GET "https://api.connector.mateit.de/api/v1/orders/v2/ord_01HXYZ.../documents" \
  -H "X-API-Key: sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Antwort (Auszug):

{
  "documents": [
    {
      "type": "ORDER_CONFIRMATION",
      "filename": "AB-2026-000123.pdf",
      "download_url": "https://api.connector.mateit.de/api/v1/orders/v2/ord_01HXYZ.../documents/ab.pdf"
    },
    {
      "type": "INVOICE",
      "filename": "RE-2026-000123.pdf",
      "download_url": "https://api.connector.mateit.de/api/v1/orders/v2/ord_01HXYZ.../documents/re.pdf"
    },
    {
      "type": "DELIVERY_NOTE",
      "filename": "LS-2026-000123.pdf",
      "download_url": "https://api.connector.mateit.de/api/v1/orders/v2/ord_01HXYZ.../documents/ls.pdf"
    }
  ]
}

Hinweise

Verwenden Sie für neue Integrationen ausschließlich die V2-Endpunkte (/orders/v2/*). Sie bieten eine eindeutige Bestell-ID, sauberen create/send-Lebenszyklus, Statusabfragen und Dokumentenabruf. Die Legacy-Endpunkte bleiben aus Kompatibilitätsgründen verfügbar.

Bestellübermittlungen (/orders/purchase/submit und /orders/v2/send) sind idempotent über das Feld external_reference bzw. die V2-Bestell-id abgesichert: Wiederholte Aufrufe mit derselben Referenz erzeugen keine doppelten Bestellungen beim Distributor. Verwenden Sie deshalb pro fachlicher Bestellung immer dieselbe Referenz und stellen Sie sicher, dass diese in Ihrem System eindeutig vergeben wird.


Weiterführende Seiten