Но это так, злобная эмоциональная вводная по мотивам борьбы за прием физлицом бабла с банковских карт. Я ее для себя решил, аминь.
А после Яндекса я, естественно, озаботился ВебМанями. Получил персональный сертификат, поставил штатный модуль оплаты вебманями, начал разбираться в процессе. Выяснилось, что получение хэша по алгоритму MD5 вебманями уже не поддерживается, а поддерживается либо HASH256, либо SIGN-что-то-там. Я выбрал HASH256. Отдельно непонятно, нахуая в списке вариантов есть три варианта - MD5, HASH256 и SIGN, если при выборе MD5 и нажатии кнопки "Сохранить" получаем фразу "МД5 больше не поддерживается" .
Есесьно, штатный модуль не работает, т.к. жестко настроен под MD5, о чем написано ажно в description модуля.
Иправление (под HASH256):
$crc = strtoupper(md5($merch_bd.$params["LMI_PAYMENT_AMOUNT"].$orderID.$params["LMI_MODE"].$params["LMI_SYS_INVS_NO"].$params["LMI_SYS_TRANS_NO"].$params["LMI_SYS_TRANS_DATE"].$skey.$params["LMI_PAYER_PURSE"].$params["LMI_PAYER_WM"]));
заменяем на
$crc = strtoupper(hash('sha256',$merch_bd.$params["LMI_PAYMENT_AMOUNT"].$orderID.$params["LMI_MODE"].$params["LMI_SYS_INVS_NO"].$params["LMI_SYS_TRANS_NO"].$params["LMI_SYS_TRANS_DATE"].$skey.$params["LMI_PAYER_PURSE"].$params["LMI_PAYER_WM"]));
Исправление в тестовом режиме (есть там такой режим у ВебМани) Нормально работает. В нормальном рабочем проверить не могу, нет второго веб-кошелька