Ваш Браузер устарел или не поддерживается нашим сайтом, пожалуйста установите обновленный Internet Explorer или скачайте Google Chrome, FireFox что бы продолжить просмотр сайта.
API используется для совершения платежей по продуктам каталога Beeline. REST API работает по протоколу HTTP и представляет собой набор методов выполнения операций. Запросы и ответы имеют формат и структуру JSON. *** Для работы с API, необходимо получить `API-name` и `API-password` у администратора *** **Примечание: ** В настоящее время API находится в стадии разработки, методы и параметры могут быть изменены. *** Используемые протоколы: * HTTPS *** ## Алгоритм работы
1. Мерчант выполняет запрос для получения каталога продуктов - метод `get-products`. Метод не обязательный для использования; Мерчант может вручную проставить идентификаторы продуктов, соответствующие каталогу.
2. Абонент выбирает продукт на портале Мерчанта и указывает способ оплаты с помощью мобильного баланса.
3. Мерчант выполняет запрос на создание платежа - метод `create-payment`.
4. Платформа выполняет необходимые действия (проверка лимитов, расчет комиссий и т. д.) и отвечает Мерчанту.
5. Мерчант отображает абоненту необходимую информацию, полученную в п.3 (комиссии, итоговая сумма).
5.1. Если необходимо подтвердить платеж с помощью OTP (метод `create-payment` вернет параметр ` otpConfirm = true`) - Мерчант отображает поле для ввода OTP (6 цифр) абоненту.
5.2. Абонент может запросить переотправку OTP. Для этого Мерчант отображает кнопку "Отправить OTP еще раз" - вызов метода `resend-otp`.
5.2.1. Если метод `resend-otp` вернлу параметр ` canResend = false` - абонент превысил количество попыток отправки SMS, переотправка OTP должна быть недоступна (например, кнопка становится неактивной).
6. Пользователь вводит OTP (если необходимо) и соглашается с оплатой (например, нажатием кнопки "Подтвердить") - вызов метода `confirm-payment`
6.1. Если пользователь не согласен с оплатой (например нажимает кнопу "Отменить"), необходимо вызвать метод `cancel-payment`. В данном случае операция будет отменена.
7. Платформа выполняет необходимые проверки, создает транзакции и отвечает Мерчанту, передавая чеки по операции.
7.1. Если по какой-то причине ответ не получен или возникла ошибка - пожалуйста проверьте статус операции используя метод `check-operation-status`.
8. Мерчант может отобразить чеки операции для пользователя.
** Если необходимо выполнить возврат платежа - необходимо использовать метод `refund-payment`. Если операция успешна - средства будут возвращены на баланс абонента.
*** Для получения истории операций необходимо использовать метод `get-payment-history`. Например, для отображения истории операций в личном кабинете пользователя.
**** Для получения чеков по операции необходимо использовать метод `get-receipts`. *** ## Формирование запросов: Для каждого запроса должна быть сформирована цифровая подпись. Чтобы создать подпись, необходимо использовать алгоритм шифрования HMAC-SHA256. 1. Создать JSON запрос 2. Зашифровать его с помощью алгоритма HMAC-SHA256 используя предоставленный пароль 3. Установить полученную подпись в параметр `Signature` заголовка запроса
``` # Пример формирования подписи на языке PHP: $password = '328378273892'; $data = '{"example":222,"desc":"some text"}'; $sign = hash_hmac('sha256', $data, $password); ``` *** Возможные коды ошибок (errorCode, errorMessage). Коды могут быть добавлены в процессе разработки.