eway Payment gateway no such entity with cartid Magento 2.4.6

1k views Asked by At

We're in the process of upgrading Magento from 2.4.2 to 2.4.6

We have everything working except the eWay payement gateway.

Payments are processed as normal but after the payment is made the customer is redirected to an empty cart page with the error:

no such entity with cartid XXX

All other payment gateways work i.e. PayPal, ZIP, credit memo etc.

Looks like this is an issue with the official eway module but they will not offer any support.

error from logs below with stack trace

Any help to debug this would be greatly appreciated.

Have already tried everything online that references the error code but looks like lots of different issues can cause this code to pop up.

We had Mageplaza smtp and this is now also disabled as one post referanced this as a possible.

Thanks in advance

Site spec Magento 2.4.6 Php 8.1

Tried placing order

Expected to land on Magento success page

Actually landed on empty cart page with error message no such entity with cartid XXX

main.CRITICAL: Placing an order with quote_id 7kwrwEc19cYADHzoyLPvlMYVwCkg1Poc is failed: No such entity with cartId = 37572 [] []

Stack trace: #0 //vendor/magento/framework/Exception/NoSuchEntityException.php(36): Magento\Framework\App\ErrorHandler->handler() #1 //vendor/magento/module-gift-message/Model/OrderRepository.php(93): Magento\Framework\Exception\NoSuchEntityException->__construct() #2 //vendor/magento/module-gift-message/Model/Plugin/OrderGet.php(87): Magento\GiftMessage\Model\OrderRepository->get() #3 //vendor/magento/module-gift-message/Model/Plugin/OrderGet.php(66): Magento\GiftMessage\Model\Plugin\OrderGet->getOrderGiftMessage() #4 //vendor/magento/framework/Interception/Interceptor.php(146): Magento\GiftMessage\Model\Plugin\OrderGet->afterGet() #5 //vendor/magento/framework/Interception/Interceptor.php(153): Magento\Sales\Model\OrderRepository\Interceptor->Magento\Framework\Interception{closure}() #6 //generated/code/Magento/Sales/Model/OrderRepository/Interceptor.php(23): Magento\Sales\Model\OrderRepository\Interceptor->___callPlugins() #7 //vendor/magento/module-sales/Block/Order/Email/Items.php(66): Magento\Sales\Model\OrderRepository\Interceptor->get() #8 //var/view_preprocessed/pub/static/vendor/magento/module-sales/view/frontend/templates/email/items.phtml(1): Magento\Sales\Block\Order\Email\Items->getOrder() #9 //vendor/magento/framework/View/TemplateEngine/Php.php(71): include('/home/988668.cl...') #10 //vendor/magento/framework/View/Element/Template.php(263): Magento\Framework\View\TemplateEngine\Php->render() #11 //vendor/magento/framework/View/Element/Template.php(293): Magento\Framework\View\Element\Template->fetchView() #12 //vendor/magento/framework/View/Element/AbstractBlock.php(1095): Magento\Framework\View\Element\Template->_toHtml() #13 //vendor/magento/framework/View/Element/AbstractBlock.php(1099): Magento\Framework\View\Element\AbstractBlock->Magento\Framework\View\Element{closure}() #14 //vendor/magento/framework/View/Element/AbstractBlock.php(660): Magento\Framework\View\Element\AbstractBlock->_loadCache() #15 //vendor/magento/framework/View/Layout.php(578): Magento\Framework\View\Element\AbstractBlock->toHtml() #16 //vendor/magento/framework/View/Layout.php(555): Magento\Framework\View\Layout->_renderBlock() #17 //vendor/magento/framework/View/Layout.php(510): Magento\Framework\View\Layout->renderNonCachedElement() #18 //vendor/magento/framework/View/Layout.php(975): Magento\Framework\View\Layout->renderElement() #19 //generated/code/Magento/Framework/View/Layout/Interceptor.php(41): Magento\Framework\View\Layout->getOutput() #20 //vendor/magento/module-email/Model/Template/Filter.php(502): Magento\Framework\View\Layout\Interceptor->getOutput() #21 [internal function]: Magento\Email\Model\Template\Filter->emulateAreaCallback() #22 //vendor/magento/framework/App/State.php(187): call_user_func_array() #23 //vendor/magento/module-email/Model/Template/Filter.php(458): Magento\Framework\App\State->emulateAreaCode() #24 [internal function]: Magento\Email\Model\Template\Filter->layoutDirective() #25 //vendor/magento/framework/Filter/DirectiveProcessor/LegacyDirective.php(42): ReflectionMethod->invokeArgs() #26 //vendor/magento/framework/Filter/Template.php(272): Magento\Framework\Filter\DirectiveProcessor\LegacyDirective->process() #27 //vendor/magento/framework/Filter/Template.php(206): Magento\Framework\Filter\Template->processDirectives() #28 //vendor/magento/module-email/Model/Template/Filter.php(1116): Magento\Framework\Filter\Template->filter() #29 //vendor/magento/framework/Interception/Interceptor.php(58): Magento\Email\Model\Template\Filter->filter() #30 //vendor/magento/framework/Interception/Interceptor.php(138): Magento\Email\Model\Template\Filter\Interceptor->___callParent() #31 //vendor/magento/framework/Interception/Interceptor.php(153): Magento\Email\Model\Template\Filter\Interceptor->Magento\Framework\Interception{closure}() #32 //generated/code/Magento/Email/Model/Template/Filter/Interceptor.php(32): Magento\Email\Model\Template\Filter\Interceptor->___callPlugins() #33 //vendor/magento/module-email/Model/AbstractTemplate.php(363): Magento\Email\Model\Template\Filter\Interceptor->filter() #34 //vendor/magento/module-email/Model/Template.php(380): Magento\Email\Model\AbstractTemplate->getProcessedTemplate() #35 //vendor/magento/framework/Mail/Template/TransportBuilder.php(380): Magento\Email\Model\Template->processTemplate() #36 //vendor/magento/framework/Mail/Template/TransportBuilder.php(336): Magento\Framework\Mail\Template\TransportBuilder->prepareMessage() #37 //generated/code/Magento/Framework/Mail/Template/TransportBuilder/Interceptor.php(41): Magento\Framework\Mail\Template\TransportBuilder->getTransport() #38 //vendor/magento/module-sales/Model/Order/Email/SenderBuilder.php(91): Magento\Framework\Mail\Template\TransportBuilder\Interceptor->getTransport() #39 //vendor/magento/module-sales/Model/Order/Email/Sender.php(93): Magento\Sales\Model\Order\Email\SenderBuilder->sendCopyTo() #40 //vendor/magento/module-sales/Model/Order/Email/Sender/OrderSender.php(108): Magento\Sales\Model\Order\Email\Sender->checkAndSend() #41 //vendor/magento/module-sales/Model/EmailSenderHandler.php(134): Magento\Sales\Model\Order\Email\Sender\OrderSender->send() #42 //vendor/magento/module-sales/Cron/SendEmails.php(46): Magento\Sales\Model\EmailSenderHandler->sendEmails() #43 [internal function]: Magento\Sales\Cron\SendEmails->execute() #44 //vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php(368): call_user_func_array() #45 //vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php(879): Magento\Cron\Observer\ProcessCronQueueObserver->_runJob() #46 //vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php(840): Magento\Cron\Observer\ProcessCronQueueObserver->tryRunJob() #47 //vendor/magento/module-cron/Observer/ProcessCronQueueObserver.php(280): Magento\Cron\Observer\ProcessCronQueueObserver->processPendingJobs() #48 //vendor/magento/framework/Event/Invoker/InvokerDefault.php(88): Magento\Cron\Observer\ProcessCronQueueObserver->execute() #49 //vendor/magento/framework/Event/Invoker/InvokerDefault.php(74): Magento\Framework\Event\Invoker\InvokerDefault->_callObserverMethod() #50 //vendor/magento/framework/Event/Manager.php(65): Magento\Framework\Event\Invoker\InvokerDefault->dispatch() #51 //generated/code/Magento/Framework/Event/Manager/Proxy.php(95): Magento\Framework\Event\Manager->dispatch() #52 //vendor/magento/framework/App/Cron.php(86): Magento\Framework\Event\Manager\Proxy->dispatch() #53 //vendor/magento/module-cron/Console/Command/CronCommand.php(126): Magento\Framework\App\Cron->launch() #54 //vendor/symfony/console/Command/Command.php(298): Magento\Cron\Console\Command\CronCommand->execute() #55 //vendor/magento/framework/Interception/Interceptor.php(58): Symfony\Component\Console\Command\Command->run() #56 //vendor/magento/framework/Interception/Interceptor.php(138): Magento\Cron\Console\Command\CronCommand\Interceptor->___callParent() #57 //vendor/magento/framework/Interception/Interceptor.php(153): Magento\Cron\Console\Command\CronCommand\Interceptor->Magento\Framework\Interception{closure}() #58 //generated/code/Magento/Cron/Console/Command/CronCommand/Interceptor.php(23): Magento\Cron\Console\Command\CronCommand\Interceptor->___callPlugins() #59 //vendor/symfony/console/Application.php(1040): Magento\Cron\Console\Command\CronCommand\Interceptor->run() #60 //vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand() #61 //vendor/magento/framework/Console/Cli.php(116): Symfony\Component\Console\Application->doRun() #62 //vendor/symfony/console/Application.php(171): Magento\Framework\Console\Cli->doRun() #63 //bin/magento(23): Symfony\Component\Console\Application->run() #64 {main} {"exception":"[object] (Exception(code: 0): Warning: Undefined array key "file" in //vendor/magento/framework/Exception/NoSuchEntityException.php on line 36 at //vendor/magento/framework/App/ErrorHandler.php:62)"} []

2

There are 2 answers

1
Rajat On

Please follow these steps:

  1. please rename the vendor folder
  2. After renaming the vendor folder, you run the " composer update " command.
  3. Run Magento Main commands: php bin/magento s:up; php bin/magento s:di:c; php bin/magento s:static-content:deploy -f; php bin/magento c:f
1
Dũng LA On

my solution dev/grid/async_indexing = 0; It works. So I don't know if it has any effect.