yoomoney / cms-drupal8 Goto Github PK
View Code? Open in Web Editor NEWYooKassa payment module for Drupal 8.x
Home Page: https://yookassa.ru/developers
YooKassa payment module for Drupal 8.x
Home Page: https://yookassa.ru/developers
При
composer require drupal/commerce_yookassa
получаю:
$ composer update
Gathering patches for root package.
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.Problem 1
- Root composer.json requires drupal/commerce_yookassa, it could not be found in any version, there may be a typo in the package name.Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see https://getcomposer.org/doc/04-schema.md#minimum-stability for more details.- It's a private package and you forgot to add a custom repository to find it
Read https://getcomposer.org/doc/articles/troubleshooting.md for further common problems.
Если добавить репозиторий, то всё работает, но это не удобно.
При GET переходе по ссылке /payment/notify/yookassa пишет:
The website encountered an unexpected error. Please try again later.
Может лучше выдавать access denied
?
После оплаты платежу не устанавливается Completed и, соответственно, заказу тоже не устанавливается Completed.
А устанавливается только после нажатия кнопки "Вернуться в магазин".
А если пользователь просто закроет эту вкладку, то в системе заказ останется в состоянии Draft.
Считаю данную ошибку критической.
Ну нужно дублировать в public function onReturn(OrderInterface $order, Request $request)
действия из onNotify().
Так как повторно вызываются события, например, OrderEvents::ORDER_PAID
.
Говорит:
Данная версия несовместима с Drupal 9.1.7-dev и должна быть заменена.
И действительно, в yookassa.info.yml видим:
core: 8.x
И как же быть?
YooKassa
требует модуль Rules
в файле yookassa.info.yml
:
dependencies:
...
- rules
Но многие не используют модуль rules
. Он должен быть опциональным.
Добрый!
Для неавторизованного пользователя после просмотра заказа и попытке перехода на сайт яндекса для оплаты выходит ошибка:
YandexCheckout\Common\Exceptions\InvalidRequestException: Failed to build request "YandexCheckout\Request\Payments\CreatePaymentRequest": "Both email and phone values are empty in receipt" in YandexCheckout\Common\AbstractRequestBuilder->build() (line 75 of /site.ru/vendor/yandex-money/yandex-checkout-sdk-php/lib/Common/AbstractRequestBuilder.php).
Для авторизованного покупателя все работает хорошо.
Drupal 8.6.4
Commerce 8.x-2.11
Yandex Checkout Module 1.0.0
SDK updated
$yookassaConfig = \Drupal::config('commerce_payment.commerce_payment_gateway.yookassa')->getOriginal('configuration');
Название конфигурации забито прямо в исходнике. Например, у меня шлюз называется не yookassa
, а yookassa_ru
.
Ошибка:
Warning: Trying to access array offset on value of type null в Drupal\yookassa\EventSubscriber\YooKassaEventSubscriber->__construct() (строка 56 из /var/www/lom/web/modules/contrib/commerce_yookassa/src/EventSubscriber/YooKassaEventSubscriber.php)
#0 /var/www/lom/web/core/includes/bootstrap.inc(346): _drupal_error_handler_real()
#1 /var/www/lom/web/modules/contrib/commerce_yookassa/src/EventSubscriber/YooKassaEventSubscriber.php(56): _drupal_error_handler()
#2 /var/www/lom/web/core/lib/Drupal/Component/DependencyInjection/Container.php(262): Drupal\yookassa\EventSubscriber\YooKassaEventSubscriber->__construct()
#3 /var/www/lom/web/core/lib/Drupal/Component/DependencyInjection/Container.php(176): Drupal\Component\DependencyInjection\Container->createService()
#4 /var/www/lom/web/modules/contrib/devel/webprofiler/src/DependencyInjection/TraceableContainer.php(50): Drupal\Component\DependencyInjection\Container->get()
#5 /var/www/lom/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(136): Drupal\webprofiler\DependencyInjection\TraceableContainer->get()
#6 /var/www/lom/web/modules/contrib/commerce/src/CommerceContentEntityStorage.php(60): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch()
#7 /var/www/lom/web/modules/contrib/commerce/modules/order/src/OrderStorage.php(64): Drupal\commerce\CommerceContentEntityStorage->invokeHook()
#8 /var/www/lom/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(567): Drupal\commerce_order\OrderStorage->invokeHook()
#9 /var/www/lom/web/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php(750): Drupal\Core\Entity\EntityStorageBase->doPreSave()
#10 /var/www/lom/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(521): Drupal\Core\Entity\ContentEntityStorageBase->doPreSave()
#11 /var/www/lom/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php(802): Drupal\Core\Entity\EntityStorageBase->save()
#12 /var/www/lom/web/core/lib/Drupal/Core/Entity/EntityBase.php(339): Drupal\Core\Entity\Sql\SqlContentEntityStorage->save()
#13 /var/www/rg_common/modules/rg_balance/modules/rg_balance_commerce/src/Form/DepositForm.php(163): Drupal\Core\Entity\EntityBase->save()
#14 [internal function]: Drupal\rg_balance_commerce\Form\DepositForm->submitForm()
#15 /var/www/lom/web/core/lib/Drupal/Core/Form/FormSubmitter.php(114): call_user_func_array()
#16 /var/www/lom/web/core/lib/Drupal/Core/Form/FormSubmitter.php(52): Drupal\Core\Form\FormSubmitter->executeSubmitHandlers()
#17 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(592): Drupal\Core\Form\FormSubmitter->doSubmitForm()
#18 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(320): Drupal\Core\Form\FormBuilder->processForm()
#19 /var/www/lom/web/core/lib/Drupal/Core/Controller/FormController.php(73): Drupal\Core\Form\FormBuilder->buildForm()
#20 [internal function]: Drupal\Core\Controller\FormController->getContentResult()
#21 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
#22 /var/www/lom/web/core/lib/Drupal/Core/Render/Renderer.php(564): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}()
#23 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext()
#24 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
#25 /var/www/lom/vendor/symfony/http-kernel/HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}()
#26 /var/www/lom/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#27 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle()
#28 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#29 /var/www/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#30 /var/www/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#31 /var/www/lom/web/core/modules/ban/src/BanMiddleware.php(50): Drupal\page_cache\StackMiddleware\PageCache->handle()
#32 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\ban\BanMiddleware->handle()
#33 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#34 /var/www/lom/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#35 /var/www/lom/web/core/lib/Drupal/Core/DrupalKernel.php(708): Stack\StackedHttpKernel->handle()
#36 /var/www/lom/web/index.php(19): Drupal\Core\DrupalKernel->handle()
#37 {main}
Было бы очень полезно проверять работоспособность также с нестандартным id шлюза. Так как для нескольких стран могут быть, например, id = yookassa_ru
, yookassa_kz
и т.д.
Пакет: drupal/commerce_yookassa
Модуль: yookassa
В Drupal подразумевается, что название пакета должно быть равно названию модуля.
В итоге получается так:
[email protected]:/var/www/ololo $ drush en commerce_yookassa
In PmCommands.php line 316:
Unable to install modules commerce_yookassa due to missing modules commerce
_yookassa.
[email protected]:/var/www/ololo $ drush en yookassa
[success] Successfully enabled: yookassa
Думаю, имеет смысл заменить название модуля на commerce_yookassa
, чтобы не вводить админов в заблуждение :)
Когда я добавляю новый платёжный шлюз, и если в блоке "Условия" нажимать любые чекбоксы, то вылезает ошибка:
Тип | php
четверг, 7 октября 2021 - 17:33
Администратор
Место: http://ru.lom.localhost/admin/commerce/config/payment-gateways/add?_wrapper_format=drupal_ajax&ajax_form=1
Источник отсылки: http://ru.lom.localhost/admin/commerce/config/payment-gateways/add
Error: Call to a member function id() on null в Drupal\commerce_payment\Plugin\Commerce\PaymentGateway\OffsitePaymentGatewayBase->getNotifyUrl() (строка 19 из /var/www/lom/web/modules/contrib/commerce/modules/payment/src/Plugin/Commerce/PaymentGateway/OffsitePaymentGatewayBase.php)
#0 /var/www/lom/web/modules/contrib/commerce_yookassa/src/Plugin/Commerce/PaymentGateway/YooKassa.php(248): Drupal\commerce_payment\Plugin\Commerce\PaymentGateway\OffsitePaymentGatewayBase->getNotifyUrl()
#1 /var/www/lom/web/modules/contrib/commerce/src/Plugin/Commerce/InlineForm/PluginConfiguration.php(104): Drupal\yookassa\Plugin\Commerce\PaymentGateway\YooKassa->buildConfigurationForm()
#2 /var/www/lom/web/modules/contrib/commerce/modules/payment/src/Form/PaymentGatewayForm.php(129): Drupal\commerce\Plugin\Commerce\InlineForm\PluginConfiguration->buildInlineForm()
#3 /var/www/lom/web/core/lib/Drupal/Core/Entity/EntityForm.php(106): Drupal\commerce_payment\Form\PaymentGatewayForm->form()
#4 /var/www/lom/web/modules/contrib/commerce/modules/payment/src/Form/PaymentGatewayForm.php(65): Drupal\Core\Entity\EntityForm->buildForm()
#5 [internal function]: Drupal\commerce_payment\Form\PaymentGatewayForm->buildForm()
#6 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(532): call_user_func_array()
#7 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(371): Drupal\Core\Form\FormBuilder->retrieveForm()
#8 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(629): Drupal\Core\Form\FormBuilder->rebuildForm()
#9 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(321): Drupal\Core\Form\FormBuilder->processForm()
#10 /var/www/lom/web/core/lib/Drupal/Core/Controller/FormController.php(73): Drupal\Core\Form\FormBuilder->buildForm()
#11 /var/www/lom/web/core/modules/layout_builder/src/Controller/LayoutBuilderHtmlEntityFormController.php(39): Drupal\Core\Controller\FormController->getContentResult()
#12 [internal function]: Drupal\layout_builder\Controller\LayoutBuilderHtmlEntityFormController->getContentResult()
#13 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
#14 /var/www/lom/web/core/lib/Drupal/Core/Render/Renderer.php(578): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}()
#15 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext()
#16 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
#17 /var/www/lom/vendor/symfony/http-kernel/HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}()
#18 /var/www/lom/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#19 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/Session.php(57): Symfony\Component\HttpKernel\HttpKernel->handle()
#20 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle()
#21 /var/www/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#22 /var/www/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#23 /var/www/lom/web/core/modules/ban/src/BanMiddleware.php(50): Drupal\page_cache\StackMiddleware\PageCache->handle()
#24 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\ban\BanMiddleware->handle()
#25 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#26 /var/www/lom/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#27 /var/www/lom/web/core/lib/Drupal/Core/DrupalKernel.php(717): Stack\StackedHttpKernel->handle()
#28 /var/www/lom/web/index.php(19): Drupal\Core\DrupalKernel->handle()
#29 {main}
.
После установки флажка "Отправлять в ЮKassa данные для чеков (54-ФЗ)" при оплате появляется ошибка:
Место | http://ru.lom.localhost/checkout/11853/payment
Источник отсылки | http://ru.lom.localhost/checkout/11853/order_information
TypeError: array_keys(): Argument #1 ($array) must be of type array, string given в array_keys() (строка 83 из /var/www/lom/web/modules/contrib/commerce_yookassa/src/PluginForm/YooKassa/PaymentOffsiteForm.php)#0 /var/www/lom/web/modules/contrib/commerce_yookassa/src/PluginForm/YooKassa/PaymentOffsiteForm.php(83): array_keys() #1 /var/www/lom/web/modules/contrib/commerce/modules/payment/src/Plugin/Commerce/InlineForm/PaymentGatewayForm.php(108): Drupal\yookassa\PluginForm\YooKassa\PaymentOffsiteForm->buildConfigurationForm() #2 /var/www/lom/web/modules/contrib/commerce/modules/payment/src/Plugin/Commerce/CheckoutPane/PaymentProcess.php(218): Drupal\commerce_payment\Plugin\Commerce\InlineForm\PaymentGatewayForm->buildInlineForm() #3 /var/www/lom/web/modules/contrib/commerce/modules/checkout/src/Plugin/Commerce/CheckoutFlow/CheckoutFlowWithPanesBase.php(546): Drupal\commerce_payment\Plugin\Commerce\CheckoutPane\PaymentProcess->buildPaneForm() #4 [internal function]: Drupal\commerce_checkout\Plugin\Commerce\CheckoutFlow\CheckoutFlowWithPanesBase->buildForm() #5 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(532): call_user_func_array() #6 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(278): Drupal\Core\Form\FormBuilder->retrieveForm() #7 /var/www/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(219): Drupal\Core\Form\FormBuilder->buildForm() #8 /var/www/lom/web/modules/contrib/commerce/modules/checkout/src/Controller/CheckoutController.php(143): Drupal\Core\Form\FormBuilder->getForm() #9 [internal function]: Drupal\commerce_checkout\Controller\CheckoutController->formPage() #10 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array() #11 /var/www/lom/web/core/lib/Drupal/Core/Render/Renderer.php(578): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}() #12 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext() #13 /var/www/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext() #14 /var/www/lom/vendor/symfony/http-kernel/HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}() #15 /var/www/lom/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw() #16 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/Session.php(57): Symfony\Component\HttpKernel\HttpKernel->handle() #17 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle() #18 /var/www/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle() #19 /var/www/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass() #20 /var/www/lom/web/core/modules/ban/src/BanMiddleware.php(50): Drupal\page_cache\StackMiddleware\PageCache->handle() #21 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\ban\BanMiddleware->handle() #22 /var/www/lom/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() #23 /var/www/lom/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() #24 /var/www/lom/web/core/lib/Drupal/Core/DrupalKernel.php(717): Stack\StackedHttpKernel->handle() #25 /var/www/lom/web/index.php(19): Drupal\Core\DrupalKernel->handle() #26 {main}.
Добрый день!
В инструкции написано что необходимо скачать архив и сохранить в sites/all/modules
, по правилам хорошего тона и для тех кто работает с drupal через composer правильно будет сохранять кастомный модуль в соответствующую папку sites/all/modules/custom
Что бы активировать модуль необходима библиотека Yandex Checkout SDK
Для установки через composer composer require yandex-money/yandex-checkout-sdk-php
Предупреждение при окончании успешного платежа.
Тип | php
понедельник, 10 января 2022 - 13:10
Гость (не проверено)
https://xn----7sblvlgns.xn--p1ai/payment/notify/yookassa_ru
Warning: Trying to access array offset on value of type null в Drupal\yookassa\EventSubscriber\YooKassaEventSubscriber->onSendSecondReceipt() (строка 99 из /DATA/home-sites/lom/web/modules/contrib/commerce_yookassa/src/EventSubscriber/YooKassaEventSubscriber.php)
#0 /DATA/home-sites/lom/web/core/includes/bootstrap.inc(346): _drupal_error_handler_real(2, 'Trying to acces...', '/DATA/home-site...', 99)
#1 /DATA/home-sites/lom/web/modules/contrib/commerce_yookassa/src/EventSubscriber/YooKassaEventSubscriber.php(99): _drupal_error_handler(2, 'Trying to acces...', '/DATA/home-site...', 99)
#2 [internal function]: Drupal\yookassa\EventSubscriber\YooKassaEventSubscriber->onSendSecondReceipt(Object(Drupal\commerce_order\Event\OrderEvent), 'commerce_order....', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#3 /DATA/home-sites/lom/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(142): call_user_func(Array, Object(Drupal\commerce_order\Event\OrderEvent), 'commerce_order....', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#4 /DATA/home-sites/lom/web/modules/contrib/commerce/src/CommerceContentEntityStorage.php(60): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object(Drupal\commerce_order\Event\OrderEvent), 'commerce_order....')
#5 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/order/src/OrderStorage.php(64): Drupal\commerce\CommerceContentEntityStorage->invokeHook('presave', Object(Drupal\commerce_order\Entity\Order))
#6 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(567): Drupal\commerce_order\OrderStorage->invokeHook('presave', Object(Drupal\commerce_order\Entity\Order))
#7 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php(750): Drupal\Core\Entity\EntityStorageBase->doPreSave(Object(Drupal\commerce_order\Entity\Order))
#8 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(521): Drupal\Core\Entity\ContentEntityStorageBase->doPreSave(Object(Drupal\commerce_order\Entity\Order))
#9 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php(802): Drupal\Core\Entity\EntityStorageBase->save(Object(Drupal\commerce_order\Entity\Order))
#10 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/EntityBase.php(339): Drupal\Core\Entity\Sql\SqlContentEntityStorage->save(Object(Drupal\commerce_order\Entity\Order))
#11 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/payment/src/PaymentOrderUpdater.php(95): Drupal\Core\Entity\EntityBase->save()
#12 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/payment/src/PaymentOrderUpdater.php(59): Drupal\commerce_payment\PaymentOrderUpdater->updateOrder(Object(Drupal\commerce_order\Entity\Order), true)
#13 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/payment/src/PaymentOrderUpdater.php(106): Drupal\commerce_payment\PaymentOrderUpdater->updateOrders()
#14 /DATA/home-sites/lom/web/core/lib/Drupal/Core/EventSubscriber/KernelDestructionSubscriber.php(51): Drupal\commerce_payment\PaymentOrderUpdater->destruct()
#15 [internal function]: Drupal\Core\EventSubscriber\KernelDestructionSubscriber->onKernelTerminate(Object(Symfony\Component\HttpKernel\Event\TerminateEvent), 'kernel.terminat...', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#16 /DATA/home-sites/lom/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(142): call_user_func(Array, Object(Symfony\Component\HttpKernel\Event\TerminateEvent), 'kernel.terminat...', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#17 /DATA/home-sites/lom/vendor/symfony/http-kernel/HttpKernel.php(100): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object(Symfony\Component\HttpKernel\Event\TerminateEvent), 'kernel.terminat...')
#18 /DATA/home-sites/lom/vendor/stack/builder/src/Stack/StackedHttpKernel.php(32): Symfony\Component\HttpKernel\HttpKernel->terminate(Object(Symfony\Component\HttpFoundation\Request), Object(Symfony\Component\HttpFoundation\Response))
#19 /DATA/home-sites/lom/web/core/lib/Drupal/Core/DrupalKernel.php(686): Stack\StackedHttpKernel->terminate(Object(Symfony\Component\HttpFoundation\Request), Object(Symfony\Component\HttpFoundation\Response))
#20 /DATA/home-sites/lom/web/index.php(22): Drupal\Core\DrupalKernel->terminate(Object(Symfony\Component\HttpFoundation\Request), Object(Symfony\Component\HttpFoundation\Response))
#21 {main}.
Идентификатор платежа: 296e1983-000f-5000-9000-13870e0406cc
У меня флажок Отправлять второй чек
не поставлен.
Выходит предупреждение:
Место | /checkout/12299/payment
Источник отсылки | /checkout/12299/order_information
Warning: Undefined array key "second_receipt_enabled" в Drupal\yookassa\EventSubscriber\YooKassaEventSubscriber->onSendSecondReceipt() (строка 112 из /DATA/home-sites/lom/web/modules/contrib/commerce_yookassa/src/EventSubscriber/YooKassaEventSubscriber.php)
#0 /DATA/home-sites/lom/web/core/includes/bootstrap.inc(346): _drupal_error_handler_real(2, 'Undefined array...', '/DATA/home-site...', 112)
#1 /DATA/home-sites/lom/web/modules/contrib/commerce_yookassa/src/EventSubscriber/YooKassaEventSubscriber.php(112): _drupal_error_handler(2, 'Undefined array...', '/DATA/home-site...', 112)
#2 [internal function]: Drupal\yookassa\EventSubscriber\YooKassaEventSubscriber->onSendSecondReceipt(Object(Drupal\commerce_order\Event\OrderEvent), 'commerce_order....', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#3 /DATA/home-sites/lom/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(142): call_user_func(Array, Object(Drupal\commerce_order\Event\OrderEvent), 'commerce_order....', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#4 /DATA/home-sites/lom/web/modules/contrib/commerce/src/CommerceContentEntityStorage.php(60): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object(Drupal\commerce_order\Event\OrderEvent), 'commerce_order....')
#5 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/order/src/OrderStorage.php(64): Drupal\commerce\CommerceContentEntityStorage->invokeHook('presave', Object(Drupal\commerce_order\Entity\Order))
#6 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(567): Drupal\commerce_order\OrderStorage->invokeHook('presave', Object(Drupal\commerce_order\Entity\Order))
#7 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php(750): Drupal\Core\Entity\EntityStorageBase->doPreSave(Object(Drupal\commerce_order\Entity\Order))
#8 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(521): Drupal\Core\Entity\ContentEntityStorageBase->doPreSave(Object(Drupal\commerce_order\Entity\Order))
#9 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php(802): Drupal\Core\Entity\EntityStorageBase->save(Object(Drupal\commerce_order\Entity\Order))
#10 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Entity/EntityBase.php(339): Drupal\Core\Entity\Sql\SqlContentEntityStorage->save(Object(Drupal\commerce_order\Entity\Order))
#11 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/checkout/src/Plugin/Commerce/CheckoutFlow/CheckoutFlowBase.php(198): Drupal\Core\Entity\EntityBase->save()
#12 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/payment/src/Plugin/Commerce/CheckoutPane/PaymentProcess.php(232): Drupal\commerce_checkout\Plugin\Commerce\CheckoutFlow\CheckoutFlowBase->redirectToStep('complete')
#13 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/checkout/src/Plugin/Commerce/CheckoutFlow/CheckoutFlowWithPanesBase.php(546): Drupal\commerce_payment\Plugin\Commerce\CheckoutPane\PaymentProcess->buildPaneForm(Array, Object(Drupal\Core\Form\FormState), Array)
#14 [internal function]: Drupal\commerce_checkout\Plugin\Commerce\CheckoutFlow\CheckoutFlowWithPanesBase->buildForm(Array, Object(Drupal\Core\Form\FormState), 'payment')
#15 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(531): call_user_func_array(Array, Array)
#16 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(278): Drupal\Core\Form\FormBuilder->retrieveForm('commerce_checko...', Object(Drupal\Core\Form\FormState))
#17 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Form/FormBuilder.php(219): Drupal\Core\Form\FormBuilder->buildForm(Object(Drupal\commerce_checkout\Plugin\Commerce\CheckoutFlow\MultistepDefault), Object(Drupal\Core\Form\FormState))
#18 /DATA/home-sites/lom/web/modules/contrib/commerce/modules/checkout/src/Controller/CheckoutController.php(143): Drupal\Core\Form\FormBuilder->getForm(Object(Drupal\commerce_checkout\Plugin\Commerce\CheckoutFlow\MultistepDefault), 'payment')
#19 [internal function]: Drupal\commerce_checkout\Controller\CheckoutController->formPage(Object(Drupal\Core\Routing\RouteMatch))
#20 /DATA/home-sites/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array(Array, Array)
#21 /DATA/home-sites/lom/web/core/lib/Drupal/Core/Render/Renderer.php(564): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}()
#22 /DATA/home-sites/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure))
#23 /DATA/home-sites/lom/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array)
#24 /DATA/home-sites/lom/vendor/symfony/http-kernel/HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}()
#25 /DATA/home-sites/lom/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1)
#26 /DATA/home-sites/lom/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#27 /DATA/home-sites/lom/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#28 /DATA/home-sites/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#29 /DATA/home-sites/lom/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#30 /DATA/home-sites/lom/web/core/modules/ban/src/BanMiddleware.php(50): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#31 /DATA/home-sites/lom/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\ban\BanMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#32 /DATA/home-sites/lom/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#33 /DATA/home-sites/lom/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#34 /DATA/home-sites/lom/web/core/lib/Drupal/Core/DrupalKernel.php(708): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#35 /DATA/home-sites/lom/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#36 {main}
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.