Отличие от обычной схемы работы заключается в том, что платеж инициируется вызовами методов API без вывода дополнительных WEB страниц. Для этого передается дополнительный параметр background cо значением “1”. На данный момент по описанной схеме возможно проведение оплаты по токенам карт, через QIWI и мобильный платеж для операторов Билайн, МТС, Мегафон и ТЕЛЕ2.

Получение списка доступных для сервиса способов оплаты

Для получения списка доступных способов которые могут иницироваться в фоновом режиме необходимо отправить GET запрос на: https://partner.rficb.ru/alba/pay_types
Со следующими параметрами:

Ответ сервиса приходит в виде JSON-строки

где types – доступные для данного сервиса способы оплаты

SDK пример (на GitHub):

1
2
3
4
5
6
7
8
from alba_client import AlbaService, AlbaException

    service = AlbaService(SERVICE_ID, 'SERVICE_SECRET')
    try:
        pay_types = service.pay_types()
        # pay_types - список допустимых способов оплаты
    except AlbaException, e:
        print("Произошла ошибка: {}".format(e))
1
2
3
    AlbaService service = new AlbaService(SERVICE_ID, "SERVICE_SECRET");

    Set<String> paymentTypes = service.paymentTypes();

init_payment

Инициация платежа идет методом отправки формы из кода кнопки плюс параметра background=1 и параметров для аутентификации POST запрос необходимо отправлять на: https://partner.rficb.ru/alba/input/

Для аутентификации необходимо передать  один из следующих наборов параметров:

или


init_result 

ВАЖНО: результат инициализации означает создание платежной транзакции. Оплата транзакции отложена по времени, результат оплаты необходимо получать обрабатывая нотификации (сокращенная нотификация, расширенная нотификация) от системы РФИ или формировать запрос на получение статуса транзакции.

ВАЖНО: для операций проведения повторного списания по рекуррентам, операция выполняется синхронно. Положительный ответ гарантирует успешное проведение операции, при этом рекомендуется в любом случае обрабатывать нотификации отправляемые от системы РФИ.

Положительный ответ

{‘status’: ‘success’, ‘tid’: <TID>, 'help':"<текст, который описывает процедуру оплаты через мобильную коммерцию или терминал>"}

{‘status’: ‘success’, ‘tid’: <TID>}

Ответ c ошибкой

{‘status’: ‘error’, ‘code’: ‘<type|auth|data|common|unique>’, ‘msg’: ”}

Где message это текстовое описание ошибки, а code – тип:

Положительный ответ для шлюза mc:

Положительный ответ для шлюза spg (рекуррентный платеж по картам):

SDK пример:

tr_status 

После того как транзакция создана, партнер имеет возможность получить информацию по транзакции отправив POST запрос на https://partner.rficb.ru/alba/details В запросе необходимо передать (версия протокола 2.0):

Либо можно отправить GET запрос по тому же адресу с параметрами (УСТАРЕВШЕЕ):

Ответ c ошибкой:

Где msg это текстовое описание ошибки, а code – тип:

Положительный ответ:

SDK пример:

Информирование партнера об успешной оплате

см. Передача данных от системы Банка