1b.app
Скопирована ссылка -

пропускаются некоторые пуши об успешной оплате (не создаются платежи)

настроена интеграция с интеркассой.
подскажите пожалуйста, почему не добавляется платеж в заказ при получения пуша от интеркассы
в логе записи о том, что платеж успешный есть, а платеж тем не менее не создается.
данная ошибка проявляется не на всех заказах, только лишь примерно в половине случаев платеж создается
вот заказ https://box.e-zoo.com.ua/admin/customorder/order/1653853/edit/ , вот скрин из лога о том, что платеж получен
возникает такое ощущение, что бокс занят каким-то процессом и не успевает обработать полученный платеж, но при этом записывает его в лог.

Ответы:

А переход на оплату выполняется через ЛК или вообще через сторонний сайт?)
21.09.2021, 16:42

Перегиняк Александр
Oneboxconsulting (интегратор)

Тындык Максим Вадимович

OneBox production

Администратор писал/а:
А переход на оплату выполняется через ЛК или вообще через сторонний сайт?)

ссылку на оплату генерирую вручную путем заполнения полей параметрами, аналогичными скрипту оплаты. фреймом выводил окно оплаты из кабинета бокса, чтобы эмулировать переход пользователем на страницу оплаты.
я понимаю, к чему вы клоните... подписи не совпадают. я тоже так думал, но если бы не одно но... если пуш об успешности платежа отправить повторно из кабинета интеркассы, то платеж создается. Поэтому делаю вывод, что проблема в обработке ответа на стороне бокса.
22.09.2021, 10:16


я понимаю, к чему вы клоните... подписи не совпадают. я тоже так думал, но если бы не одно но... если пуш об успешности платежа отправить повторно из кабинета интеркассы, то платеж создается. Поэтому делаю вывод, что проблема в обработке ответа на стороне бокса.

Я клоню к тому, что если ссылка генерируется не на стороне OneBox (ЛК / сайт) - то как бы и платёж вряд ли добавиться по той причине, что у нас в базе не будет записи что был запрос оплаты и мы ожидаем успех. Но в данном случае они есть.

Вы принудительно через ЛК интеркассы можете ещё раз отправить по платежу из описания? Хочу посмотреть приходит ли подпись
22.09.2021, 15:25

Перегиняк Александр
Oneboxconsulting (интегратор)

Тындык Максим Вадимович

OneBox production

Администратор писал/а:
Вы принудительно через ЛК интеркассы можете ещё раз отправить по платежу из описания? Хочу посмотреть приходит ли подпись

сделали
22.09.2021, 18:42

https://box.e-zoo.com.ua/admin/customorder/order/1655245/payment/
дак получается платёж добавило успешно

а есть ещё пример который если отправить - не добавиться?
23.09.2021, 16:09

Перегиняк Александр
Oneboxconsulting (интегратор)

Тындык Максим Вадимович

OneBox production

Администратор писал/а:
https://box.e-zoo.com.ua/admin/customorder/order/1655245/payment/
дак получается платёж добавило успешно

а есть ещё пример который если отправить - не добавиться?

насобираю - скину
1. https://box.e-zoo.com.ua/admin/customorder/order/1657711/edit/
2. https://box.e-zoo.com.ua/admin/customorder/order/1656175/edit/
думаю есть еще....

может быть в БД в момент получения пуша была ссылка какая-то запись иная и оно как-то позже перезаписывает на актуальные данные? к сожалению мне не известно, что вы в БД записываете для проверки ответа от платежной системы. Грешу все же на то, что пользователь менял заказ и что-то где-то не обновилось и в результате поступивший ответ оказался нерелевантен отправленному запросу. Но тут только вы сказать точно сможете
23.09.2021, 18:48


Повторил запрос в ручном режиме - ошибки никакой не было.

А каким образом делаете ссылку на оплату? Можете описать мне всю схему?
24.09.2021, 16:49

Перегиняк Александр
Oneboxconsulting (интегратор)

Тындык Максим Вадимович

OneBox production

Администратор писал/а:
А каким образом делаете ссылку на оплату? Можете описать мне всю схему?

вот процедура https://box.e-zoo.com.ua/admin/shop/workflow/8/procedure/212/?status=0
в действии "отправить e-mail" создаю ссылку, путем добавления значений переменных по заданному шаблону. а для того, чтобы в БД бокса создалась запись через iframe вывожу страницу данного процесса из кабинете клиента.
подскажите, может ли быть так, что бокс именно не успевает отработать пуш? вот просто так записать в лог - записывает, а вот обработать его - не обрабатывает. Например потому что ресурсов процессора, например, не хватило. или же он все же ставит такие запросы на крон и обязательно обработает когда ресурсы появятся?
Просто если бокс обрабатывает пуши " на лету", то я точно здесь ничего не смогу сделать, а если по крону, то могу попробовать продолжить самостоятельно искать проблему.
Т.е. ключевой вопрос - как обрабатывает запросы о том, что оплата прошла бокс - на лету или через "очередь"?!
27.09.2021, 15:22


Т.е. ключевой вопрос - как обрабатывает запросы о том, что оплата прошла бокс - на лету или через "очередь"?!

Запрос обрабатывает сразу.
Может интеркасса его шлёт с маленьким timeout`ом, что скрипт обрывается, или же обрывает его не получив определенный ответ? (я информации о timeout`ах в документации не нашел).

Как будет свежий платёж, который не проведёт - дайте знать (я добавил ещё несколько логов для понимания общей картины).
29.09.2021, 17:39

Перегиняк Александр
Oneboxconsulting (интегратор)

Тындык Максим Вадимович

OneBox production

Администратор писал/а:

Как будет свежий платёж, который не проведёт - дайте знать (я добавил ещё несколько логов для понимания общей картины).

вот https://box.e-zoo.com.ua/admin/customorder/order/1666828/edit/
04.10.2021, 09:04

К сожалению, логи за 03.10 не сохранились, но я проанализировал за 20.10
Там отчётливо видно, что часть платежей не "заходит" по той причине, что в базе данных отсутствует запись (либо указана с 0 суммой) запроса платежа, собственно по которому нужно делать потом получение платежа.
Собственно проблему нужно искать в вашей ссылке (можете её сбросить мне в итоговом виде, чтобы я совершил переход?)
Либо же импортировать платежи с помощью какой-то выписки, а не callback`ов.
20.10.2021, 14:42

Перегиняк Александр
Oneboxconsulting (интегратор)

Тындык Максим Вадимович

OneBox production

Администратор писал/а:
К сожалению, логи за 03.10 не сохранились, но я проанализировал за 20.10
Там отчётливо видно, что часть платежей не "заходит" по той причине, что в базе данных отсутствует запись (либо указана с 0 суммой) запроса платежа, собственно по которому нужно делать потом получение платежа.
Собственно проблему нужно искать в вашей ссылке (можете её сбросить мне в итоговом виде, чтобы я совершил переход?)
Либо же импортировать платежи с помощью какой-то выписки, а не callback`ов.

понял. значит буду искать проблему на своей стороне. спасибо за помощь
28.10.2021, 14:15

Пожалуйста, присоединяйтесь к диалогу. Если вам есть что сказать - пожалуйста, напишите комментарий. Для входа потребуется мобильный телефон и смс-код для идентификации. Войти и написать комментарий