Может кто сталкивался с такой ситуацией, иногда возникает проблема, когда дважды вызывается /bitrix/tools/sale_ps_result.php вследствие чего происходит печать чеков дважды (впоследствии приходится один отменять). В логах вижу такие записи, т.е. дважды запрос происходит в одно и тоже время и видимо дважды выполняется обработка оплаты. Причем первый запрос отваливается с 499 кодом, а второй успешный. Есть предположение, что это проблема связана с тем, что браузеры шлют несколько запросов для ускорения открытия страницы, и на какой раньше придет ответ, остальные прибиваются.
Код
[18/Aug/2022:07:53:45 +1000] "GET /bitrix/tools/sale_ps_result.php?PAYMENT=RBS&ORDER_ID=79892&PAYMENT_ID=84616&orderId=f98a4c50-ae13-7357-830d-9e25001208b3&lang=ru HTTP/2.0" 499 0 "https://securepayments.sberbank.ru/" "Mozilla/5.0 (iPhone; CPU iPhone OS 15_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Mobile/15E148 Safari/604.1"
[18/Aug/2022:07:53:45 +1000] "GET /bitrix/tools/sale_ps_result.php?PAYMENT=RBS&ORDER_ID=79892&PAYMENT_ID=84616&orderId=f98a4c50-ae13-7357-830d-9e25001208b3&lang=ru HTTP/2.0" 200 91 "https://securepayments.sberbank.ru/" "Mozilla/5.0 (iPhone; CPU iPhone OS 15_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Mobile/15E148 Safari/604.1"
Судя статьи Принцип печати чеков через платёжную систему (1c-bitrix.ru), после сохранения оплаты вызывается печать чеков. Если предположить что в одно время запустились 2 обработки оплаты, пока первая не завершилась, вторая при своем старте не знает что идет уже обработка (статусы не успели обновиться от первой обработки).
Можете натолкнуть на правильный ход мыслей, в какую сторону копать далее? Пока вижу вариант надежный это только самостоятельная обработка колбэка банка, без вызова processRequest в sale_ps_result
Была такая же проблема, оказывается в личном кабинете стояло callback уведомление и получается, что на страницу с успешной оплатой возвращался клиент и одновременно банк слал callback уведомление о списании денег.
Отключил, помогло. Хз зачем вообще её включали
Страницы:1
Сообщение будет показано после одобрения модератором.