Некоторые типы пополнения счета работают асинхронно. Приложение отправляет запрос на выполнение операции, а затем периодически обращается на сервер, чтобы проверить статус запрошенной операции. Асинхронно работает ребилл по кредитным картам и мобильная коммерция. При инициализации асинхронных операций сервер возвращает приложению «тикет» и «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
 }
}