> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rxscale.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bestellungen

> Bestellungen auflisten und Details über die Management API anzeigen

# Bestellungen

Rufen Sie Bestellinformationen ab, einschließlich Positionen, Fulfillment-Aufträgen und Shop-Daten.

## Bestellungen auflisten

```bash theme={null}
GET /v1/management/orders
```

<ParamField query="page" type="integer" default="0">
  Seitenzahl (0-indexiert)
</ParamField>

<ParamField query="limit" type="integer" default="50">
  Anzahl der Bestellungen pro Seite
</ParamField>

<ParamField query="created_at_from" type="integer">
  Bestellungen filtern, die ab diesem Unix-Zeitstempel erstellt wurden
</ParamField>

<ParamField query="created_at_to" type="integer">
  Bestellungen filtern, die bis zu diesem Unix-Zeitstempel erstellt wurden
</ParamField>

<ParamField query="updated_at_from" type="integer">
  Bestellungen filtern, die ab diesem Unix-Zeitstempel aktualisiert wurden
</ParamField>

<ParamField query="updated_at_to" type="integer">
  Bestellungen filtern, die bis zu diesem Unix-Zeitstempel aktualisiert wurden
</ParamField>

<ParamField query="shop_identifier" type="string">
  Nach dem Identifier des Shops filtern (der String, den Sie bei der
  Shop-Einrichtung konfiguriert haben). Es werden nur Bestellungen
  zurückgegeben, deren verknüpfter Shop zu Ihrer Organisation gehört und
  diesen Identifier hat.
</ParamField>

<ParamField query="shop_order_external_id" type="string">
  Nach der externen Bestell-ID filtern, die vom Shop bzw. der
  E-Commerce-Plattform vergeben wurde (z. B. die Shopify-Bestellnummer).
  Kombinieren Sie diesen Parameter mit `shop_identifier`, um eine
  bestimmte Shop-Bestellung nachzuschlagen.
</ParamField>

<ParamField query="search" type="string">
  Volltextsuche über den Shopify-Bestellnamen, den Apotheken-Bestellnamen
  (z. B. `PO-XXXX-XXXX-XXXX`) und den vollständigen Namen des Patienten.
  Derselbe Wert wird zusätzlich als exakte UID gegen die Bestellung, ihre
  Verschreibungen und ihre Apothekenbestellungen abgeglichen, sodass Sie
  eine ID direkt einfügen können. Ein führendes `#` wird vor der
  UID-Suche entfernt, damit aus der Admin-Oberfläche kopierte Werte
  (z. B. `#ord_…`) wie erwartet aufgelöst werden.
</ParamField>

**Erforderliche Berechtigung:** `order:read`

### Beispielanfrage

```bash theme={null}
curl -X GET "https://api.rxscale.com/v1/management/orders?page=0&limit=25&updated_at_from=1712300000" \
  -H "X-API-Key: your-api-key-here"
```

### Eine bestimmte Shop-Bestellung nachschlagen

Kombinieren Sie `shop_identifier` und `shop_order_external_id`, um genau
die Bestellung zu finden, die beide Werte erfüllt. Die Antwortstruktur
bleibt unverändert (paginierte Liste), das Ergebnis enthält jedoch
höchstens eine Bestellung.

```bash theme={null}
curl -X GET "https://api.rxscale.com/v1/management/orders?shop_identifier=my-shop&shop_order_external_id=EXT-12345" \
  -H "X-API-Key: your-api-key-here"
```

### Antwort

```json theme={null}
{
  "orders": [
    {
      "uid": "ord-abc123",
      "status": "waiting for doctor",
      "overall_status": "pending",
      "created_at": 1712300000,
      "updated_at": 1712400000,
      "shop_order": {
        "uid": "so-789",
        "external_id": "EXT-12345",
        "shop": {
          "uid": "shop-456",
          "identifier": "my-shop"
        }
      },
      "items": [
        {
          "uid": "oi-001",
          "sku_uid": "sku-456",
          "sku_display_name": "Medikament X 100mg",
          "sku_pzn": "12345678",
          "amount": 2,
          "prescription_uid": "px-001"
        }
      ],
      "fulfillment_orders": [
        {
          "uid": "fo-001",
          "status": "OPEN",
          "external_id": "ext-fo-1",
          "items": [
            {
              "uid": "foi-001",
              "order_item_uid": "oi-001",
              "status": "OPEN",
              "amount": 2
            }
          ]
        }
      ],
      "prescriptions": [
        {
          "uid": "px-001",
          "status": "signed",
          "doctor_uid": "doc-456",
          "doctor_name": "Dr. Schmidt"
        }
      ]
    }
  ],
  "totalRegistries": 150,
  "totalPages": 6
}
```

### Antwortfelder

| Feld                                | Typ     | Beschreibung                                                |
| ----------------------------------- | ------- | ----------------------------------------------------------- |
| `orders[].uid`                      | string  | Bestell-UID                                                 |
| `orders[].status`                   | string  | Bestellstatus                                               |
| `orders[].overall_status`           | string  | Berechneter Gesamtstatus                                    |
| `orders[].created_at`               | integer | Erstellungszeitstempel (Unix)                               |
| `orders[].updated_at`               | integer | Letzter Aktualisierungszeitstempel (Unix)                   |
| `orders[].shop_order`               | object  | Shop- und externe Bestellreferenz                           |
| `orders[].items`                    | array   | Bestellpositionen mit SKU-Informationen                     |
| `orders[].items[].sku_display_name` | string  | SKU-Anzeigename                                             |
| `orders[].items[].sku_pzn`          | string  | Pharmazentralnummer                                         |
| `orders[].items[].amount`           | integer | Menge                                                       |
| `orders[].items[].prescription_uid` | string  | Verknüpftes Rezept (nur mit `prescription:read`)            |
| `orders[].fulfillment_orders`       | array   | Fulfillment-Aufträge mit Status und Positionen              |
| `orders[].prescriptions`            | array   | Rezepte mit Arztinformationen (nur mit `prescription:read`) |
| `totalRegistries`                   | integer | Gesamtanzahl der Bestellungen                               |
| `totalPages`                        | integer | Gesamtanzahl der Seiten                                     |

## Bestelldetails abrufen

```bash theme={null}
GET /v1/management/orders/{order_uid}
```

<ParamField path="order_uid" type="string" required>
  Die Bestell-UID
</ParamField>

**Erforderliche Berechtigung:** `order:read`

Gibt die gleiche Struktur wie ein einzelner Eintrag in der Listenantwort zurück.

### Beispielanfrage

```bash theme={null}
curl -X GET "https://api.rxscale.com/v1/management/orders/ord-abc123" \
  -H "X-API-Key: your-api-key-here"
```

## Rezeptdaten

Rezeptdaten werden nur einbezogen, wenn Ihr API-Schlüssel auch die Berechtigung `prescription:read` besitzt. Ohne diese Berechtigung:

* Das `prescriptions`-Array wird als `[]` zurückgegeben
* Das Feld `prescription_uid` wird aus den Bestellpositionen entfernt

<Note>
  Wenn Sie Rezeptdetails benötigen, stellen Sie sicher, dass Ihr API-Schlüssel sowohl die Berechtigung `order:read` als auch `prescription:read` besitzt. Kontaktieren Sie Ihren RxScale-Kundenbetreuer, um Berechtigungen anzupassen.
</Note>
