Некоторые типы пополнения счета работают асинхронно. Приложение отправляет запрос на выполнение операции, а затем периодически обращается на сервер, чтобы проверить статус запрошенной операции. Асинхронно работает ребилл по кредитным картам и мобильная коммерция. При инициализации асинхронных операций сервер возвращает приложению «тикет» и «ID заказа», используя которые приложение может проверять статус операции.
ID функции
r_check_order
Кто может вызывать
Авторизованный пользователь
Авторизованное приложение
Принимаемые параметры
order_id – номер заказа на пополнение счета;
Возвращаемые значения
orders – массив содержащий один элемент со значениями:
id – подтверждение номера запрошенного заказа на пополнение счета;
state – текущий статус запрошенного заказа; может принимать следующие значения:
- unknown – заказ не опознан, ошибка;
- closed_ok – заказ успешно «закрыт», счет пополнен;
- failed – заказ был отвергнут процессингом;
- pending – статус заказа пока не известен, процессинг еще не прислал ЛитРес уведомления об успехе или неуспехе транзакции;
error_code – необязательный параметр, добавляется в ответ при возникновении ошибки на стороне процессинга; возможные значения:
- 1 – техническая проблема на стороне платежного сервиса. Возможно, что запрошенная операция пройдет успешно при отправке запроса спустя некоторое время;
- 2 – провести платеж невозможно, плательщику стоит воспользоваться другим способом оплаты;
- 3 – переданы корректные данные, но платеж с переданными параметрами отклонен платежной системой. Например, банк-эмитент карты запретил платеж через интернет, мобильный телефон принадлежит корпоративному тарифу и не может провести списание и т.п. Плательщику стоит либо связаться с системой, проводящей платежи (например, позвонить в банк) и выяснить подробности, либо передать новые параметры для оплаты;
- 4 – время жизни переданного order_id истекло (время жизни 45 мин).
Возможные ошибки
error_code | error_message | Описание |
---|---|---|
101103 | Phone operator no supported. Only 'beeline','mts','megafon','tele2','letai' | Сотовый оператор не поддерживается. Пополнение возможно только с Megafon, Beeline, MTS, Tele2 и Letai |
101125 | Невалидный номер заказа | Переданный в параметрах order_id истек либо неверен (протух или не в списке выданных) |
Пример запроса на сервер
{ "app": "1", "time": "2014-11-07T16:21:02+03:00", "sha": "b79d8e9993d20da6abe78838d3c7fbf640a4c52956569bef3c685d3453316b5c", "sid": "f121e02084344f06da1a5213999e8fcG", "requests": [ { "func": "r_check_order", "id": "check_order", "param": { "order_id": "100500", } } ] }
Пример ответа сервера
{ "success": true, "time": "2014-11-07T16:21:02+03:00", "check_order": { "orders" : [ { "state" : "pending", "id" : "896720627", "account" : 0 } ], "success" : true } }