# Rest API alle Bestellungsinfos auslesen

**URL:** <https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855>\
**Category:** Programmierung\
**Created:** [12. November 2020 um 11:36 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855 "2020-11-12T11:36:11Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![BastianHbner](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@BastianHbner](https://forum.shopware.com/u/BastianHbner)\
**Post date:** [12. November 2020 um 11:36 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/1 "2020-11-12T11:36:11Z")

</div>

Hallo wir versuchen derzeit über die REST Api die Bestellungen auszulesen. Jedoch bekommen wir wenn wir via /api/v3/search/order gehen nur die Kopfdaten der Bestellung. Es fehlen also Artikel Kunde usw. Natürlich könnte man nun mit der Bestellungsid auch die Artikel über /api/v3/search/order/ordernr/line-items herausbekommen, aber ich kann mir nicht vorstellen, dass das der richtige ansatz ist. Denn dann haben wir bald 35 API calls um alle infos einer Bestellung zusammen zu bekommen.

---

<div class="post-metadata">

**Author:** ![shyim](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/shyim/32/7681_2.png) [@shyim](https://forum.shopware.com/u/shyim)\
**Post date:** [12. November 2020 um 18:15 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/2 "2020-11-12T18:15:02Z")

</div>

Schau dir den associations Paramter an&nbsp;[Shopware 6: Reading entities](https://docs.shopware.com/en/shopware-platform-dev-en/admin-api-guide/reading-entities?category=shopware-platform-dev-en/admin-api-guide)

---

<div class="post-metadata">

**Author:** ![BastianHbner](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@BastianHbner](https://forum.shopware.com/u/BastianHbner)\
**Post date:** [18. November 2020 um 16:13 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/3 "2020-11-18T16:13:53Z")

</div>

Hi Shyim,

&nbsp;

das mit dem associations hat geklappt. Zumindest alle Infos bis auf Zahlungsbedingung und Versandart. Hier bekomme ich über die Assos nur die IDs der jeweiligen und nicht die Namen.

Ein weitaus schlimmeres Problem ist jedoch, dass ich wenn ich über die assos gehe nicht mehr api/v3/search/order verwenden kann und somit der Filter für alle offenen Bestellungen flöten geht. Gibt es da eine andere Variante?

---

<div class="post-metadata">

**Author:** ![stormerMike](https://avatars.discourse-cdn.com/v4/letter/s/e0b2c6/32.png) [@stormerMike](https://forum.shopware.com/u/stormerMike)\
**Post date:** [25. November 2020 um 10:34 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/4 "2020-11-25T10:34:28Z")

</div>

Würde mich auch interessieren da ich vor einem ähnlichen Situation stehe und alle Bestelldetails in einem Request abfragen möchte.  
Dabei geht es mir voirallem auch darum wie ich auch gleich alle aktuellen Bestellstati (Bestell-, Zahlungs- u. Lieferstatus) zurück bekommen kann?

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [2. Dezember 2020 um 15:04 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/5 "2020-12-02T15:04:55Z")

</div>

Wir haben uns die letzten Tage auch damit beschäftigt und eine JSON Abfrage erstellt.

Das war in Shopware 5 sehr viel einfacher&nbsp;und sollte eventuell ähnlich der Statusupdates mit eigenem Befehl&nbsp;abrufbar sein.

Hier das Ergebnis:

```
 { "associations": { "deliveries": { "associations": { "shippingOrderAddress": [] } }, "transactions": { "associations": { "stateMachineState": [] } }, "orderCustomer": {}, "addresses": { "associations": { "country": [] } }, "lineItems": { "associations": { "product": [] } }, "salesChannel": { "associations": { "paymentMethods": [] } }, "stateMachineState": {} }, "filter": [{ "value": "open", "field": "order.stateMachineState.technicalName", "type": "equals" },{ "value": "paid", "field": "transactions.stateMachineState.technicalName", "type": "equals" }], "includes": { "order\_transaction": ["id","stateMachineState"], "order\_customer": ["email"], "order": ["id","orderNumber","createdAt","lineItems","billingAddressId","salesChannelId","addresses","deliveries","salesChannelId","salesChannel","stateMachineState","transactions","orderCustomer","shippingTotal"], "order\_line\_item": ["id","position","quantity","unitPrice","productId","product"], "country": ["iso"], "product": ["productNumber","name"], "sales\_channel": ["id","name","paymentMethodId","paymentMethods"], "order\_address": ["id","firstName","lastName","street","zipcode","city","company","department","countryId","country"], "state\_machine\_state": ["id","technicalName"], "payment\_method": ["id","name","formattedHandlerIdentifier"], "order\_delivery": ["id","shippingOrderAddressId"] } }
```

---

<div class="post-metadata">

**Author:** ![BastianHbner](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@BastianHbner](https://forum.shopware.com/u/BastianHbner)\
**Post date:** [2. Dezember 2020 um 16:07 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/6 "2020-12-02T16:07:47Z")

</div>

Hallo Prochannel,

&nbsp;

könntest du uns eventuell auch deinen URL Befehl zur verfügung stellen, sodass wir das ebenfalls nutzen können?

Kannst du mit dem JSON Call zusätzlich auch noch kriterien wie status filtern?

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [3. Dezember 2020 um 06:55 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/7 "2020-12-03T06:55:52Z")

</div>

Aufruf über die&nbsp;&nbsp;Standard “Read Entity”.

Wie in der Doku beschrieben.  
Überblick über alle abrufbaren Entities:&nbsp;[Shopware 6: Reading entities](https://docs.shopware.com/en/shopware-platform-dev-en/admin-api-guide/reading-entities?category=shopware-platform-dev-en/admin-api-guide)  
Endpoint: /api/v3/\_info/openapi3.json

Dann Aufruf nachzulesen unter:&nbsp;[Shopware 6: Reading entities/Search Endpoint](https://docs.shopware.com/en/shopware-platform-dev-en/admin-api-guide/reading-entities?category=shopware-platform-dev-en/admin-api-guide#search-endpoint)  
In dem Fall für Bestellungen: /api/v3/search/order

Der Filter nach Status ist bereits enthalten:

```
 "filter": [{ "value": "open", "field": "order.stateMachineState.technicalName", //Bestellstatus "type": "equals" },{ "value": "paid", "field": "transactions.stateMachineState.technicalName", // Zahlstatus "type": "equals" }],

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![BastianHbner](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@BastianHbner](https://forum.shopware.com/u/BastianHbner)\
**Post date:** [4. Dezember 2020 um 13:57 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/8 "2020-12-04T13:57:23Z")

</div>

Hallo Prochannel,

&nbsp;

also wenn ichs über search/order versuche mit dem JSON Payload bekomme ich trotzdem nur die IDs der jeweiligen unterPunkte raus. Das bringt mir leider recht wenig da ich dann jeweil für jede ID nochmal nen abruf starten müsste.

Bedeutet ich habe Order 123 mit Artikel 25 und 23 und mache api/v3/search/order mit dem von dir geschickten JSON und bekomme nur die IDs unter lineItems raus. oder mache ich was falsch?

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [7. Januar 2021 um 09:53 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/9 "2021-01-07T09:53:52Z")

</div>

Hallo BastianHbner,

wenn du die Bestellungen mit dem JSON aufgerufen hast, erhältst du alle Daten.  
Dann müssen&nbsp;anhand der IDs noch die Daten aufbereitet werden.

Also beispielsweise anhand der billingAddressId, die in den Attributen&nbsp;des data-Tags zu finden ist:

![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/5/5ec12eb88b803cfdcd909956a138a5419819c5ad.png)  
Damit das included durchsuchen, um an die Rechnungsadresse zu gelangen.

 ![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/2/21e48968f8411fefd0b4510010c24854fd6b4f2b.png)  
Manchmal müssen aber auch zwei Relationen verfolgt werden, um an alle Daten&nbsp;zu kommen.

Bspw bei den order\_line\_items steht erstmal nur Menge und Preis.

![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/9/967eb48cc982e7911b1748afe750434d5bdfb5f7.png)

![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/0/069b90011dfbc17c93e3c6d9f31cf9e1760d80ae.png)

Erst durch Verfolgung der „productID“ kann man auch Artikelnummer und Beschreibung abgreifen

![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/6/6d87fa98560b6be05203c94c4029269c1e45002f.png)

Ich hoffe du kommst damit weiter.  
Ist halt leider nun aufwendiger als in shopware 5

---

<div class="post-metadata">

**Author:** ![BastianHbner](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@BastianHbner](https://forum.shopware.com/u/BastianHbner)\
**Post date:** [15. Januar 2021 um 07:57 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/10 "2021-01-15T07:57:17Z")

</div>

Hey vielen Dank für die Hilfe. Das hab ich nun soweit verstanden und mit associations auch umgesetzt bekommen. Zumindest auf einer unterebene. Ab der zweiten scheitert es jedoch, da ich dort nichts finde wie die association auszusehen hat.

Ich habe zum Beispiel folgende Asso:

Head:

[https://shopware6.next-levels.de/api/v3/search/order](https://shopware6.next-levels.de/api/v3/search/order)

Body:

&nbsp;“associations”:&nbsp;{

&nbsp;&nbsp;“deliveries”:&nbsp;{

&nbsp;&nbsp;&nbsp;“associations”:&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;“shippingOrderAddress”:&nbsp;

&nbsp;&nbsp; }},

&nbsp;“includes”:&nbsp;{

&nbsp;“order\_delivery”:&nbsp;[

&nbsp;&nbsp;&nbsp;“id”,“shippingOrderAddressId”,“shippingMethodId”]

&nbsp;}

&nbsp;

&nbsp;

damit bekomme ich alle order details und shippingmethod\_id. Problem ist, ich bräuchte den Namen der ShippingMethod. Ergo müsste ich irgednwie noch eine unter Association machen um daran zu kommen. Ist das überhaupt möglich?

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [2. Februar 2021 um 14:52 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/11 "2021-02-02T14:52:28Z")

</div>

Hallo,

das solltest du analog zur&nbsp;payment\_method hinzufügen.

```
 associations: ...

 "salesChannel": { "associations": { " **paymentMethods**": [] } },

```

…includes: …

```
 "sales\_channel": ["id","name"," **paymentMethodId","paymentMethods**"],

```

…

```
 " **payment\_method**": [**"id","name"** ,"formattedHandlerIdentifier"],

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![BastianHbner](https://avatars.discourse-cdn.com/v4/letter/b/5f8ce5/32.png) [@BastianHbner](https://forum.shopware.com/u/BastianHbner)\
**Post date:** [14. Mai 2021 um 09:19 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/12 "2021-05-14T09:19:08Z")

</div>

Hey Prochannel,

wir würden gerne für den Bestellabruf noch die GP-Gruppe auslesen.  
Wenn ich jedoch die association „orderCustomer“:{„associations“:{„customer“:}},  
mit rein nehme und das ganze im include „customer“:[„id“,„groupId“], auch noch mit rein nehme, bekomme ich dennoch keine Details des Kunden angezeigt. Hast du eine Idee was ich falsch mache?

---

<div class="post-metadata">

**Author:** ![Klimax](https://avatars.discourse-cdn.com/v4/letter/k/848f3c/32.png) [@Klimax](https://forum.shopware.com/u/Klimax)\
**Post date:** [19. November 2021 um 08:51 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/13 "2021-11-19T08:51:49Z")

</div>

Hallo zusammen,  
der Response sieht mittlerweile anders aus (es gibt kein „order\_line\_item“ oder „order\_address“ types). Wurde in der Endpoint mit einem Update die Struktur angepasst?

---

<div class="post-metadata">

**Author:** ![davhol86](https://avatars.discourse-cdn.com/v4/letter/d/c77e96/32.png) [@davhol86](https://forum.shopware.com/u/davhol86)\
**Post date:** [18. Mai 2022 um 17:11 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/14 "2022-05-18T17:11:57Z")

</div>

@BastianHbner könntest du den JSON-Body posten mit dem du es geschafft hast die Produkt Daten anzuzeigen? Ich stehe gerade vor demselben Problem und habe es nicht hinbekommen.

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/3X/5/c/5c9009fa57c66b019345e38f3d02501a4aeb1b57.png)

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [22. Juni 2022 um 13:05 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/15 "2022-06-22T13:05:12Z")

</div>

@davhol86: Hier ein Aufruf, in dem auch Produktdetails enthalten sind.

```auto
{"filter":[{"type":"equals","field":"order.stateMachineState.technicalName","value":"open"}],"associations":{"addresses":{"associations":{"country":[]}},"stateMachineState":{},"transactions":{"associations":{"stateMachineState":[]}},"salesChannel":{"associations":{"paymentMethods":[]}},"deliveries":{"associations":{"shippingOrderAddress":[]}},"orderCustomer":{},"lineItems":{"associations":{"product":[]}}},"includes":{"order":["id","orderNumber","createdAt","lineItems","billingAddressId","salesChannelId","addresses","deliveries","salesChannelId","salesChannel","stateMachineState","transactions","orderCustomer","shippingTotal"],"state_machine_state":["id","technicalName"],"sales_channel":["id","name","paymentMethodId","paymentMethods"],"payment_method":["id","name","formattedHandlerIdentifier"],"order_transaction":["id","stateMachineState"],"order_address":["id","firstName","lastName","street","zipcode","city","company","department","countryId","country","phoneNumber"],"country":["iso"],"order_customer":["email"],"order_delivery":["id","shippingOrderAddressId"],"order_line_item":["id","position","quantity","unitPrice","productId","product"],"product":["productNumber","name"]}}

```

Vielleicht hilft es etwas weiter.

---

<div class="post-metadata">

**Author:** ![hermetic](https://avatars.discourse-cdn.com/v4/letter/h/76d3ee/32.png) [@hermetic](https://forum.shopware.com/u/hermetic)\
**Post date:** [22. Juni 2022 um 15:22 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/16 "2022-06-22T15:22:39Z")

</div>

WOW! Nur wie bekomme ich denn die Adressfelder der ShippingAddress, also Straße etc.?

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [23. Juni 2022 um 14:34 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/17 "2022-06-23T14:34:55Z")

</div>

ist schon enthalten:

> [@ProChannel\_IT](#):
>
> `"deliveries":{"associations":{"shippingOrderAddress":[]}}`

---

<div class="post-metadata">

**Author:** ![ProChannel\_IT](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@ProChannel\_IT](https://forum.shopware.com/u/ProChannel_IT)\
**Post date:** [17. Oktober 2022 um 10:21 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/18 "2022-10-17T10:21:00Z")

</div>

neue Version.  
Diese beinhaltet nun die korrekte Zahlungs- und Versandart

```auto
{
    "associations": {
        "addresses": {
            "associations": {
                "country": []
            }
        },
        "transactions": {
            "associations": {
                "stateMachineState": [],
                "paymentMethod": []
            }
        },
        "salesChannel": {
            "associations": {}
        },
        "deliveries": {
            "associations": {
                "shippingOrderAddress": [],
                "shippingMethod": {
                    "associations": {
                        "deliveryTime": []
                    }
                }
            }
        },
        "orderCustomer": {},
        "lineItems": {
            "associations": {
                "product": []
            }
        }
    },
    "includes": {
        "order": [
            "id",
            "orderNumber",
            "createdAt",
            "lineItems",
            "billingAddressId",
            "salesChannelId",
            "addresses",
            "deliveries",
            "salesChannelId",
            "salesChannel",
            "stateMachineState",
            "transactions",
            "orderCustomer",
            "shippingTotal"
        ],
        "state_machine_state": [
            "id",
            "technicalName"
        ],
        "sales_channel": [
            "id",
            "name"
        ],
        "payment_method": [
            "id",
            "name",
            "formattedHandlerIdentifier"
        ],
        "shipping_method": [
            "id",
            "name",
            "deliveryTimeId",
            "deliveryTime"
        ],
        "order_transaction": [
            "id",
            "stateMachineState",
            "paymentMethodId",
            "paymentMethod"
        ],
        "order_address": [
            "id",
            "firstName",
            "lastName",
            "street",
            "zipcode",
            "city",
            "company",
            "department",
            "countryId",
            "country",
            "phoneNumber"
        ],
        "country": [
            "iso"
        ],
        "order_customer": [
            "email"
        ],
        "order_delivery": [
            "id",
            "shippingOrderAddressId",
            "shippingMethodId",
            "shippingMethod"
        ],
        "order_line_item": [
            "id",
            "position",
            "quantity",
            "unitPrice",
            "productId",
            "product",
            "payload"
        ],
        "product": [
            "productNumber",
            "name"
        ]
    }
}

```

---

<div class="post-metadata">

**Author:** ![todr](https://avatars.discourse-cdn.com/v4/letter/t/e36b37/32.png) [@todr](https://forum.shopware.com/u/todr)\
**Post date:** [4. September 2023 um 22:06 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/19 "2023-09-04T22:06:01Z")

</div>

Das hat mich echt weitergeholfen. Allerdings benötige ich Hilfe beim Auslesen der Kundengruppe des Kunden, sowie das Geburtsdatum. Danke

---

<div class="post-metadata">

**Author:** ![homa57](https://avatars.discourse-cdn.com/v4/letter/h/a698b9/32.png) [@homa57](https://forum.shopware.com/u/homa57)\
**Post date:** [7. September 2023 um 09:17 UTC](https://forum.shopware.com/t/rest-api-alle-bestellungsinfos-auslesen/70855/20 "2023-09-07T09:17:51Z")

</div>

Wie kann ich denn die „payload“ weiter einschränken? Ich brauche daraus nur 2-3 Felder und nicht den ganzen Rest.  
Mir fehlt hier irgendwie der passende „apiAlias“, oder?  
Wäre für ein Beispiel dankbar.
