mndomovoy Опубликовано 7 мая, 2014 Жалоба Поделиться Опубликовано 7 мая, 2014 Добрый день! Подключаю модуль оплаты «Яндекс.Деньги для юрлиц». При проведении тестовых платежей всё выглядит хорошо, но специалисты Яндекса сообщают о некорректном ответе магазина: <?xml version="1.0" encoding="UTF-8"?> <checkOrderResponse performedDatetime="2014-05-07T15:44:08+04:00" code="200" invoiceId="2000000156442" message="Этот заказ уже оплачен" shopId="тутидмагазинабыл"/> И вот «Этот заказ уже оплачен» это ошибка. Подскажите, пожалуйста, как это можно устранить? При этом, те же специалисты Яндеса говорят, что я не первый с такой ошибкой на Симпле. Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 7 мая, 2014 Жалоба Поделиться Опубликовано 7 мая, 2014 А вы проверьте стоит ли у этого заказа в админке галочка "Оплачен". Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 7 мая, 2014 Автор Жалоба Поделиться Опубликовано 7 мая, 2014 А вы проверьте стоит ли у этого заказа в админке галочка "Оплачен".Да, стоит. Внешне, со стороны Симплы всё ок. Как покупатель вижу что заказа оплачен, пришло письмо. Как админ вижу что сменился статус на «оплачен» и каким способом. Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 7 мая, 2014 Жалоба Поделиться Опубликовано 7 мая, 2014 Да, стоит. Внешне, со стороны Симплы всё ок. Как покупатель вижу что заказа оплачен, пришло письмо. Как админ вижу что сменился статус на «оплачен» и каким способом.Ну вот заказ оплачен и выдает вам ошибку что заказ оплачен и повторная оплата не требуется.Что тут не понятного? Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 7 мая, 2014 Автор Жалоба Поделиться Опубликовано 7 мая, 2014 Ну вот заказ оплачен и выдает вам ошибку что заказ оплачен и повторная оплата не требуется.Что тут не понятного?Так ведь это не вторичный запрос. Ответ невпопад. Да и в Яндексе говорят, что такая ошибка не в первый раз и такое уже исправляли. К слову, вот аналогичная ситуация — http://forum.simplacms.ru/topic/7337-%D0%BA%D0%BE%D0%B4%D1%8B-%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D0%BE%D0%B2-%D0%BF%D1%80%D0%B8-%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D0%B5-%D1%8F%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B0%D0%BC%D0%B8-%D0%B8-qiwi/ Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 7 мая, 2014 Жалоба Поделиться Опубликовано 7 мая, 2014 Так ведь это не вторичный запрос. Ответ невпопад. Да и в Яндексе говорят, что такая ошибка не в первый раз и такое уже исправляли. К слову, вот аналогичная ситуация — http://forum.simplacms.ru/topic/7337-%D0%BA%D0%BE%D0%B4%D1%8B-%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D0%BE%D0%B2-%D0%BF%D1%80%D0%B8-%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D0%B5-%D1%8F%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B0%D0%BC%D0%B8-%D0%B8-qiwi/Если попытаться оплатить заказ у которого статус стоит "Оплачен" то выдаст ошибку и это правильно. Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 7 мая, 2014 Автор Жалоба Поделиться Опубликовано 7 мая, 2014 Если попытаться оплатить заказ у которого статус стоит "Оплачен" то выдаст ошибку и это правильно.Так ведь никто этого не пытается делать. Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 8 мая, 2014 Автор Жалоба Поделиться Опубликовано 8 мая, 2014 Чуток подробностей от Яндекса:«на пеймент фазе ответ должен быть в формате <?xml version="1.0" encoding="UTF-8"?> <paymentAvisoResponse performedDatetime="2014-05-08T00:00:15+04:00" code="0" invoiceId="2000149493529" shopId="14557"/> Далее, отбивать повторные запросы на пеймент также нельзя. Если есть повторный запрос – значит ответы на пейменте до сих пор были некорректны.» Цитата Ссылка на сообщение Поделиться на другие сайты
LDV Опубликовано 14 мая, 2014 Жалоба Поделиться Опубликовано 14 мая, 2014 У меня подобная проблема. Настраиваю сейчас Яндекс деньги для юридических лиц. Внешне платёж на тест проходит. Со стороны покупателя пишется, что успешно. В админке платёж показывается что в статусе оплачен. Но специалисты Яндекса говорят следущее: =============================================== Добрый день! Вообще, у вас ни одного успешного платежа нет. Ошибка в том, что вы успешно отвечаете нам на чек-запрос, а на пеймент отвечаете вот этим: <br /> <b>Parse error</b>: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in <b>/home/cp966810/public_html/api/Simpla.php</b> on line <b>40</b><br /> Т.о. система повторяет запрос на пеймент-урл еще 6 раз. Если ни разу успешный ответ не получили, то платеж помечается неуспехом и возвращается на счет пользователя. ================================================== Ещё один ответ от Яндекса: ================================================== Пока не успешен, т.к. вы на пейменте отвечаете «чеком»: <?xml version="1.0" encoding="UTF-8"?> <checkOrderResponse performedDatetime="2014-05-14T09:27:10+00:00" code="200" invoiceId="2000000158993" message="Этот заказ уже оплачен" shopId="15929"/> На пейменте надо отвечать соответственно checkOrderResponse. Всегда с code=0 на все повторные запросы. ================================================== Есть ли решение? Цитата Ссылка на сообщение Поделиться на другие сайты
LDV Опубликовано 14 мая, 2014 Жалоба Поделиться Опубликовано 14 мая, 2014 Я не программист, за кривость не ругайте. Но путём переговоров с сотрудниками яндекса работает только такой вариант в тестовом режиме. в файле callback.php поправлено в блоке кода функции (стр.108): function print_error($text) ======================================== <checkOrderResponse performedDatetime="'.$performedDatetime.'" code="200" invoiceId="'.$invoice_id.'" заменёт на : <paymentAvisoResponse performedDatetime="'.$performedDatetime.'" code="0" invoiceId="'.$invoice_id.'" Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 14 мая, 2014 Автор Жалоба Поделиться Опубликовано 14 мая, 2014 Я не программист, за кривость не ругайте. Но путём переговоров с сотрудниками яндекса работает только такой вариант в тестовом режиме. в файле callback.php поправлено в блоке кода функции (стр.108): function print_error($text) ======================================== <checkOrderResponse performedDatetime="'.$performedDatetime.'" code="200" invoiceId="'.$invoice_id.'" заменёт на : <paymentAvisoResponse performedDatetime="'.$performedDatetime.'" code="0" invoiceId="'.$invoice_id.'" То есть они сами такое принимают к работе? Магазин проходит проверку? Цитата Ссылка на сообщение Поделиться на другие сайты
LDV Опубликовано 14 мая, 2014 Жалоба Поделиться Опубликовано 14 мая, 2014 Платёж проходит. Проблем нет. Я посылал полностью исправленный скрипт в Яндекс. Вот ответ специалиста:=========================================Сам скрипт вполне рабочий и не видно криминала в нем.Процесс оплаты такой:1) запрос на чек урл2) ваш ответ checkOrderResponse (если неверный, то процесс прерывается полностью)3) запрос на пеймент урл4) ваш ответ paymentAvisoResponse (если ответ корректный, все платеж успешен; если ответ не корректный, то повторяем запрос еще до 6 раз.) Почему у вас в мессадж засовывается о уже совершенной оплате – сложно сказать. -------------------------------------------------------------------------------- Яндекс просит удалить в этом скрипте строкуprint '<?xml version="1.0" encoding="UTF-8"?> <paymentAvisoResponse performedDatetime="'.$performedDatetime.'" code="0" invoiceId="'.$invoice_id.'" message="'.$text.'" shopId="'.$shop_id.'"/>'; ================================================строку message="'.$text.'"за ненадобностью, чтобы при ответе не плодились сбойные сообщения о повторной оплате Цитата Ссылка на сообщение Поделиться на другие сайты
LDV Опубликовано 14 мая, 2014 Жалоба Поделиться Опубликовано 14 мая, 2014 но без мессаджа платёж проходит. Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 19 мая, 2014 Автор Жалоба Поделиться Опубликовано 19 мая, 2014 но без мессаджа платёж проходит. У вас магазин прошёл проверку? У меня с этими изменениями не прошёл. Пишут что всё равно не правильные ответы шлёт магазин: «По прежнему ответы на пейменте некорректные: <?xml version="1.0" encoding="UTF-8"?> <checkOrderResponse performedDatetime="2014-05-15T08:35:48+04:00" code="0" invoiceId="2000000159435" shopId="15817"/> Обращаю внимание на «checkOrderResponse» Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 19 мая, 2014 Автор Жалоба Поделиться Опубликовано 19 мая, 2014 И вообще, урлы корректные? <checkUrl>https://***/payment/YandexMoney/callback.php</checkUrl><payUrl>https://***/payment/YandexMoney/callback.php</payUrl> Они точно должны быть одинаковыми? Цитата Ссылка на сообщение Поделиться на другие сайты
LDV Опубликовано 20 мая, 2014 Жалоба Поделиться Опубликовано 20 мая, 2014 выкладываю конец своего файла callback.php=====================================$datetime = new DateTime();$performedDatetime = $datetime->format('c');print '<?xml version="1.0" encoding="UTF-8"?> <checkOrderResponse performedDatetime="'.$performedDatetime.'" code="0" invoiceId="'.$invoice_id.'" shopId="'.$shop_id.'"/>'; function print_error($text){ $datetime = new DateTime(); $performedDatetime = $datetime->format('c'); $shop_id = intval($_POST['shopId']); $invoice_id = intval($_POST['invoiceId']); print '<?xml version="1.0" encoding="UTF-8"?> <paymentAvisoResponse performedDatetime="'.$performedDatetime.'" code="0" invoiceId="'.$invoice_id.'" shopId="'.$shop_id.'"/>'; exit();}===================================================== Сравните со своим. Платежи проходят.И давайте сравним версии SIMPLA у меня 2.3.3 Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 20 мая, 2014 Автор Жалоба Поделиться Опубликовано 20 мая, 2014 Да, спасибо. Всё верно теперь, в первый раз не всё скопировал. Яндекс одобрил — работает. Цитата Ссылка на сообщение Поделиться на другие сайты
LDV Опубликовано 26 мая, 2014 Жалоба Поделиться Опубликовано 26 мая, 2014 Товарищ mndomovoyПодскажите, перешли ли вы на боевой режим? Если да, то идут ли платежи? Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 26 мая, 2014 Автор Жалоба Поделиться Опубликовано 26 мая, 2014 Товарищ mndomovoyПодскажите, перешли ли вы на боевой режим? Если да, то идут ли платежи?Перешёл, всё в порядке. Цитата Ссылка на сообщение Поделиться на другие сайты
Deni Опубликовано 29 июля, 2014 Жалоба Поделиться Опубликовано 29 июля, 2014 подскажите а ssl тоже включаете ? Самоподписной или покупаете.. проясните данный момент Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 31 июля, 2014 Автор Жалоба Поделиться Опубликовано 31 июля, 2014 подскажите а ssl тоже включаете ? Самоподписной или покупаете.. проясните данный момент Сертификат обязателен, но достаточно самоподписанного. Цитата Ссылка на сообщение Поделиться на другие сайты
Jekas Опубликовано 31 июля, 2014 Жалоба Поделиться Опубликовано 31 июля, 2014 Сертификат обязателен, но достаточно самоподписанного.а Вы сами делали ssl? Цитата Ссылка на сообщение Поделиться на другие сайты
mndomovoy Опубликовано 31 июля, 2014 Автор Жалоба Поделиться Опубликовано 31 июля, 2014 а Вы сами делали ssl?Обычно достаточно обращения в поддержку хостинга и они сами его делают. Цитата Ссылка на сообщение Поделиться на другие сайты
Deni Опубликовано 6 августа, 2014 Жалоба Поделиться Опубликовано 6 августа, 2014 вышла еще одна проблема , теперь пишет при платеже через Яндекс деньги : При оформлении платежа были указаны неверные данные. Уточните данные, введенные в форму оплаты, и повторите платеж. У вас не было такого? Цитата Ссылка на сообщение Поделиться на другие сайты
lazareff Опубликовано 12 августа, 2014 Жалоба Поделиться Опубликовано 12 августа, 2014 вышла еще одна проблема , теперь пишет при платеже через Яндекс деньги : При оформлении платежа были указаны неверные данные. Уточните данные, введенные в форму оплаты, и повторите платеж. У вас не было такого?У меня тоже самое, не пойму что и как Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.