help center Any.Money

SCI: Как легко начать принимать оплаты всего через 5 минут после регистрации?

О сервисе Any.Money F.A.Q.
Прежде чем приступать к инструкции о быстром начале приема оплат через SCI, рекомендуем ознакомиться со статьей API vs SCI

После регистрации и создания мерчанта на сервисе Any.Money, по дефолту доступны платежные системы, перечень которых можно найти здесь
Для того чтобы начать фактически сразу принимать оплаты по 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» может быть встроенная как в кнопку «Оплатить» на сайте под товаром, или же вынесена на отдельную страницу.