Файл: templates/doc/api.tpl
Строк: 87
<? $this->layout('app', ['title' => 'Документация'])
?>
<? $this->start('container') ?>
<link
rel="stylesheet"
href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/styles/default.min.css">
<script
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<style>
.hljs {
display: block;
overflow-x: auto;
padding: .5em;
background: #fff;
}
</style>
<section class="pt-120 pb-90 default-bg">
<div
class="container">
<div class="row
justify-content-center">
<div
class="col-xl-12 col-lg-12">
<div
class="section-title text-center"
data-animate="fadeInUp">
<h1>Документация API</h1>
</div>
</div>
</div>
<div
class="row">
<div
class="col-lg-9">
<div
class="blog-wrap single-post-page">
<!-- Blog details -->
<div
class="post-content-block post-main-content mb-60 clearfix">
<a name="form"></a>
<label>Генерация формы оплаты:</label>
<div class="col-12">
<pre
class="bg-info"><code
class="html"><?=htmlspecialchars($form);?></code></pre></div>
<br>
<label>Генерация HASH для формы
оплаты:</label>
<br>
<code
class="php">
<?=htmlspecialchars($setting['formHash']);?>
</code>
<br>
<a name="input"></a>
<label>Описание полей:</label>
<br>
<div class="table-responsive-lg">
<table class="features-table pt-sans text-center
mb-0 table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>amount</code></td>
<td>Сумма платежа в формате 100.00</td>
</tr>
<tr>
<td><code>shop_id</code></td>
<td>ID
кассы в настройках мерчанта</td>
</tr>
<tr>
<td><code>label</code></td>
<td>Внутрений номер платежа</td>
</tr>
<tr>
<td><code>method</code>
(необязательный)</td>
<td>Способ
оплаты. Варианты:
card,yandex,qiwi,mobile,payeer,webmoney,balans</td>
</tr>
<tr>
<td><code>desc</code>
(необязательный)</td>
<td>Описание
платежа (в base64)</td>
</tr>
<tr>
<td><code>hash</code></td>
<td>Зашифрованная строка
<b>shop_id.amount.secretKey.label</b> методом
sha256.</td>
</tr>
</tbody>
</table>
</div>
<br>
<br>
<label>Ответ</label>
<br>
<b>Формат: <code>$_POST</code></b>
<br>
<div
class="table-responsive-lg">
<table class="features-table pt-sans text-center mb-0
table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>$_POST['amount']</code></td>
<td>Сумма платежа в формате 100.00</td>
</tr>
<tr>
<td><code>$_POST['shop_id']</code></td>
<td>ID кассы в настройках
мерчанта</td>
</tr>
<tr>
<td><code>$_POST['label']</code></td>
<td>Внутрений номер платежа</td>
</tr>
<tr>
<td><code>$_POST['pay']</code></td>
<td>Номер платежа мерчанта</td>
</tr>
<tr>
<td><code>$_POST['method']</code></td>
<td>Возвращает ID платежной системы
через которую была произведена
оплата</td>
</tr>
<tr>
<td><code>$_POST['test']</code></td>
<td>Индикатор тестового платежа. При
тестовых платежах будет равно 1</td>
</tr>
<tr>
<td><code>$_POST['time']</code></td>
<td>Возвращает вермя платежа в формате
<?=date('c');?></td>
</tr>
<tr>
<td><code>$_POST['hash']</code></td>
<td>Зашифрованная строка
<b>shop_id.amount.secretKey2.label.pay</b> методом
sha256.</td>
</tr>
</tbody>
</table>
</div>
<br>
<label>Пример
обработчика:</label>
<a
name="result"></a>
<br>
<pre
class="bg-info"><code class="php">
<?=htmlspecialchars($setting['result']);?>
</code></pre>
<br>
<label>Ответ
обработчика</label>
<br>
Для гарантии
корректной обработки поступившего
платежа периодически на URL Result
отправляется проверочный запрос.
При
успешной обработке должна вернуться
строка <code>OK</code> или
<code>200</code>
<br>
<br>
<br>
<br>
<label>Ответ</label>
<br>
<b>Формат: <code>INT</code></b>
<br>
<br>
<div
class="table-responsive-lg">
<table class="features-table pt-sans text-center mb-0
table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Payment Number</code></td>
<td>Номер платежа </td>
</tr>
</tbody>
</table>
</div>
<br><br>
<h4>Автопополение
(подписки)</h4>
<a
name="moneyback"></a>
<br>
<label>Поддерживаемые платежные
системы:</label> <i>Яндекс
Деньги</i>
<br>
<label>Адрес:</label>
<i>https://uspay.ru/api/subscriptions</i></br>
<b>Формат:
<code>$_POST</code></b>
<br>
<br>
<div
class="table-responsive-lg">
<table class="features-table pt-sans text-center mb-0
table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>$_POST['amount']</code></td>
<td>Сумма платежа в формате 100.00</td>
</tr>
<tr>
<td><code>$_POST['time']</code></td>
<td>Срок подписки в днях, спустя
который будет производиться списывание
средств</td>
</tr>
<tr>
<td><code>$_POST['purse']</code></td>
<td>Номер Яндекс кошелька</td>
</tr>
<tr>
<td><code>$_POST['shop_id']</code></td>
<td>ID кассы из кабинета USPAY.RU</td>
</tr>
<tr>
<td><code>$_POST['hash']</code></td>
<td>Зашифрованная строка
<b>shop_id.amount.публичный_ключ.purse</b>
методом sha256.</td>
</tr>
</tbody>
</table>
</div>
<br>
<label>Ответ</label>
<br>
<b>Формат:
<code>POST</code></b>
<br>
<br>
<div class="table-responsive-lg">
<table class="features-table pt-sans
text-center mb-0 table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>type</code></td>
<td>По умолчанию равен subscriptions</td>
</tr>
<tr>
<td><code>error</code></td>
<td>В
случае ошибки возвращает <b>error</b>, в
случае успеха этот параметр
пустой</td>
</tr>
<tr>
<td><code>purse</code></td>
<td>Номер кошелька плательщика</td>
</tr>
<tr>
<td><code>shop_id</code></td>
<td>ID
кассы из кабинета USPAY.RU</td>
</tr>
<tr>
<td><code>time</code></td>
<td>Срок подписки в днях, спустя
который будет производиться списывание
средств</td>
</tr>
<tr>
<td><code>hash</code></td>
<td>Зашифрованная строка
<b>shop_id.amount.публичный_ключ.purse</b>
методом sha256.</td>
</tr>
</tbody>
</table>
</div>
<br>
<br>
<br>
<h4>API
информации о платеже</h4>
<br>
<a name="payments-info"></a>
<br>
<label>Адрес:</label>
<i>https://pay.<?=__URL__;?>/api/payments-info</i></br>
<b>Формат:
<code>$_POST</code></b>
<br>
<br>
<div
class="table-responsive-lg">
<table class="features-table pt-sans text-center mb-0
table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>$_POST['hash']</code></td>
<td>Секретный ключ площадки в
sha256</td>
</tr>
<tr>
<td><code>$_POST['shop']</code></td>
<td>ID кассы </td>
</tr>
<tr>
<td><code>$_POST['label']</code></td>
<td>Номер платежа в системе
мерчанта</td>
</tr>
</tbody>
</table>
</div>
<br>
<label>Ответ</label>
<br>
<b>Формат:
<code>json</code></b>
<br>
<br>
<div
class="table-responsive-lg">
<table class="features-table pt-sans text-center mb-0
table">
<thead>
<tr>
<th>Имя</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>PayID</code></td>
<td>ID
платежа в системе мерчанта</td>
</tr>
<tr>
<td><code>amount.value</code></td>
<td>Сумма платежа</td>
</tr>
<tr>
<td><code>amount.sum</code></td>
<td>Сумма платежа с комиссией</td>
</tr>
<tr>
<td><code>method</code></td>
<td>Способ оплаты</td>
</tr>
<tr>
<td><code>desc</code></td>
<td>Описание платежа</td>
</tr>
<tr>
<td><code>date</code></td>
<td>Дата и время проведения платежа в
формате <?=date('c');?></td>
</tr>
</tbody>
</table>
</div>
<br>
<label>Пример ответа:</label>
<br>
<code>stdClass Object ( [payID] => 1893 [amount]
=> stdClass Object ( [value] => 2.00 [sum] => 2.10 ) [method]
=> mobile [date] => 2020-02-24T19:42:28+03:00 [status] => success
[desc] => Пополнение баланса мерчанта
)</code>
<br>
</div>
</div>
</div>
<div
class="col-lg-3">
<a
href="#form"
class="list-group-item">Генерация
формы</a>
<a
href="#input"
class="list-group-item">Описание
полей</a>
<a
href="#result" class="list-group-item">Пример
обработчика</a>
<a href="#moneyback"
class="list-group-item">Автопополение
(подписки)</a>
<a
href="#payments-info" class="list-group-item">API
информации о платеже</a>
</div>
</div>
</div>
</section>
<? $this->stop() ?>