Api - Filter auf Bestellungen bestimmter Zeitraum - Order CreatedAt + X Minuten

Moin,

wir würden gerne die Bestellungen ein wenig zeitverzögert abholen, da es zu Problemen mit Bestellungen kommt, die mit Paypal bezahlt werden und dann failen.
Shopware legt bei verlassen den Shops schon ein Bestellung an, die dann via Cron vom ERP geholt wird.

Wir müssten dazu unsere Schnittstellenabfrage auf {{shopware-domain}}/api/v3/search/order anpassen, so das wir alle neuen Bestellungen mit order.createdAt + 15 Minuten abholen wollen, damit die wirklich abgeschlossen sind.

Aktuell nutzen wir u.a. schon folgende Filter:

„filter“: [

{ „type“: „range“, „field“: „orderNumber“, „parameters“: {

    „lte“: 170000000,

    „gte“: 180000000}

},

{ „type“: „not“, „operator“: „OR“, „queries“:[

        {„type“: „equals“, „field“: „transactions.stateMachineState.technicalName“, „value“: „cancelled“},

        {„type“: „equals“, „field“: „transactions.stateMachineState.technicalName“, „value“: „failed“}

    ]

}

]

Jetzt bräuchten wir noch einen Filter auf order.createdAt.

Ich habe dazu nichts finden können, wie ein Filter auf DateTime umgesetzt werden könnte. Habt Ihr nen Ansatz dazu?

Danke

  

Das klingt eher nach einem Workaround als eine Lösung. Wieso filterst du nicht auf bezahlte Bestellungen?

Weil nicht alle Bestellungen sofort bezahlt sind (Vorkasse/Rechung)

Der Filter muss anscheinend nur so aussehen:

{ „type“: „range“, „field“: „createdAt“, „parameters“: {

    „lte“: „2021-01-17T12:00:00.333+00:00“}

},

 

Das Datetime muss ich vorher als Datetime-Variable (now()-15Minuten) setzen.

Nen anderen Ansatz habe ich nicht gefunden.