I am also having a similar problem but in my case, it is only third party payment.
I am using Magento 2.3.3 default one-step checkout. Full-page cache enabled and Redis is configured, the session is saved in DB.
'session' => [ 'save' => 'db' ], 'cache' => [ 'frontend' => [ 'default' => [ 'id_prefix' => 'aa_', 'backend' => 'Cm_Cache_Backend_Redis', 'backend_options' => [ 'server' => '127.0.0.1', 'database' => '0', 'port' => '6379', 'password' => '', 'compress_data' => '1', 'compression_lib' => '' ] ], 'page_cache' => [ 'id_prefix' => 'aa_', 'backend' => 'Cm_Cache_Backend_Redis', 'backend_options' => [ 'server' => '127.0.0.1', 'database' => '1', 'port' => '6379', 'password' => '', 'compress_data' => '0', 'compression_lib' => '' ] ] ] ],
Paypal and Bank transfer do take me to welcome page but no third party payment like eWay, AfterPay, ZipPay.
Last quote id is lost somewhere.
Any idea guys?
Hi @markus_korporal ,
we have the same problem with i-ways and Magento 2.3.2.
Can you explain, what changes you have made with your workaround?
can you check if there any 3rd party module is implemented using event observer for success page like
you can check that by following :
find app -name events.xml | xargs grep checkout_onepage_controller_success_action
it will give you all events.xml files which contains
check observer for that if they have coded to reset/reinitialized the session. try to disable the extension and place an order.
because on success page default Magento checks for the last success order id on the success page and it will redirect to cart in case of not found.
This error can also becaused by a wrong plugin. Each plugin has to return the same element as the "parent" returns.
Check if there are plugins in your app which are not returning anything.
Unfortunately it wasn't an observer or plugin. It was very weird. I'm hoping it never occurs again.