Ошибка при оплате InstantShop

При оплате ошибка WMR

#1 1 сентября 2014 в 11:23
День добрый. Подскажите кто пользуется шопом. Мерчант WebMoney сейчас нормально работает?

Не пойму что случилось, до этого нормально работал, сейчас при попытке оплатить, даже тестовой, выдает ошибку, продавец запретил...
На неделе подключал другой магазин, и копался в мерчанте с кошельками, может что напутал.
На вскидку вроде все на месте.

Решил спросить, а то может проблема у них, и я зря копаюсь.
#2 1 сентября 2014 в 12:53
В общем еще детали.
На другом магазине тоже такая же ошибка. Версия Instant 1.10.Х

В мерчанте WM сейчас изменились настройки интерфейса.
Метод формирования контрольной подписи MD5 больше не поддерживается, и с ним сохранить настройки приема не возможно.
Пробовал ставить два доступных, без результатов.

Однако если убрать, галку с "передавать параметры в предварительном запросе" то тестовый платеж проходит.



Но не знаю можно ли изменять эти настройки.
Возможно разработчики компонента подскажут…
#3 1 сентября 2014 в 15:17
Вам достаточно выбрать в настройках мерчанта метод SHA256 и изменить строку в обработчике WM
$hash = strtoupper(md5($common_string));
на
$hash = strtoupper(sha256($common_string));
#4 1 сентября 2014 в 16:47
Ок. А в файле info.php в строке:
  1.  
  2. $pscfg['SECRET_KEY']['value'] = substr(md5(time().date('h h s')), 0, 9);
  3.  
Менять md5 на sha1 не надо?
#5 1 сентября 2014 в 17:50
есть у кого версия адаптированная под 1.10.4? не работает на этой версии
#6 1 сентября 2014 в 18:21


Ок. А в файле info.php в строке:

  1.  
  2. $pscfg['SECRET_KEY']['value'] = substr(md5(time().date('h h s')), 0, 9);
  3.  
Менять md5 на sha1 не надо?

Rainbow

Нет
#7 1 сентября 2014 в 19:56

$hash = strtoupper(md5($common_string));
на
$hash = strtoupper(sha1($common_string));

stealthdebuger

Спасибо, но не работает. На тестовой проверке та же ошибка, "продавец запретил..."
#8 1 сентября 2014 в 21:49


Спасибо, но не работает. На тестовой проверке та же ошибка, "продавец запретил..."

Rainbow

Попробуйте такой вариант
$hash = strtoupper(hash('sha256', $common_string));
#9 2 сентября 2014 в 00:12

Попробуйте такой вариант
$hash = strtoupper(hash('sha256', $common_string));

stealthdebuger

Тоже не работает. Ошибка та же.
#10 2 сентября 2014 в 00:39
Дайте доступ к фтп, посмотрю. Бесплатно.
#11 2 сентября 2014 в 00:56
По идее этот вариант:

$hash = strtoupper(hash('sha256', $common_string));

stealthdebuger

Должен работать. Блукая по инструкциям мерчанта, вышел на этот сайт и описание:
owebmoney.ru/merchant.shtml

Там в конце тоже этот вариант написан.

Но у меня не работает((( Может быть еще что то-где то надо править…
#12 2 сентября 2014 в 01:05
Скачайте эту библиотеку payeer.com/upload/api/sha256.inc.zip
далее ее следует закинуть на хост и подключить в скрипте
require_once("путь_к_файлу/sha256.inc.php");

и затем $hash = strtoupper(sha256($common_string));
#13 2 сентября 2014 в 01:46
stealthdebuger, спасибо, завтра попробую.
#14 2 сентября 2014 в 13:18
Не работает пробовал на двух сайтах (хостеры разные), все время ошибка:


продавец не дал разрешение на выполнение операции: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">....


при включении SHA256 это должно работать:

$hash = strtoupper(sha256($common_string));

попадалось на нескольких сайтах, должно… но не работает.

Может руки не из того места растут...


В общем на сайтах осталась только ROBOKASSA, вебмани отключил. Хорошо что успел зарегистрировать их в Мегастоке...


PS: WebMoney запретил шифровать в MD5 с 14. 08. 2014.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.