pagarme / magento2

Magento2 Module for Pagar.me 2.0
MIT License
3 stars 0 forks source link

Pagamento aprovado na Pagarme e pedido não entra na Magento #168

Closed samuelmafra closed 2 months ago

samuelmafra commented 1 year ago

Boa tarde,

Esse erro vem ocorrendo aleatoriamente já algum tempo, clientes digitam os dados do cartão e tentam finalizar a compra.

Nos logs aparece: Webhook.ERROR: Order not found: or_2EqX59KTzRFRXXx

Porém a transação foi autorizada pela Pagarme, e o pedido não é registrado na Magento.

Versão Magento 2.4.3 CE

samuelmafra commented 1 year ago

Bom dia,

Erro persistindo a versão Magento 2.4.5-p2.

"moduleVersion": "2.2.1" "coreVersion": "2.2.0"

[2023-04-30 10:24:59] Webhook.ERROR: Order not found: or_brAQKNeTE3uNbxxx | Exception code: 404 Version: m: 2.2.1 c: 2.2.0 p: Magento Community 2.4.5-p2 From: /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Model/WebhookManagement.php:42 -> Pagarme\Core\Webhook\Services\WebhookReceiverService::handle { "type": "Pagarme\Core\Kernel\Exceptions\NotFoundException", "code": 404, "message": "Order not found: or_brAQKNeTE3uNbx1k", "file": "\/home\/account\/public_html\/magento2\/vendor\/pagarme\/ecommerce-module-core\/src\/Kernel\/Factories\/OrderFactory.php", "line": 142, "trace": "#0 \/home\/account\/public_html\/magento2\/vendor\/pagarme\/ecommerce-module-core\/src\/Webhook\/Services\/ChargeOrderService.php(427): Pagarme\Core\Kernel\Factories\OrderFactory->createFromPlatformData(Object(Pagarme\Pagarme\Concrete\Magento2PlatformOrderDecorator), 'or_brAQKNeTE3uN...')\n#1 \/home\/account\/public_html\/magento2\/vendor\/pagarme\/ecommerce-module-core\/src\/Webhook\/Services\/AbstractHandlerService.php(55): Pagarme\Core\Webhook\Services\ChargeOrderService->loadOrder(Object(Pagarme\Core\Webhook\Aggregates\Webhook))\n#2 \/home\/account\/public_html\/magento2\/vendor\/pagarme\/ecommerce-module-core\/src\/Webhook\/Services\/ChargeHandlerService.php(56): Pagarme\Core\Webhook\Services\AbstractHandlerService->handle(Object(Pagarme\Core\Webhook\Aggregates\Webhook))\n#3 \/home\/account\/public_html\/magento2\/vendor\/pagarme\/ecommerce-module-core\/src\/Webhook\/Services\/WebhookReceiverService.php(44): Pagarme\Core\Webhook\Services\ChargeHandlerService->handle(Object(Pagarme\Core\Webhook\Aggregates\Webhook))\n#4 \/home\/account\/public_html\/magento2\/vendor\/pagarme\/pagarme-magento2-module\/Model\/WebhookManagement.php(42): Pagarme\Core\Webhook\Services\WebhookReceiverService->handle(Object(stdClass))\n#5 [internal function]: Pagarme\Pagarme\Model\WebhookManagement->save('hook_AXlN6ehD6I...', 'charge.paid', Array)\n#6 \/home\/account\/public_html\/magento2\/vendor\/magento\/module-webapi\/Controller\/Rest\/SynchronousRequestProcessor.php(95): call_user_func_array(Array, Array)\n#7 \/home\/account\/public_html\/magento2\/vendor\/magento\/module-webapi\/Controller\/Rest.php(195): Magento\Webapi\Controller\Rest\SynchronousRequestProcessor->process(Object(Magento\Framework\Webapi\Rest\Request\Proxy))\n#8 \/home\/account\/public_html\/magento2\/vendor\/magento\/framework\/Interception\/Interceptor.php(58): Magento\Webapi\Controller\Rest->dispatch(Object(Magento\Framework\App\Request\Http))\n#9 \/home\/account\/public_html\/magento2\/vendor\/magento\/framework\/Interception\/Interceptor.php(138): Magento\Webapi\Controller\Rest\Interceptor->_callParent('dispatch', Array)\n#10 \/home\/account\/public_html\/magento2\/vendor\/magento\/framework\/Interception\/Interceptor.php(153): Magento\Webapi\Controller\Rest\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http))\n#11 \/home\/account\/publichtml\/magento2\/generated\/code\/Magento\/Webapi\/Controller\/Rest\/Interceptor.php(23): Magento\Webapi\Controller\Rest\Interceptor->callPlugins('dispatch', Array, Array)\n#12 \/home\/account\/public_html\/magento2\/vendor\/magento\/framework\/App\/Http.php(116): Magento\Webapi\Controller\Rest\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))\n#13 \/home\/account\/public_html\/magento2\/vendor\/magento\/framework\/App\/Bootstrap.php(264): Magento\Framework\App\Http->launch()\n#14 \/home\/account\/public_html\/magento2\/pub\/index.php(75): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http))\n#15 {main}" } [2023-04-30 10:26:12] Order.INFO: Order #1000148XXX : Quote already used, order id duplicated. Customer Note: pagarme-processing Version: m: 2.2.1 c: 2.2.0 p: Magento Community 2.4.5-p2 From: /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Gateway/Transaction/Base/Command/InitializeCommand.php:51 -> Pagarme\Pagarme\Gateway\Transaction\Base\Command\InitializeCommand::doCoreDetour [] [2023-04-30 10:26:12] Order.INFO: Order #1000148XXX : Order failed, changing status quote to failed. Error message: Quote already used, order id duplicated. Version: m: 2.2.1 c: 2.2.0 p: Magento Community 2.4.5-p2 From: /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Gateway/Transaction/Base/Command/InitializeCommand.php:51 -> Pagarme\Pagarme\Gateway\Transaction\Base\Command\InitializeCommand::doCoreDetour []

redati commented 1 year ago

você usa replicação de banco de dados?

samuelmafra commented 1 year ago

você usa replicação de banco de dados

Não.

samuelmafra commented 1 year ago

Segue system.log

[2023-04-30T22:24:47.503633-03:00] main.CRITICAL: TypeError: Argument 1 passed to Pagarme\Core\Kernel\Log\BlurData::blurStringSensitiveData() must be of the type string, null given, called in /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php on line 106 and defined in /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php:34 Stack trace:

0 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(106): Pagarme\Core\Kernel\Log\BlurData->blurStringSensitiveData(NULL, 8)

1 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(218): Pagarme\Core\Kernel\Log\BlurData->blurLine1(NULL)

2 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(245): Pagarme\Core\Kernel\Log\BlurData->blurArrayData(Array)

3 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(269): Pagarme\Core\Kernel\Log\BlurData->blurData(Array)

4 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(218): Pagarme\Core\Kernel\Log\BlurData->blurAddress(Array)

5 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(245): Pagarme\Core\Kernel\Log\BlurData->blurArrayData(Array)

6 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Log/BlurData.php(260): Pagarme\Core\Kernel\Log\BlurData->blurData(Array)

7 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/LogService.php(170): Pagarme\Core\Kernel\Log\BlurData->blurCustomer(Array)

8 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/LogService.php(79): Pagarme\Core\Kernel\Services\LogService->blurSensitiveData(Array)

9 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/OrderLogService.php(16): Pagarme\Core\Kernel\Services\LogService->info('Order #10001486...', Object(PagarmeCoreApiLib\Models\GetOrderResponse))

10 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/OrderCreationService.php(81): Pagarme\Core\Kernel\Services\OrderLogService->orderInfo('100014867', 'Create order Re...', Object(PagarmeCoreApiLib\Models\GetOrderResponse))

11 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/APIService.php(158): Pagarme\Core\Kernel\Services\OrderCreationService->createOrder(Object(PagarmeCoreApiLib\Models\CreateOrderRequest), '9a086182ac3c258...', 3)

12 /home/account/public_html/magento2/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/OrderService.php(265): Pagarme\Core\Kernel\Services\APIService->createOrder(Object(Pagarme\Core\Payment\Aggregates\Order))

13 /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Gateway/Transaction/Base/Command/InitializeCommand.php(148): Pagarme\Core\Kernel\Services\OrderService->createOrderAtPagarme(Object(Pagarme\Pagarme\Concrete\Magento2PlatformOrderDecorator))

14 /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Gateway/Transaction/Base/Command/InitializeCommand.php(51): Pagarme\Pagarme\Gateway\Transaction\Base\Command\InitializeCommand->doCoreDetour(Object(Magento\Sales\Model\Order\Payment\Interceptor))

15 /home/account/public_html/magento2/vendor/magento/module-payment/Model/Method/Adapter.php(549): Pagarme\Pagarme\Gateway\Transaction\Base\Command\InitializeCommand->execute(Array)

16 /home/account/public_html/magento2/vendor/magento/module-payment/Model/Method/Adapter.php(655): Magento\Payment\Model\Method\Adapter->executeCommand('initialize', Array)

17 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Order/Payment.php(377): Magento\Payment\Model\Method\Adapter->initialize('authorize_captu...', Object(Magento\Framework\DataObject))

18 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Order.php(1002): Magento\Sales\Model\Order\Payment->place()

19 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Order.php(1228): Magento\Sales\Model\Order->_placePayment()

20 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Sales\Model\Order->place()

21 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Sales\Model\Order\Interceptor->___callParent('place', Array)

22 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Sales\Model\Order\Interceptor->Magento\Framework\Interception{closure}()

23 /home/account/public_html/magento2/generated/code/Magento/Sales/Model/Order/Interceptor.php(32): Magento\Sales\Model\Order\Interceptor->___callPlugins('place', Array, Array)

24 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Service/OrderService.php(207): Magento\Sales\Model\Order\Interceptor->place()

25 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Sales\Model\Service\OrderService->place(Object(Magento\Sales\Model\Order\Interceptor))

26 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Sales\Model\Service\OrderService\Interceptor->___callParent('place', Array)

27 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Sales\Model\Service\OrderService\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Sales\Model\Order\Interceptor))

28 /home/account/public_html/magento2/generated/code/Magento/Sales/Model/Service/OrderService/Interceptor.php(32): Magento\Sales\Model\Service\OrderService\Interceptor->___callPlugins('place', Array, Array)

29 /home/account/public_html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(605): Magento\Sales\Model\Service\OrderService\Interceptor->place(Object(Magento\Sales\Model\Order\Interceptor))

30 /home/account/public_html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(485): Magento\Quote\Model\QuoteManagement->submitQuote(Object(Magento\Quote\Model\Quote\Interceptor), Array)

31 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Quote\Model\QuoteManagement->submit(Object(Magento\Quote\Model\Quote\Interceptor), Array)

32 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Quote\Model\QuoteManagement\Interceptor->___callParent('submit', Array)

33 /home/account/public_html/magento2/vendor/magento/module-sales-rule/Plugin/CouponUsagesIncrement.php(54): Magento\Quote\Model\QuoteManagement\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Quote\Model\Quote\Interceptor), Array)

34 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(135): Magento\SalesRule\Plugin\CouponUsagesIncrement->aroundSubmit(Object(Magento\Quote\Model\QuoteManagement\Interceptor), Object(Closure), Object(Magento\Quote\Model\Quote\Interceptor))

35 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Quote\Model\QuoteManagement\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Quote\Model\Quote\Interceptor))

36 /home/account/public_html/magento2/generated/code/Magento/Quote/Model/QuoteManagement/Interceptor.php(23): Magento\Quote\Model\QuoteManagement\Interceptor->___callPlugins('submit', Array, NULL)

37 /home/account/public_html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(443): Magento\Quote\Model\QuoteManagement\Interceptor->submit(Object(Magento\Quote\Model\Quote\Interceptor))

38 /home/account/public_html/magento2/vendor/magento/module-checkout/Model/PaymentInformationManagement.php(125): Magento\Quote\Model\QuoteManagement->placeOrder(303264)

39 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Checkout\Model\PaymentInformationManagement->savePaymentInformationAndPlaceOrder(303264, Object(Magento\Quote\Model\Quote\Payment), Object(Magento\Quote\Model\Quote\Address))

40 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Checkout\Model\PaymentInformationManagement\Interceptor->___callParent('savePaymentInfo...', Array)

41 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Checkout\Model\PaymentInformationManagement\Interceptor->Magento\Framework\Interception{closure}(303264, Object(Magento\Quote\Model\Quote\Payment), Object(Magento\Quote\Model\Quote\Address))

42 /home/account/public_html/magento2/generated/code/Magento/Checkout/Model/PaymentInformationManagement/Interceptor.php(23): Magento\Checkout\Model\PaymentInformationManagement\Interceptor->___callPlugins('savePaymentInfo...', Array, Array)

43 [internal function]: Magento\Checkout\Model\PaymentInformationManagement\Interceptor->savePaymentInformationAndPlaceOrder(303264, Object(Magento\Quote\Model\Quote\Payment), Object(Magento\Quote\Model\Quote\Address))

44 /home/account/public_html/magento2/vendor/magento/module-webapi/Controller/Rest/SynchronousRequestProcessor.php(95): call_user_func_array(Array, Array)

45 /home/account/public_html/magento2/vendor/magento/module-webapi/Controller/Rest.php(195): Magento\Webapi\Controller\Rest\SynchronousRequestProcessor->process(Object(Magento\Framework\Webapi\Rest\Request\Proxy))

46 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Webapi\Controller\Rest->dispatch(Object(Magento\Framework\App\Request\Http))

47 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Webapi\Controller\Rest\Interceptor->___callParent('dispatch', Array)

48 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Webapi\Controller\Rest\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))

49 /home/account/public_html/magento2/generated/code/Magento/Webapi/Controller/Rest/Interceptor.php(23): Magento\Webapi\Controller\Rest\Interceptor->___callPlugins('dispatch', Array, Array)

50 /home/account/public_html/magento2/vendor/magento/framework/App/Http.php(116): Magento\Webapi\Controller\Rest\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))

51 /home/account/public_html/magento2/vendor/magento/framework/App/Bootstrap.php(264): Magento\Framework\App\Http->launch()

52 /home/account/public_html/magento2/pub/index.php(75): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http))

53 {main} [] []

[2023-04-30T22:26:12.175528-03:00] main.CRITICAL: InvalidArgumentException: The specified HTTP code "0" is invalid. in /home/account/public_html/magento2/vendor/magento/framework/Webapi/Exception.php:111 Stack trace:

0 /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Gateway/Transaction/Base/Command/InitializeCommand.php(169): Magento\Framework\Webapi\Exception->__construct(Object(Magento\Framework\Phrase), 0, 0)

1 /home/account/public_html/magento2/vendor/pagarme/pagarme-magento2-module/Gateway/Transaction/Base/Command/InitializeCommand.php(51): Pagarme\Pagarme\Gateway\Transaction\Base\Command\InitializeCommand->doCoreDetour(Object(Magento\Sales\Model\Order\Payment\Interceptor))

2 /home/account/public_html/magento2/vendor/magento/module-payment/Model/Method/Adapter.php(549): Pagarme\Pagarme\Gateway\Transaction\Base\Command\InitializeCommand->execute(Array)

3 /home/account/public_html/magento2/vendor/magento/module-payment/Model/Method/Adapter.php(655): Magento\Payment\Model\Method\Adapter->executeCommand('initialize', Array)

4 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Order/Payment.php(377): Magento\Payment\Model\Method\Adapter->initialize('authorize_captu...', Object(Magento\Framework\DataObject))

5 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Order.php(1002): Magento\Sales\Model\Order\Payment->place()

6 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Order.php(1228): Magento\Sales\Model\Order->_placePayment()

7 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Sales\Model\Order->place()

8 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Sales\Model\Order\Interceptor->___callParent('place', Array)

9 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Sales\Model\Order\Interceptor->Magento\Framework\Interception{closure}()

10 /home/account/public_html/magento2/generated/code/Magento/Sales/Model/Order/Interceptor.php(32): Magento\Sales\Model\Order\Interceptor->___callPlugins('place', Array, Array)

11 /home/account/public_html/magento2/vendor/magento/module-sales/Model/Service/OrderService.php(207): Magento\Sales\Model\Order\Interceptor->place()

12 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Sales\Model\Service\OrderService->place(Object(Magento\Sales\Model\Order\Interceptor))

13 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Sales\Model\Service\OrderService\Interceptor->___callParent('place', Array)

14 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Sales\Model\Service\OrderService\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Sales\Model\Order\Interceptor))

15 /home/account/public_html/magento2/generated/code/Magento/Sales/Model/Service/OrderService/Interceptor.php(32): Magento\Sales\Model\Service\OrderService\Interceptor->___callPlugins('place', Array, Array)

16 /home/account/public_html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(605): Magento\Sales\Model\Service\OrderService\Interceptor->place(Object(Magento\Sales\Model\Order\Interceptor))

17 /home/account/public_html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(485): Magento\Quote\Model\QuoteManagement->submitQuote(Object(Magento\Quote\Model\Quote\Interceptor), Array)

18 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Quote\Model\QuoteManagement->submit(Object(Magento\Quote\Model\Quote\Interceptor), Array)

19 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Quote\Model\QuoteManagement\Interceptor->___callParent('submit', Array)

20 /home/account/public_html/magento2/vendor/magento/module-sales-rule/Plugin/CouponUsagesIncrement.php(54): Magento\Quote\Model\QuoteManagement\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Quote\Model\Quote\Interceptor), Array)

21 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(135): Magento\SalesRule\Plugin\CouponUsagesIncrement->aroundSubmit(Object(Magento\Quote\Model\QuoteManagement\Interceptor), Object(Closure), Object(Magento\Quote\Model\Quote\Interceptor))

22 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Quote\Model\QuoteManagement\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Quote\Model\Quote\Interceptor))

23 /home/account/public_html/magento2/generated/code/Magento/Quote/Model/QuoteManagement/Interceptor.php(23): Magento\Quote\Model\QuoteManagement\Interceptor->___callPlugins('submit', Array, NULL)

24 /home/account/public_html/magento2/vendor/magento/module-quote/Model/QuoteManagement.php(443): Magento\Quote\Model\QuoteManagement\Interceptor->submit(Object(Magento\Quote\Model\Quote\Interceptor))

25 /home/account/public_html/magento2/vendor/magento/module-checkout/Model/PaymentInformationManagement.php(125): Magento\Quote\Model\QuoteManagement->placeOrder(303264)

26 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Checkout\Model\PaymentInformationManagement->savePaymentInformationAndPlaceOrder(303264, Object(Magento\Quote\Model\Quote\Payment), Object(Magento\Quote\Model\Quote\Address))

27 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Checkout\Model\PaymentInformationManagement\Interceptor->___callParent('savePaymentInfo...', Array)

28 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Checkout\Model\PaymentInformationManagement\Interceptor->Magento\Framework\Interception{closure}(303264, Object(Magento\Quote\Model\Quote\Payment), Object(Magento\Quote\Model\Quote\Address))

29 /home/account/public_html/magento2/generated/code/Magento/Checkout/Model/PaymentInformationManagement/Interceptor.php(23): Magento\Checkout\Model\PaymentInformationManagement\Interceptor->___callPlugins('savePaymentInfo...', Array, Array)

30 [internal function]: Magento\Checkout\Model\PaymentInformationManagement\Interceptor->savePaymentInformationAndPlaceOrder(303264, Object(Magento\Quote\Model\Quote\Payment), Object(Magento\Quote\Model\Quote\Address))

31 /home/account/public_html/magento2/vendor/magento/module-webapi/Controller/Rest/SynchronousRequestProcessor.php(95): call_user_func_array(Array, Array)

32 /home/account/public_html/magento2/vendor/magento/module-webapi/Controller/Rest.php(195): Magento\Webapi\Controller\Rest\SynchronousRequestProcessor->process(Object(Magento\Framework\Webapi\Rest\Request\Proxy))

33 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(58): Magento\Webapi\Controller\Rest->dispatch(Object(Magento\Framework\App\Request\Http))

34 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Webapi\Controller\Rest\Interceptor->___callParent('dispatch', Array)

35 /home/account/public_html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Webapi\Controller\Rest\Interceptor->Magento\Framework\Interception{closure}(Object(Magento\Framework\App\Request\Http))

36 /home/account/public_html/magento2/generated/code/Magento/Webapi/Controller/Rest/Interceptor.php(23): Magento\Webapi\Controller\Rest\Interceptor->___callPlugins('dispatch', Array, Array)

37 /home/account/public_html/magento2/vendor/magento/framework/App/Http.php(116): Magento\Webapi\Controller\Rest\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))

38 /home/account/public_html/magento2/vendor/magento/framework/App/Bootstrap.php(264): Magento\Framework\App\Http->launch()

39 /home/account/public_html/magento2/pub/index.php(75): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http))

40 {main} [] []

redati commented 1 year ago

algum campo null esta dando problema na linha https://github.com/pagarme/ecommerce-module-core/blob/cec3f0e0f4bfd51418d1038ddeec29ad0d921f31/src/Kernel/Log/BlurData.php#L34

pode ver que a função requer uma string e não aceita null: private function blurStringSensitiveData(string $value, $delimiter)

vai precisar localizar esse campo nullo em que o módulo espera que seja uma string (algum campo do checkout).

usa algum modulo de terceiro para checkout? essa função apenas evita que informçaões sensíveis sejam envaidas para log. Eu nunca tive esse problema, já usei esta versão, agora atualizei para 2.4.6.

Se o erro acontece ocasionalmente, isso é devido ao processo de compra, algum dos procesos estão falhando, por exemplo, se um cliente já tem endereço cadastrado e o endereço tem algum campo destualizado e esse cliente específico tem problemas. Também se o cliente cadastra endereços diferentes e o modulo de checkout não atualiza corretamente os dados do pedido. Eu uso o modulo do Elisei, o melhor que já vi para o magento https://github.com/elisei/full-checkout e não tenho problemas.

samuelmafra commented 1 year ago

Nenhum módulo terceiro para checkout, porém temos o m2-systemcode/BrazilCustomerAttributes que possui observer no checkout.

O erro acontece de forma aleatória (poucas vezes), tanto para clientes novos como para clientes já existentes.

RafaMelazzo commented 1 year ago

Boa tarde @samuelmafra! Tudo bem?

Está tendo esse erro no seu site ainda? Caso precise ainda, nos envie um e-mail para opensource@pagar.me com seu site e e-mail de cadastro na Pagar.me, para podermos investigar esse problema e corrigir o Plugin. Entraremos em contato em seguida.

Obrigado!

samuelmafra commented 1 year ago

Boa tarde,

Sim, o erro acontece de vez enquanto, inclusive no pagamento por PIX (até a abertura dessa issue só acontecia no cartão de crédito).

Vou encaminhar e-mail.

Obrigado.

robsoned commented 1 year ago

Boa tarde, debugando aqui, como @redati comentou , private function blurStringSensitiveData(string $value, $delimiter), não aceita null, porém, já que se trata de uma função de tratar dados sensível, antes de escrever em um arquivo de log. Acredito que essa função poderia ser alterada para o parâmetro ser opicional, pois se estamos falando de dados sensíveis, não deveria ser obrigatório e interromper o fluxo da compra, gerando inconsistência entre as plataformas.

#

Minha sugestão seria alterar a declaração do método para:

private function blurStringSensitiveData(string $value = "", $delimiter).

#

Porém, acho que podemos ir além. O método logService->orderInfo() é chamado diversas vezes, dentro do código em pagarme/ecommerce-module-core fora de blocos try catch.

No exemplo abaixo, no arquivo src/vendor/pagarme/ecommerce-module-core/src/Kernel/Services/OrderCreationService.php(81). O código está tentando logar $response, que é o retorno da própria API da pagarme, não do magento.

image

#

Para resolver essa questão, poderia ser adicionado um bloco try catch nos métodos que fazem a escrita para os arquivos de logs, pois podem ocorrer vários erros nesse processo de logar os dados para um arquivo, disco cheio, permissão de usuário e etc.

image

#

Criei uma PR la em ecommerce-module-core, com as alterações mencionadas acima.

https://github.com/pagarme/ecommerce-module-core/pull/107

mateus-picoloto commented 10 months ago

Olá @samuelmafra, tudo bem?

A correção que o @robsoned abriu para o ecommerce-module-core já foi lançada na versão 2.2.3. Com a versão mais recente do nosso módulo você ainda está tendo esse problema?

RafaMelazzo commented 2 months ago

Bom dia @samuelmafra! Tudo bem?

Estou fechando essa issue por falta de resposta. Caso ainda tenha algum problema, pode abrir outra issue ou entre em contato com a gente através do e-mail opensource@pagar.me.

Obrigado!