Проблема в том, что в последнее время оповещение об оплате перестало приходить в магазин, хотя платёж проводится нормально. Написали в Робокассу, вот ответ:
Здравствуйте, Запрос обновлен. - Скрипт расположенный по Result Url должен возвращать OKnMerchantInvID. См. нашу документацию "ROBOKASSA. Описание интерфейсов" прямая ссылка: http://www.robokassa.ru/Doc/Ru/Interface.aspx Пункт "Оповещение об оплате (ResultURL)": http://www.robokassa.ru/ru/Doc/Ru/Interface.aspx#223 "Факт успешности сообщения магазину об исполнении операции определяется по результату, возвращаемому обменному пункту. Результат должен содержать “OKnMerchantInvID”, т.е. для счета #5 должен быть возвращен текст “OK5”." Так же обратите внимание на то в каком регистре у вас выводится после подсчёта контрольная сумма (MD5). Мы отправляем её вам ВСЕГДА только в верхнем регистре. Следовательно, вам так же нужно сравнивать её со своей в верхнем регистре. Не забудьте учесть, что для подсчёта контрольной суммы на своей стороне вам нужно использовать те данные о платеже, которые мы вам присылаем в запросе на Result URL. (номер заказа, сумма и дополнительные параметры если они есть) Это нужно делать исключительно для того, что бы проверять, что это именно мы прислали вам информацию об успешном платеже, а не кто-то другой. Т.е. буквально - вы проверяете то, что мы вам присылаем, высчитывая из полученных данных контрольную сумму и сверяя её с присланной нами контрольной суммой. --------------------------------
Наш админ немного покопался в этой проблеме:
Это происходит на стадии, когда сервер Робокассы идёт по ссылке unikicks.ru чтобы сказать, что всё хорошо, но получает ошибку. Started GET "/gateway/robokassa/result?out_summ=1.000000&OutSum=1.000000&inv_id=1253&InvId=1253&crc=DFE71A4661F2106A46611726527DDB8E&SignatureValue=DFE71A4661F2106A46611726527DDB8E&PaymentMethod=OceanBank&IncSum=1.000000&IncCurrLabel=BANKOCEAN2R" for 212.24.63.49 at Mon Jul 23 13:41:50 +0400 2012 Processing by Gateway::RobokassaController#result as HTML Parameters: {"IncCurrLabel"=>"BANKOCEAN2R", "SignatureValue"=>"DFE71A4661F2106A46611726527DDB8E", "PaymentMethod"=>"OceanBank", "InvId"=>"1253", "OutSum"=>"1.000000", "IncSum"=>"1.000000", "crc"=>"DFE71A4661F2106A46611726527DDB8E", "out_summ"=>"1.000000", "inv_id"=>"1253"} Completed 500 Internal Server Error in 341ms StateMachine::InvalidTransition (Cannot transition state via :next from "confirm"):
Кто может помочь? |