Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.07.2022, 02:41   #1
LifeIsArt
Новичок
Джуниор
 
Регистрация: 27.07.2022
Сообщений: 2
По умолчанию Ошибка SCI

Нужно для проверки подключить платежную систему, выбрал платежку Any.Money
Вот код формы.

Код:
<form name="payment" method="post" action="https://sci.any.money/invoice" accept-charset="UTF-8">
  <input type="hidden" name="sign" value=""/>
  <input type="hidden" name="merchant" value=""/>
  <input type="hidden" name="amount" value="100.25"/>
  <input type="hidden" name="in_curr" value="UAH"/>
  <input type="hidden" name="payway" value="card"/>
  <input type="hidden" name="externalid" value="123"/>
  <input type="hidden" name="expiry" value="600"/>
  <input type="hidden" name="client_email" value="customer@domain.com"/>
  <input type="hidden" name="callback_url" value="https://example.com/order_handler"/>
  <input type="hidden" name="redirect_url" value="https://example.com/order_page/"/>
  <input type="submit" value="Pay">
</form>
Код:
<?php
function sign_form_data(string $key, array $data) : string {
    ksort($data);
    $s = '';
    foreach($data as $k=>$value) {
      if (in_array(gettype($value), array('array', 'object', 'NULL')) ){
          continue;
        }
        if(is_bool($value)){
            $s .= $value ? "true" : "false";
        } else {
            $s .= $value;
        }
    }
    return hash_hmac('sha512', strtolower($s), $key);
}
?>
PHP код для подписи

Не понимаю куда нужно вставить SCI ключ для подписи, чтобы корректно работала, всегда ошибка кода.
Ставил Ключ в эту часть
Код:
  <input type="hidden" name="sign" value=""/>
Хелп плз
LifeIsArt вне форума Ответить с цитированием
Старый 27.07.2022, 02:42   #2
LifeIsArt
Новичок
Джуниор
 
Регистрация: 27.07.2022
Сообщений: 2
По умолчанию

Каждый SCI-запрос, направляемый в модуль invoice, заверяется подписью, которая формируется по алгоритму HEX(HMAC-SHA512(data, sci_key)), где:
- data - строка, составленная из значений параметров. Они добавляются в запрос в порядке следования ключей, отсортированных по алфавиту;
- sci_key - invoice-ключ мерчанта.
LifeIsArt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка сценария в Visual Studio. На этой странице произошла ошибка скрипта. Ошибка: разрешение отклонено. Код 0. Мaкс Windows 15 13.11.2022 12:25
[РЕШЕНО] Помогите в чем может быть ошибка? Ошибка ';' expected but 'BEGIN' found АлександрDelphi Общие вопросы Delphi 7 06.03.2016 19:25
Java. Ошибка. Компилируется, но не запускается. Ошибка duplicate class. Проблема не в коде. nevender Общие вопросы по Java, Java SE, Kotlin 2 13.02.2016 13:24
Воспользовался excel надстройками и после этого начала появляться ошибка «ошибка 13 Type Misscmatch» malinov1maxim Microsoft Office Excel 5 27.01.2016 23:17
Ошибка run-time Error 1004 общая ошибка ODBC kaval88 Microsoft Office Excel 0 27.02.2011 20:20