SCI: Как легко начать принимать оплаты всего через 5 минут после регистрации?
Прежде чем приступать к инструкции о быстром начале приема оплат через SCI, рекомендуем ознакомиться со статьей API vs SCI
Для того чтобы начать фактически сразу принимать оплаты по SCI, необходимо добавить готовый код на ваш сайт.
Код формирования SCI формы:
<?php
$res = [
'amount' => '',
'in_curr' => '',
'payway' => '',
'merchant' => '',
'merchant_payfee' => '',
'client_email' => '',
'externalid' => uniqid(),
'redirect_url' => '',
'callback_url' => ''
];
$res['sign'] = sign_form_data('SCI key', $res);
function sign_form_data($key, $data) {
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);
}
?>
<form name="payment" method="post" action="https://sci.any.money/invoice" accept-charset="UTF-8">
<?php foreach ($res as $k=> $v): ?>
<input type="hidden" name="<?= $k; ?>" value="<?= $v; ?>"/>
<?php endforeach; ?>
<input type="submit" value="PAY">
</form>
В коде необходимо отредактировать «SCI key», указав секретный ключ мерчанта.
Также необходимо задать значение для параметров в переменной $res.
Обязательно необходимо указать:
- id мерчанта(«merchant»);
- сумму инвойса(«amount»);
- валюту инвойса(«in_curr»);
- а также id инвойса(«externalid»);
Остальные параметры необязательны и могут иметь нулевое/пустое значение(null) или и вовсе удалены из запроса.
Кнопка «Pay» может быть встроенная как в кнопку «Оплатить» на сайте под товаром, или же вынесена на отдельную страницу.