Ошибка при приёме платежей на сайте в форме Яндекс.Деньги
Страницы: 1
Ошибка при приёме платежей на сайте в форме Яндекс.Деньги, небольшой хак, исправляющий ситуацию
Думаю, найдутся те, кому информация пригодится.

Использование формы ЯД на сайте - простой способ приёма платежей, устанавливается в считанные минуты, никакой нудной модерации и т.п. Т.е. плюсов куча, но есть одно НО, которое способно испортить всю картину.
При переходе на страницу оплаты примерно в 30-60% случаев пользователь видит на сайте ЯД ошибку типа "Что-то пошло не так, продавец передал некорректные данные". Все мы знаем о пугливасти многих потенциальных покупашек, эта надпись может сбить весь настрой к покупке. И неважно, что достаточно закрыть страницу и с сайта продавца ещё раз перейти на страницу оплаты по той же ссылке и всё будет нормально. Эта ситуация бъет по объёму потенциальных продаж все равно.

Что было сделано: при выборе способа оплаты (Я.Деньги или карта) красная надпись о том, что при появлении ошибки надо закрыть страницу оплаты ЯД и нажать кнопку "Оплатить" ещё раз. Но это очень тупое решение. Во-первых, сама надпись пугает априори, во-вторых, далеко не все последуют данному руководству.

Что говорит СП самих Я.Деньги: "нам известно о проблеме, программисты работают над исправлением ситуации". Но, собственно, это мне говорили в январе, на июнь 2017 проблема сохраняется.

Как исправить? Оказалось, что небольшой костыль полностью избавляет от проблемы.
При переходе на страницу сайта, с которой пользователь уйдёт на страницу оплаты ЯД, необходимо отправить предварительно запрос к этой странице оплаты (я делаю с теми же POST-параметрами, какие потом передаются при переходе пользователя с формы). Т.е. при переходе на буферную страницу нашего сайта (корзина, выбор способа оплаты и т.п.) выполняется запрос вида:


Код
$postdata = http_build_query(
    array(
        'receiver' => 'xxxxxxxxxx',
        'formcomment' => 'xxxxxxxxxxxxx',
        'quickpay-form' => 'shop',
        'label' => 'xxxxxxxxxxxxx',
        'targets' => 'xxxxxxxxxxxxxxxxxxxx',
        'sum' => 95400
    )
);
$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);

$context  = stream_context_create($opts);

$result = file_get_contents('https://money.yandex.ru/quickpay/confirm.xml', false, $context);


После этого вышеозначенная ошибка на стороне ЯД при переходе к оплате не возникает.
Изменено: Eye - 4 Июня 2017 16:29
Мы не можем похвастаться мудростью глаз
И умелыми жестами рук,
Нам не нужно все это, чтобы друг друга понять.
Сигареты в руках, чай на столе - так замыкается круг,
И вдруг нам становится страшно что-то менять.
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
03:33 AI под надзором. Минцифры готовят клеймо для контента 
22:18 С чего сейчас проще начать? 
21:08 Adsense личный опыт 
18:19 Яндекс Нейро и выдача в 2026 - остались ли лазейки для маленьких сайтов? 
08:29 Бесплатное получение бэклинков 
08:19 3snet - гемблинг, беттинг, форекс, бинарные опционы, майнинг 
00:22 Раскрутка форума 
01:12 Продам обменник криптовалюты, а также новый обменник под ключ с обучением. Скидки на скрипты обменника 
00:23 Продам сайт Домен РУ RU РФ c доменом www.доменру.рф 
22:37 TETChange-Обменник криптовалют 
14:25 Мониторинг обменников Сrypto-scout.io 
12:47 Monitex: Мониторинг с кэшбэком 80% в USDT 
12:10 TELEGRAM EXPERT — Многоцелевой комбайн по работе с Telegram 
09:44 MIG-OBMEN.net — Быстрый и надежный обмен цифровых активов 
22:06 Точные прогнозы на футбол 
18:15 молодильные яблоки и живая вода 
07:17 Почему не обновляется счетчик ИКС (индекса качества сайта) 
00:10 8 марта: желаю аптайма 99.9% и e-e-a-t без локов 
19:38 Голландцы влепили Grok по яйцам - теперь нельзя раздевать реальных людей, штраф 100к евро в день 
06:50 Ставки на супер тренды в спорте 
13:04 Gartner обещал смерть SEO к 2026 году. Открываем метрику и проверяем