Добрый день!
Ситуация такая: на сайте интегрировано две системы оплаты (модуль №1 и модуль №2), одна из которых Robokassa (модуль №1).
В обоих модулях почтовое уведомление об оплате заказа реализовано по средством вызова CEvent::SendImmediate.
В обоих модулях используется функция CSaleOrder::PayOrder, которая выставляет заказу флаг "Оплачен", что в свою очередь .
Разница в том, что в модуль платежной системы №2 (который не Robokassa) вызов функции CEvent::SendImmediate впилен вручную и, при оплате через эту систему, происходит дублирование почтовых уведомлений. Первое письмо отправляется CEvent::SendImmediate, а второе системой, при вызове CSaleOrder::PayOrder.
Собственно, у меня сложилось впечатление, что в модуле робокассы "отключена" генерация почтового события типа SALE_ORDER_PAID, при выставлении заказу флага "Оплачен". Но каким образом это реализовано?
Ситуация такая: на сайте интегрировано две системы оплаты (модуль №1 и модуль №2), одна из которых Robokassa (модуль №1).
В обоих модулях почтовое уведомление об оплате заказа реализовано по средством вызова CEvent::SendImmediate.
В обоих модулях используется функция CSaleOrder::PayOrder, которая выставляет заказу флаг "Оплачен", что в свою очередь .
Разница в том, что в модуль платежной системы №2 (который не Robokassa) вызов функции CEvent::SendImmediate впилен вручную и, при оплате через эту систему, происходит дублирование почтовых уведомлений. Первое письмо отправляется CEvent::SendImmediate, а второе системой, при вызове CSaleOrder::PayOrder.
Собственно, у меня сложилось впечатление, что в модуле робокассы "отключена" генерация почтового события типа SALE_ORDER_PAID, при выставлении заказу флага "Оплачен". Но каким образом это реализовано?