Перейти к содержимому


Sander

Регистрация: 23 фев 2017
Не в сети Активность: сен 03 2019 17:12
-----

Мои темы

LMI_PAYMENTFORM_SIGN подпись платежной формы неверна

31 августа 2019 - 15:27

Подскажите, что я делаю не так? Использую Web Merchant Interface.
Постоянно пишет ошибку:
Прием WebMoney для этого магазина неверно настроен. Обратитесь в техническую поддержку магазина. (LMI_PAYMENTFORM_SIGN подпись платежной формы неверна!)
 

 

Подпись и форму формирую следующим образом:

$hash = [
    $this->config['wallet'],
    $payval, //дробное число, округленное до 2го знака после запятой
    $invoice_id, //целое уникальное число
    'pass-x20', //Secret Key X20
];
$hash = join(';', $hash); //разделенных точкой с запятой
$hash = hash('sha256', $hash); //путем хэширования алгоритмом SHA256

return <<<HTML
<form method="POST" action="https://merchant.webmoney.ru/lmi/payment.asp" accept-charset="windows-1251" >
<input type="hidden" name="LMI_PAYEE_PURSE" value="{$this->config['wallet']}" />
<input type="hidden" name="LMI_PAYMENT_AMOUNT" value="{$payval}" />
<input type="hidden" name="LMI_PAYMENT_NO" value="{$invoice_id}">
<input type="hidden" name="LMI_PAYMENT_DESC_BASE64" value="{$desc}" />
<input type="hidden" name="LMI_SIM_MODE" value="0" />
<input type="hidden" name="LMI_PAYMENTFORM_SIGN" value="{$hash}" />
</form>
HTML;

Значения переменных 100% правильные, при отключении проверки подписи - все работает.

 

Настройки кошелька:

https://prnt.sc/ozzm5l