Перестало работать платежное API после смены сервера приложения, в чем причина?
Сменили в приложении платежный урл в связи с переездом сервера.
Payment url в браузере открывается, но в приложении при попытке проведения платежа выходит ошибка "Платёжная система на профилактике и совсем скоро заработает. Оставайтесь с нами!"
При прямом тестовом запросе урла мы в консольке сервера видим факт запроса и переданные параметры, при попытке проведения платежа - нет ничего.
Сертификаты на сервере валидные.
Логи nginx'а проверили, в ошибах нет запросов этого url, в access.log тоже чисто, есть только те запросы, которые отправляем сами для проверки.
Приложение на nodejs, стоит за nginx'ом в качестве апстрима.
В чем может быть проблема и что нужно сделать чтобы её решить?
Решение от саппорта ОК: отказаться от https для платежного коллбека и использовать http. Утверждают что уведомление о переходе на https не касается платежного API.
Видимо не все валидные сертификаты для них валидны. Будем знать.
Здравствуйте! Наблюдаю примерно такую же проблему, но переход на http с https не помог. Подключил платежный скрипт, доступ к нему в браузере отличный. При этом при вызове с помощью api одноклассников выпадает "Платёжная система на профилактике и совсем скоро заработает. Оставайтесь с нами!" . в access.log чисто. В чем может быть проблема?
Проверьте ответ скрипта за запрос об оплате (сформируйте урл оплаты и запросите его., с подписью запроса и существующим товаром, всё как в реальном окружении). Ответ должен соответствовать успешному (либо - отказному), как описано в документации. + здаголовки ответа, может быть такое что plain/text не принимает, ждёт именно text/xml или около того. Может просто передаёте неверный идентификатор товара в OK API а на стороне сервера нет проверки на существование товара и скрипт падает с ошибкой.
Doromor: спасибо за совет! проверил с помощью калькулятора запросов (по запросу application_key=CBAECMLKEBABABABA&method=callbacks.payment&sig=d84124d0e956b7e399601366f99a18ae&uid=584089396265&transaction_id=7&transaction_time=2015-12-16%2009:06:55&product_code=1&amount=1 ), но он выдает на этот запрос пустой файл с xml хедером. мой скрипт по аналогичному запросу ( https://battlecruiser2.ru/pomenyashki_OK/payment.p... ) выдает xml с aplication/xml в заголовке (кусок с генерацией xml в моем скрипте взят из примера с сайта одноклассников https://github.com/apiok/html_app_example/blob/mas... Возможно есть еще что-то, что я не учел? Дело в том, что периодически скрипт срабатывает и транзакция проходит. но это происходит случайным образом среди кучи отказов
denawar: "Дело в том, что периодически скрипт срабатывает и транзакция проходит. но это происходит случайным образом среди кучи отказов" - в таком случае лучше напрямую в саппорт писать, т.к. если ответ всегда валидный а результат непредсказуем - значит скорее всего проблема не на вашей стороне (если исключается вариант высокой нагрузки вашего сервера, настолько высокой что запрос отваливается по таймауту).
denawar: "периодически скрипт срабатывает и транзакция проходит". Столкнулись с похожей ситуацией, но у нас проверка подписи не проходит. Хотя изредка так же как и у вас оплата производится. Насчет подписи не понятно. Использовали пример с github. Ключи и товары прописали. Вроде бы больше там вообще нечего изменять, но не работает. Если найдете решение поделитесь пожалуйста. Вдруг и нам поможет)