Подскажите, что я делаю не так? Использую 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% правильные, при отключении проверки подписи - все работает.
Настройки кошелька: