Shopware Backend Bestellungen Serverfehler Error 500

Erhält man im Backend von Shopware in der Übersicht der Bestellungen (Kunden->Bestellungen) einen AJAX-Fehler (Error 500) und kann nicht alle Kundenbestellungen ansehen, empfiehlt es sich, in den Shopware-Errorlogs (direkt im Backend oder über var/log/) nachzusehen. Bei uns deutete der Fehler darauf hin, dass es Probleme mit dem Zahlungsstatus gibt. Die genaue Fehlermeldung im Logfile lautete:

 

PHP Fatal error:  Uncaught TypeError: Argument 2 passed to Shopware\Components\StateTranslatorService::translateState() must be of the type array, null given, called in /engine/Shopware/Controllers/Backend/Order.php on line 1364 and defined in /engine/Shopware/Components/StateTranslatorService.php:58. Hier war also anscheinend ein Payment-Status in einer Bestellung vorhanden, der im System nicht verarbeitet werden konnte. Wenn man in diesem Fall die vorhandenen Status in der Tabelle s_order in der Spalte "cleared" mit den Einträgen in der Tabelle s_core_states vergleicht, findet man die Fehlerquelle (hoffentlich) leicht. Denn wenn in der Tabelle s_order eine ID eingetragen ist, die es in der s_core_states nicht vorhanden ist, kommt es zu eben diesem Fehler. Löscht man die betreffenden Bestellungen bzw. ändert man den Status in der Spalte "cleared", ist alles wieder funktionsfähig.