Page tree
Skip to end of metadata
Go to start of metadata
Данный функционал подключается по запросу в службу технической интеграции РФИ.

Создание токена


Необходимо отправить запрос на URL:

https://test.rficb.ru/cardtoken/create - тестовый

https://secure.rficb.ru/cardtoken/create - продакшн

Срок жизни токена составляет 15 минут. Каждый сформированный токен можно использовать не более одного раза.

POST запрос с параметрами:

service_id - ID сервиса

card - Номер карты. Цифры без пробелов.

exp_month - Месяц истечения срока действия карты. 2 цифры с нулём

впереди для месяцев от 1 до 9 (‘01’...’09’).

exp_year Год истечения срока действия карты (2 цифры 20ХХ).

cvc - Проверочный код карты (CVV2/CVC2) - 3 цифры.

card_holder (опционально) до 30 символов Только в латинице и заглавными.


Ответ (JSON-encoded)

Успешное создание токена: {“status”: “success”, “token”: “[Токен]”}

Ошибка: {“status”: “error”, “message”: “[Общее описание ошибки]”}

При ошибке ещё может быть дополнительный элемент “errors” - словарь, где

ключи - наименования полей, а значения - описание ошибок в них.



Платёж с использованием карты (/alba/input)


1. Токен карты может быть использован для инициации как обычного, так и рекуррентного платежа;


2. Использование токена допускается только в режиме background;


https://partner.rficb.ru/alba/input/?...payment_type=spg_test&background=1&card_token=3dddfa33494c6bfdf4d5230f2286d44bab8538e13ad18d61cb336c73c5b60f94


3. Если платёж не успешен, то будет возвращена ошибка (см. описание ответов для background платежей);


4. Если карта не требует 3DS авторизации и платёж успешен, то будет возвращён ID транзакции alba (см. описание ответов для background платежей);


5. Если карта требует 3DS авторизации, то в ответе, вместе с ID транзакции alba, будет возвращён словарь 3ds с данными, необходимыми для 3DS авторизации


3DS авторизация


При наличии словаря с названием 3ds в ответе инициации background платежа, пользователя следует перенаправить на сайт банка-эмитента для прохождения 3DS авторизации. Часть данных для отсылки находится в словаре 3ds, а часть партнёр должен сформировать сам;


1. Отсылать следует POST запросом на URL, указанный в поле ACSUrl словаря 3ds;


2. Значения для отсылки:


  1. PaReq - из поля PaReq словаря 3ds;

  2. MD - из поля MD словаря 3ds;

  3. TermUrl - URL обработчика, расположенного на сайте партнёра. На него будет возвращён пользователь после прохождения 3DS авторизации на сайте банка-эмитента карты. Этот URL нужно сформировать так, чтобы в нём передавалась информация о транзакции: рекомендуется передавать service_id, tid и order_id (если партнёр сформировал транзакцию с ним);


3. Обработчик результата 3DS авторизации (TermUrl)


  1. Этот обработчик должен вызвать метод API /alba/ack3ds/ для проверки прохождения 3DS авторизации пользователем;

  2. В GET параметрах получит ранее сформированную информацию о транзакции (service_id, tid, order_id);

  3. В POST параметрах получит информацию от банка эмитента - поля PaRes и MD;

  4. Для проверки прохождения 3DS авторизации следует вызвать POST запросом API https://partner.rficb.ru/alba/ack3ds/ , передав туда:

    1. service_id;

    2. tid или order_id;

    3. emitent_response - данные, пришедшие от банка-эмитента в виде JSON-encoded словаря;

    4. Note: Авторизация запроса: подпись версии 2.0 или через api_key;

  5. Результат метода API /alba/ack3ds/ :

    1. При неуспехе, будет возвращен ответ в виде JSON:

    2. {"status": "error", "message": "ОПИСАНИЕ ОШИБКИ"}

    3. При успешной проверке, будет возвращен ответ в виде JSON:

    4. {"status": "success"}