Руководство по подключению, интеграции и использованию Платежной Системы РБС.

Редакция: 2009-07-20; v4.1



1. Основные термины и определения.

Термин Описание
Магазин Торгово-Сервисное Предприятие, продающее товары или оказывающее услуги через интернет-сайт.
Клиент или Покупатель Клиент Торгово-Сервисного Предприятия, желающий осуществить оплату за приобретаемые на сайте магазина товары или услуги.
Карта или Пластиковая карта Пластиковая карта международных платежных систем VISA и MasterCard, выданная Клиенту Магазина в его "родном" банке (Банке эмитенте) для операций со средствами, хранящимися на счете Клиента Магазина, "привязанном" к данной карте.
Банк-эмитент Банк, в котором у Клиента Магазина открыт счет, с которого осуществляется платеж, и к которому "привязана" пластиковая карта.
Банк-эквайер Банк, осуществляющий операции(снятие, возврат и т.д.) со средствами на карте Клиента в пользу Магазина. Банк-эквайер взаимодействует с Банком-эмитентом через платежные системы(Visa, MasterCard и тд). В случае Системы РБС - Банком-эквайером является Альфа-Банк.
Система РБС Платежная система РБС является одной из услуг Банка-эквайера и обеспечивает функциональность для Магазина по приему платежей через интернет с использованием Пластиковых карт (международных платежных систем VISA и MasterCard) покупателей.

2. Возможности Системы РБС.

2.1. Поддерживаемые платежи и механизмы аутентификации.

Система поддерживает два типа платежа:

Также средствами системы возможно осуществлять платежи по протоколу 3D-Secure/SecureCode. Механизм аутентификации Пользователя через данные протоколы основан на использовании для аутентификации дополнительных данных о Пользователе, на другом сервере и доставленные через другие каналы данных.

Примечание: К примеру, пользователь может получить пароль дополнительной аутентификации через SMS полученный от банка на сотовый телефон известный Банку-Эмитенту и использовать его на сервере аутентификации Банка-эмитента. Таким образом понижается вероятность фрода (fraud), снижаются финансовые риски.

2.2. Функциональные возможности системы.

Пользователю Системы РБС (Магазину) предоставляются следующие возможности по работе с платежами:

2.3. Страница оплаты.

При вводе данных карты на стороне Системы РБС форма ввода данных о Покупателе и его Пластиковой карте расположена на сайте Системы РБС.

Примечание: при желании пользователя, может быть оформлена в соответствии с дизайном Магазина.

3. Описание процессов приема платежей.

3.1. Прием платежа на стороне Системы РБС.

Покупатель, зайдя на сайт магазина и выбрав набор товаров или услуг, решает расплатиться за них пластиковой карточкой.

В данной ситуации сайт Магазина обычно показывает Покупателю страницу заказа похожую по стилю оформления на классический бумажный счет с кнопкой "оплатить", нажав которую Покупатель по защищенному HTTPS/SSL2-3 каналу, попадает на страницу, на которой вводит данные о своей Пластиковой карте.

При работе с Системой РБС возможны два способа реализации данной безопасной страницы:

Рисунок 1.

Рисунок 1.

Введенные Покупателем данные карты передаются через банковские сети в Банк-эмитент, где принимается решение о списании (или блокировке) средств со счета Покупателя. Информация о данном решении передается обратно в Систему РБС, где транслируется в информационное сообщение и передается обратно сайту магазина.

Сайт магазина обрабатывает данное сообщение и на его основе принимает решение об оказании услуг или отгрузке товара покупателю.

Как показано на рис.1, механизм переадресации покупателя с сайта магазина на страницу ввода данных карты и обратно осуществляется следующим образом:

  1. Предварительно магазин регистрирует заказ покупателя в Системе РБС, передавая данные о заказе и URL для возврата в пп.4 по защищенному HTTPS/SSL2-3 каналу.
  2. В ответ Система РБС по защищенному HTTPS/SSL2-3 каналу передает информационное сообщение обратно сайту Магазина, в котором содержится уникальный идентификатор, присвоенный данному заказу.
  3. Магазин показывает клиенту страницу с кнопкой или ссылкой, после нажатия на которую браузер покупателя перенаправляется на защищенную страницу ввода параметров банковской карты расположенную на сайте Системы РБС. В адресе перенаправления содержится уникальный идентификатор заказа, полученный в предыдущем шаге (пп.3).
  4. Покупатель вводит свою карту и, после завершения оплаты, перенаправляется обратно на сайт Магазина на URL указанный в пункте 1, передавая по защищенному HTTPS/SSL2-3 каналу данные о результате оплаты.

3.2. Взаимодействие при размещении страницы оплаты на стороне Магазина.

Рисунок 2.

Рисунок 2.

При реализации приема платежей на стороне Магазина пользователь, попав на страницу оплаты, вводит данные своей карты.

Данные передаются на сервер Магазина по защищенному HTTPS/SSL2-3 каналу (рис.2 пп.1).

Магазин открывает HTTPS/SSL2-3 соединение с сервером Системы РБС и передает ей данные полученные от пользователя, информацию о заказе и регистрационные данные самого Магазина (рис.2 пп.2).

В ответ, по защищенному HTTPS/SSL2-3 каналу, Система РБС возвращает уникальный номер идентифицирующий данный платеж и результат осуществления операции по оплате (рис.2 пп.3).

3.3. Прием платежа для карты 3D-Secure/SecureCode на стороне магазина.

Рисунок 3.

Рисунок 3.

В случае, когда для карты Покупателя Магазина Банк-эмитент назначил аутентификацию через протоколы 3D-Secure/SecureCode, Система РБС возвращает Магазину расширенный ответ (рис.3 пп.3), на основании которого, Магазин понимает, что данная карта использует механизм аутентификации по 3D-Secure/SecureCode.

В расширенном ответе содержится URL на специально созданную страницу сервера аутентификации Банка-Эмитента и Покупателя необходимо перенаправить дальше по этой URL через http-redirect (рис.3 пп.4).

По окончании аутентификации на сервере Банка-Эмитента, Покупатель будет возвращен на сайт Магазина через HTTP-REDIRECT с информацией о результате аутентификации Банком-Эмитентом. Данная информации будет передана в http параметрах через HTTP-REDIRECT (рис.3 пп.5).

Получив данные от Банка-Эмитента, Сайт Магазина должен через HTTP-запрос по защищенному каналу HTTPS/SSL2-3 уведомить Систему РБС о результатах аутентификации Банком-Эквайером (рис.3 пп.6). В ответ от Системы РБС Магазин получит результат проведения платежа (рис.3 пп.7)

4. Техническое описание функциональных возможностей Системы РБС.

4.1. Прием одностадийного или двухстадийного платежа.

Состоит из двух этапов:

4.1.1. Регистрация заказа (одностадийный или двухстадийный платеж).

Состоит из запроса на регистрацию и ответа от Системы РБС сайту Магазина.

4.1.1.1. Запрос на регистрацию заказа (одностадийный или двухстадийный платеж).

Магазин регистрирует свой заказ на сервере РБС, передавая методом GET или POST HTTPS запрос с параметрами платежа по адресу:

https://playground.paymentgate.ru/bpcservlet/Merchant2Rbs

playground.paymentgate.ru - IP-адрес тестового сервера,
engine.paymentgate.ru - "рабочий" сервер

Обмен данными между сайтом магазина и сервером Системой РБС идет по протоколу HTTPS. SSL шифрование стандарта 2 и 3 защищает данные от прослушивания и изменения. Идентификация Магазина при регистрации заказа происходит по идентификационному номеру и паролю, выданным при регистрации Магазина на сайте Системы РБС.

Примечание:

  1. При формировании запроса ВСЕ ИМЕНА ПАРАМЕТРОВ ЧУВСТВИТЕЛЬНЫ К РЕГИСТРУ И ДОЛЖНЫ БЫТЬ НАБРАНЫ ЗАГЛАВНЫМИ БУКВАМИ.
  2. При подстановке параметров в HTTP-запрос значения необходимо кодировать в соответствии со стандартами w3c.org

Параметры запроса:

Название параметра Тип и формат данных Обязательный параметр для платежа с сайта РБС Обязательный параметр для платежа с сайта Магазина Описание
MERCHANTNUMBER Строка десятичных цифр Да Да Номер Магазина выдаваемый при регистрации данного Магазина на сервере Системы РБС.
Пример:
118600118604000118605
ORDERNUMBER Целое десятичное число.
В диапазоне от 1 до 999999999
Да Да Внутренний идентификационный номер заказа в информационной системе сайта Магазина.
AMOUNT Целое десятичное число. Не меньше 100. Да Да Значение суммы платежа в копейках.
Например, 4378, что соответствует сумме 43 рубля 78 копеек.
BACKURL URL-строка

C указанием префикса http:// или https://

Да Да Адрес на сервере Магазина для приема результатов проведения платежа.
Примечание: При подстановке значения параметра в запрос на регистрацию строку URL необходимо кодировать в соответствии со стандартами w3c.org (URI-encoded)

Пример:
https://www.shop.ru/AuthResult.cgi?
param1=1&param2=2
Пример закодированного значения:
https%3A%2F%2Fwww.shop.ru%2FAuthResult.cgi
%3Fparam1%3D1
$ORDERDESCRIPTION Строка до 350 символов Да Да Краткое описание заказа
Пример:
оплата заказа номер 123
LANGUAGE Строка из двух латинских символов в верхнем регистре
допустимые значения: RU или EN
Да Да Язык страницы ввода параметров пластиковой карты
DEPOSITFLAG Целое десятичное число.
Возможные значения: 0 или 1
Да Да Флаг, отвечающий за автоматический перевод суммы заказа (одностадийный или двухстадийный платеж)
DEPOSITFLAG = 0 - сумма блокируется на счету клиента, но не переводится на счет Магазина. Перевод денег откладывается до момента операции "Завершение".
Примечание: Порядок проведения операции завершение описан в пункте "4.4.2. Проведение отложенной авторизации".
DEPOSITFLAG = 1 - сумма переводится на счет Магазина.
MERCHANTPASSWD Строка Да Да Пароль для идентификации Магазина.
PAN_MKO Число НЕТ ДА Номер карты
Примечание: Используется на странице оплаты выполненной на стороне Магазина.
CVC_MKO Число НЕТ ДА CVC2/CVV2 код карты
Примечание: Используется на странице оплаты выполненной на стороне Магазина.
EXP_MKO Строка
Формат:YYYYMM
НЕТ ДА Срок действия карты.
Примечание: Используется на странице оплаты выполненной на стороне Магазина.
CARDHOLDER_MKO Строка НЕТ ДА Имя держателя карты.
Примечание: Используется на странице оплаты выполненной на стороне Магазина.
USER_IP Строка НЕТ НЕТ Данный параметр содержит IP-адрес покупателя.
CHARSET Строка НЕТ НЕТ Необязательный параметр со значением по умолчанию windows-1251 Определяет кодировку значения параметра $ORDERDESCRIPTION Также может принимать значения UTF-8, KOI8-R, UTF-16, ISO-8859-1, US-ASCII.
MODE Целое число НЕТ Не используется Определяет формат ответа от Сервера РБС
Если MODE=1, то возвращается текстовая строка
Если MODE=2 ,то возвращается XML-документ
Если MODE не указан или имеет любое другое значение отличное от 1 и 2, то тогда возвращается фрагмент HTML

Примечание: Параметры PAN_MKO, CVC_MKO, EXP_MKO, CARDHOLDER_MKO используются только в том случае если по соглашению с Альфа-банком достигнута договоренность о том, что Магазин принимает данные карты со своего сайта. На основании данного соглашения администратор Системы РБС внес отметку в регистрационные данные Магазина такой возможности.

В случае, когда данные о платеже по карте Клиента были введены на странице расположенной на стороне сайта Магазина, запрос с данными браузер Клиента передает на сайта Магазина, откуда программное обеспечение сайта посылает HTTPS запрос и пересылает полученные данные в Систему РБС. В ответ Система РБС возвращает сайту Магазина результат с ответом о прохождении запроса платежа. При такой схеме взаимодействия параметр BACKURL не используется. Описание формата ответа в разделе "Ответ на запрос платежа с данными карты собранными на стороне магазина".

Рассмотрим подробнее параметр BACKURL. Как было сказано выше, он содержит адрес на страницы на сайте Магазина для приема результатов проведения платежа. Адрес BACKURL может содержать произвольное число дополнительных параметров, например, www.shop.ru/AuthResult.cgi?param1=1&param2=2 Имена параметров в адресе не должны совпадать с именами параметров заказа MERCHANTNUMBER, ORDERNUMBER, AMOUNT, BACKURL, $ORDERDESCRIPTION, LANGUAGE, DEPOSITFLAG, MERCHANTPASSWD, LOGIN. Любой параметр запроса на регистрацию заказа, не совпадающий по имени с указанными выше параметрами, трактуется как дополнительный параметр адреса BACKURL.

В случае неуспешной регистрации заказа в качестве HTTPS-ответа возвращается текстовое сообщение с описанием ошибки.

Пример HTTPS GET запроса на регистрацию заказа:

https://playground.paymentgate.ru/bpcservlet/Merchant2Rbs?MERCHANTNUMBER=118600118604000118605&ORDERNUMBER=101&AMOUNT=100&DEPOSITFLAG=1&BACKURL=https%3A%2F%2Frbspm%3Fparam1%3D1&$ORDERDESCRIPTION=desc&LANGUAGE=RU&MERCHANTPASSWD=12345

4.1.1.2. Ответ в формате HTML сервера Системы РБС на запрос о регистрации заказа.

В случае успешной регистрации заказа, сервер Системы РБС возвращает HTTPS-ответ c фрагментом HTML-кода в виде формы, который может быть встроен в страницу для показа Клиенту.

Такой HTML-код может быть применен Магазином для инициации перехода Клиента с сайта Магазина на защищенную форму ввода данных о карте для оплаты заказа, расположенную на сайте Системы РБС.

Формат HTML-формы:

<form name="PaymentForm" action="http://playground.paymentgate.ru/bpcservlet/BPC/AcceptPayment.jsp">
    <INPUT TYPE="Hidden" NAME="MDORDER" VALUE="5378-128-1980-9010164-25-51790-9822793321050"> 
    <INPUT TYPE="Submit" NAME="Submit" VALUE="Ok"> 
</form>

где значение атрибута VALUE HTML-тага INPUT с именем MDORDER представляет собой уникальный идентификатор заказа, который сайт Системы РБС присвоил по данному запросу на регистрацию. Т.е. однозначно идентифицирует Магазин, Покупателя и его конкретный заказ.

Уникальный идентификатор заказа (т.е. передаваемый таким образом параметр MDORDER) представляет собой строку длинной до 150 символов.

4.1.1.3. Ответ в формате XML сервера Системы РБС на запрос о регистрации заказа.

Если при запросе на регистрацию заказа параметр MODE=2, то тогда в качестве HTTP-ответа на запрос сайт Системы РБС вернет XML-документ следующего формата:

<?xml version="1.0" encoding="UTF-8">
    <mdorder>5378-128-1980-9010164-25-51790-9822793321050</mdorder>

Где XML-таг mdorder содержит уникальный идентификатор заказа, который сайт Системы РБС присвоил по данному запросу на регистрацию.

Уникальный идентификатор заказа (т.е. передаваемый таким образом параметр mdorder) представляет собой строку длинной до 150 символов.

4.1.1.4. Ответ текстовом формате сервера Системы РБС на запрос о регистрации заказа.

Если при запросе на регистрацию заказа параметр MODE=1, то тогда в качестве HTTP-ответа на запрос сайт Системы РБС вернет документ, состоящий из строки следующего формата:

5378-128-1980-9010164-25-51790-9822793321050

Строка является уникальным идентификатором заказа, который сайт Системы РБС присвоил по данному запросу на регистрацию.

Уникальный идентификатор заказа представляет собой строку длинной до 150 символов.

4.1.1.5. Ответ в случае ошибки регистрации заказа.

В случае ошибки при регистрации заказа сайт Системы РБС в ответ на HTTPS-запрос о регистрации заказа возвращает сайту Магазина текстовое сообщение с описанием ошибки допущенной при передаче параметров регистрации или сбоя на стороне сервера.

Варианты возвращаемых ошибок:

Значение Описание
merchanNumber==null MERCHANTNUMBER пустой или пропущен
orderNumber==null ORDERNUMBER пустой или пропущен
orderNumber is not a number ORDERNUMBER не является числом
amount==null AMOUNT пустой или пропущен
amount must have at least 3 chars AMOUNT должен содержать в себе не меньше трех знаков (т.к. минимальная сумма платежа 100 копеек)
AMOUNT is not a number AMOUNT не является числом
depositFlag==null DEPOSITFLAG пустой или пропущен
backUrl==null Поле BACKURL пустое или пропущено
orderDescription==null Не указан параметр описания заказа ORDERDESCRIPTION
merchantPasswd==null Не указан пароль Магазина
merchantPasswd incorrect Пароль Магазина неверен
wrong currency code Данная валюта не поддерживается.
Примечение: использование валютных платежей требует дополнительного согласование я Альфа Банком
System error = (далее описание ошибки) Неверна регистрация заказа: забыть како-либо важный параметр заказа, например, номер магазина - неверен.

4.1.1.6. Ответ на запрос платежа с данными карты собранными на стороне Магазина.

Не надо читать этот пункт, если данные карты вводятся на стороне РБС

Ответом на HTTPS GET/POST запрос с параметрами карты Клиента служит ответ c типом HTTP-контента "plain/text" или "text/html" содержащий строку с тремя параметрами, разделенными символом '&' MDORDER, ANSWER и STATE:

Параметр Тип данных Описание
MDORDER Строка до 150 символов Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
ANSWER Строка строка, содержащая URI-закодированный(URI-encoded) ответ в формате XML содержащий информацию о результате прохождения платежа.
STATE Строка состояние платежа.
Примечание: Значение STATE описаны ниже в данном разделе

Формат XML значения передаваемого через параметра ANSWER следующий:

<?xml version="1.0" encoding="UTF-8">
    <PSApiResult primaryRC="0" secondaryRC="0"/>

Где XML-тэг PSApiResult содержит в себе код возврата в виде комбинации PrimaryRC и SecondaryRC.

Атрибут Тип данных
primaryRC Целое число
secondaryRC Целое число

Возможные варианты значений комбинации кодов:

PRIMARYCODE SECONDARYCODE Описание
-9 -1 Сбой в процессинге
-9 1014 не используется
-2 0 Номер карты(BIN, маска) внесен в черный список антифродового фильтра
-2 1 IP-адрес внесен в черный список антифродового фильтра
-2 2 Превышен лимит по карте(BINу, маске) согласно настройкам антифродового фильтра
-2 -3 SSL (Не VbV/SecureCode) транзакции запрещены Магазину
-2 -4 MOTO (без cvc/cvv2 кода) транзакции запрещены Магазину
-2 5 VbV/SecureCode аутентификация не прошла. Т.к. не удалось проверить подпись эмитента (то есть PARes был читаемый, но подписан неверно).
-2 6 Эмитент отклонил  VbV/SecureCode аутентификацию.
-2 7 Срок действия транзакции был превышен к моменту ввода данных карты. (таймаут 2 часа)
-2 8 Контрольный SMS введен не верно
-2 9 Телефон привязанный к карте либо не найден, либо телефоном (10 цифр) не является
-2 10 Превышен лимит магазина по максимальной сумме транзакции
-2 11 Превышен общий дневной лимит магазина
-2 12 Недопустимое имя кардходера
-2 13 Страна данного BINа находится в черном списке или не находится в списке допустимых стран
-2 14 Аэропорт находится в черном списке
-2 15 Страна данного IP находится в черном списке или не находится в списке допустимых стран
-2 101 E-mail находится в черном списке (Аэрофлот)
-2 102 Имя пассажира находится в черном списке (Аэрофлот)
-1 -1 Выставляется в момент регистрации платежа (т.е. когда еще по транзакции не было никаких действий).
0 0 успех
7 1015 Введены неправильные параметры карты
8 204 Такой заказ уже регистрировали (проверка по ORDERNUMBER)
11 205 не используется
15 1017 VbV/SecureCode  - ошибка связи
15 1018 Таймаут в процессинге. вроде бы не удалось отправить
15 1019 Таймаут в процессинге. вроде бы удалось отправить
15 21010 не используется
34 1014 неуспешная транзакция. см. подробности в ACTION_CODE
34 1041 refund failed
200 1 Фродовая транзакция. Согласно данным полученным от процессига или/и платежной сети.

Значения параметра STATE:

Значение Описание
payment_approved Платеж предавторизован. Состояние означает, что процесс предавторизации платежа в Системе РБС прошел успешно. Для данного состояния могут быть выполнены команды поставторизации или отмены предавторизации платежа.
payment_deposited Платеж поставторизован. Состояние означает, что процесс поставторизации платежа в Системе РБС прошел успешно. Для данного состояния может быть выполнена команда отмены поставторизации платежа.
payment_declined Состояние означает, что процесс предавторизации платежа в Системе РБС был отклонен Банком.

Можно быть уверенным, что платеж прошел успешно, если primaryRC="0" secondaryRC="0" и STATE=payment_deposited

Пример ответа:

MDORDER=1792-36-52-69-97-710-10864-102-102-8085-79116&ANSWER=%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22%3F%3E%0A%3CPSApiResult+primaryRC%3D%2234%22+secondaryRC%3D%22171%22%2F%3E&STATE=payment_deposited

4.1.2. Подробное описание оплаты заказа (одностадийный или двухстадийный платеж).

4.1.2.1. Порядок проведения оплаты.

Покупатель перенаправляется с сайта Магазина на адрес указанный в полученной HTML-форме на страницу ввода параметров банковской карты на сервере РБС.

Адрес страницы ввода параметров банковской карты на тестовом сервере:

https://playground.paymentgate.ru/bpcservlet/BPC/AcceptPayment.jsp?MDORDER=значение_MDORDER

Адрес страницы ввода параметров банковской карты на "боевом" сервере:

https://engine.paymentgate.ru/bpcservlet/BPC/AcceptPayment._имя_магазина.jsp?MDORDER=значение_MDORDER

где MDORDER представляет собой уникальный идентификатор заказа полученный после шага 1 (см. рисунок 1 или пп. 4.1.1.2-4.1.1.4)
Обычно страница AcceptPayment._имя_магазина.jsp сделана в стиле дизайна интернет магазина.
Примечание: Внешний вид страницы AcceptPayment.jsp можно настроить в соответствии с дизайном сайта Магазина.

Сервер Системы РБС сопоставляет клиента с заказом по идентификатору MDORDER полученному Магазином от Системы РБС в результате регистрации заказа и переданному обратно при переходе покупателя по ссылке или (нажатии кнопки формы) с сайта Магазина на страницу оплаты расположенную на сайте Системы РБС.

На странице AcceptPayment.jsp клиенту будет предложено ввести параметры своей пластиковой карты, такие как номер карты, срок действия, CVC2/CVV2 код. Также при наличии в первичном запросе регистрации заказа параметра LOGIN клиенту будет предложено ввести известное только ему и сайту Магазина значение.

После нажатия кнопки "Оплатить" происходит передача данных по защищенному HTTPS/SSL2-3 каналу на сервер Системы РБС, и сервер, в качестве HTTP-ответа, производит переадресацию браузер Клиента по адресу BACKURL, указанному при регистрации заказа на первом этапе.

4.1.2.2. Возврат Клиента обратно на Сайт Магазина с одновременной передачей информации с результатами оплаты от Системы РБС обратно Магазину.

Ответ сервера РБС содержит параметр ANSWER с результатами оплаты заказа в формате XML (URI-закодированный).

Пример ответа:

<?xml version="1.0" encoding="UTF-8">
    <PSApiResult primaryRC="0" secondaryRC="0"/>

XML-тэг PSApiResult содержит в себе кода возврата в виде комбинации PrimaryRC и SecondaryRC.

Параметр Тип данных
primaryRC Целое число
secondaryRC Целое число

Возможные варианты значений комбинации кодов:

PRIMARYCODE SECONDARYCODE Описание
-9 -1 Сбой в процессинге
-9 1014 не используется
-2 0 Номер карты(BIN, маска) внесен в черный список антифродового фильтра
-2 1 IP-адрес внесен в черный список антифродового фильтра
-2 2 Превышен лимит по карте(BINу, маске) согласно настройкам антифродового фильтра
-2 -3 SSL (Не VbV/SecureCode) транзакции запрещены Магазину
-2 -4 MOTO (без cvc/cvv2 кода) транзакции запрещены Магазину
-2 5 VbV/SecureCode аутентификация не прошла. Т.к. не удалось проверить подпись эмитента (то есть PARes был читаемый, но подписан неверно).
-2 6 Эмитент отклонил  VbV/SecureCode аутентификацию.
-2 7 Срок действия транзакции был превышен к моменту ввода данных карты. (таймаут 2 часа)
-2 8 Контрольный SMS введен не верно
-2 9 Телефон привязанный к карте либо не найден, либо телефоном (10 цифр) не является
-2 10 Превышен лимит магазина по максимальной сумме транзакции
-2 11 Превышен общий дневной лимит магазина
-2 12 Недопустимое имя кардходера
-2 13 Страна данного BINа находится в черном списке или не находится в списке допустимых стран
-2 14 Аэропорт находится в черном списке
-2 15 Страна данного IP находится в черном списке или не находится в списке допустимых стран
-2 101 E-mail находится в черном списке (Аэрофлот)
-2 102 Имя пассажира находится в черном списке (Аэрофлот)
-1 -1 Выставляется в момент регистрации платежа (т.е. когда еще по транзакции не было никаких действий).
0 0 успех
7 1015 Введены неправильные параметры карты
8 204 Такой заказ уже регистрировали (проверка по ORDERNUMBER)
11 205 не используется
15 1017 VbV/SecureCode  - ошибка связи
15 1018 Таймаут в процессинге. вроде бы не удалось отправить
15 1019 Таймаут в процессинге. вроде бы удалось отправить
15 21010 не используется
34 1014 неуспешная транзакция. см. подробности в ACTION_CODE
34 1041 refund failed
200 1 Фродовая транзакция. Согласно данным полученным от процессига или/и платежной сети.

Примечание: Успешное выполнение команд не гарантирует успешного прохождения платежа, как проверить состояние платежа описано в пункте "Запрос состояния платежа;

4.2. Завершение двухстадийного платежа. (Проведение отложенной авторизации).

4.2.1. Инициация Завершения двухстадийного платежа.

В том случае, если при регистрации заказа (описание параметров в пп.4.1.1.1. "Запрос на регистрацию заказа") запрос содержал параметр DEPOSITFLAG=0, т.е. регистрировался двухстадийный платеж, то при оплате сумма блокируется на счету клиента и не переводится на счет Магазина до тех пор пока Магазин не осуществит операцию "Завершение".

Примечание: Банк-эмитент у себя устанавливает timeout, по наступлению которого заблокированные средства на счету клиента подлежат автоматической разблокировке. Обычно это 30 дней.

Есть два пути перевода на счет Магазина заблокированных денег: в личном кабинете магазина на сайте www.paymentgate.ru (тестовый сервер playground.paymentgate.ru) или HTTPS запросом: программное обеспечение Магазина должно сформировать HTTPS GET или POST запрос на адрес:

https://playground.paymentgate.ru/bpcservlet/DepositPayment

Запрос должен содержать следующие параметры:

Название параметра Тип данных, формат Обязательный параметр Описание
MDORDER Строка, длиной до 150 символов Да Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
MERCHANTPASSWD Строка длиной до 20 символов Да пароль Магазина. полученный при регистрации в Системе РБС
DEPOSIT_AMOUNT Целое число Нет Необязательный параметр. Сумма в копейках, на которую будет производно завершение платежа. Блокировка средств на карте на сумму разницы между заблокированной суммой и суммой завершения будет автоматически отменена. Если данный параметр не указан то с карты покупателя будет списана целиком вся сумма, на которую первоначально была сделана блокировка.

Примечание: При формировании запроса ВСЕ ИМЕНА ПАРАМЕТРОВ ЧУВСТВИТЕЛЬНЫ К РЕГИСТРУ И ДОЛЖНЫ БЫТЬ НАБРАНЫ ЗАГЛАВНЫМИ БУКВАМИ.

Пример HTTPS GET запроса на операцию "Завершение":

https://playground.paymentgate.ru/bpcservlet/DepositPayment?MDORDER=5378-128-1980-9010164-25-51790-9822793321050&MERCHANTPASSWD=3edcvbn

4.2.2. Ответ сайта Системы РБС на завершение двухстадийного платежа.

На HTTPS GET/POST запрос об операции "Завершение" сервер РБС возвращает XML-документ с результатом завершения заказа.

Пример ответа:

<?xml version="1.0" encoding="UTF-8">
    <PSApiResult primaryRC="0" secondaryRC="0"/>

XML-тэг PSApiResult содержит в себе кода возврата в виде комбинации PrimaryRC и SecondaryRC.

Параметр Тип данных
primaryRC Целое число
secondaryRC Целое число

Возможные варианты значений комбинации кодов:

primaryRC secondaryRC Описание
0 0 платеж успешно прошел
34 1014 платеж не прошел по финансовым причинам
15 1018 нет связи с Банком-эквайером
15 1019 Удалось отправить транзакцию в Банк-эквайер, но ответа не получили
2 204 Заказ с данным MDORDER не найден
1 5 Неверное состояние платежа. Для проведения оперции необходимо чтобы платеж был в статусе payment_approved

Примечание: Успешное выполнение команд не гарантирует успешного прохождения платежа, как проверить состояние платежа описано в пункте "Запрос состояния платежа;"

4.3. Отмена отложенной авторизации двухстадийного платежа. Снятие блокировки средств на счету клиента.

4.3.1. Инициация Снятие блокировки средств на счету клиента.

В том случае, если при регистрации заказа (описание параметров в пп.4.1.1.1. "Запрос на регистрацию заказа") запрос содержал параметр DEPOSITFLAG=0, то сумма блокировалась на счету клиента, но не переводилась на счет Магазина.

Перевод денег откладывался до момента операции " Завершение двухстадийного платежа".

Для снятия блокировки средств на счету Покупателя программное обеспечение Магазина должно сформировать HTTPS GET или POST запрос по адресу:

https://playground.paymentgate.ru/bpcservlet/DepositReversal

Примечание: Данная операция возможна только для заказов, по которым была проведена операция отложенной авторизации.

Запрос должен содержать параметры:

Название параметра Тип данных, формат Обязательный параметр Описание
MDORDER Строка, длиной до 150 символов Да Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
MERCHANTPASSWD Строка длиной до 20 символов Да пароль Магазина, полученный при регистрации в Системе РБС

Пример HTTPS GET запроса на операцию "Отмена отложенной авторизации":

https://playground.paymentgate.ru/bpcservlet/DepositReversal?MDORDER=5378-128-1980-9010164-25-51790-9822793321050&MERCHANTPASSWD=3edcvbn

Также отмена возможна в личном кабинете магазина.

4.3.2. Ответ сайта Системы РБС на запрос о Снятии блокировки средств на счету клиента.

После проведения операции отмены сервер Системы РБС возвращает XML документ с результатами отмены отложенной авторизации.

Пример ответа:

<?xml version="1.0" encoding="UTF-8">
    <PSApiResult primaryRC="0" secondaryRC="0"/>

XML-тэг PSApiResult содержит в себе кода возврата в виде комбинации PrimaryRC и SecondaryRC.

Параметр Тип данных
primaryRC Целое число
secondaryRC Целое число

Возможные варианты значений комбинации кодов:

primaryRC secondaryRC Описание
0 0 Платеж прошел успешно
34 1014 Платеж не прошел по финансовым причинам
15 1018 Нет связи с Банком-эквайером
15 1019 Удалось отправить транзакцию в Банк-эквайер, но ответа не получили
2 204 Заказ с данным MDORDER не найден
1 5 Отмена невозможна т.к. данная транзакция уже была завершена.
1 6 Отмена невозможна т.к. данная однофазная транзакция не находится в статусе payment_deposited
1 8 Неверное состояние платежа. Для проведения операции необходимо чтобы данная двухфазная транзакция находилась в статусе payment_approved

4.3.3. Ответ сайта Системы РБС на некорректный запрос о Снятии блокировки средств на счету клиента или завершении платежа.

При ошибочных параметрах запроса система вернет текстовое сообщение описания ошибки, например,

merchant password is wrong

4.4. Отмена одностадийного платежа.

Примечание: По стандартному договору между интернет магазином и Альфа Банком отмена через web интерфейс одностадийного платежа невозможна. Для отмены таких платежей нужно отправить электронное письмо установленной формы на соответствующий адрес Альфа Банка. Форма письма и адрес указаны в договоре. При заключении дополнительного соглашения возможна отмена вышеописанных платежей через web интерфейс как в личном кабинете, так и HTTPS GET/POST командой.

4.4.1. Инициация отмены одностадийного платежа.

Для отмены одностадийного платежа программное обеспечение Магазина должно сформировать HTTPS GET или POST запрос по адресу:

https://playground.paymentgate.ru/bpcservlet/DepositReversal

Запрос должен содержать параметры

Название параметра Тип данных, формат Обязательный параметр Описание
MDORDER Строка, длиной до 150 символов да Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
MERCHANTPASSWD Строка длиной до 20 символов да пароль Магазина, полученный при регистрации в Системе РБС
user Строка длиной до 20 символов да логин дополнительной аутентификации пользователя проводящего возврат
pwd Строка длиной до 20 символов да пароль дополнительной аутентификации пользователя проводящего возврат

Пример HTTPS GET запроса на операцию "Отмена платежа":

https://playground.paymentgate.ru/bpcservlet/DepositReversal?MDORDER=5378-128-1980-9010164-25-51790-9822793321050&MERCHANTPASSWD=3edcvbn&user=finmanager&pwd=qweasd

Также отмена возможна в личном кабинете магазина.

4.4.2. Ответ сайта Системы РБС на запрос об отмене одностадийного платежа.

После проведения операции отмены сервер РБС возвращает XML документ с результатами отмены платежа.

Пример ответа:

<?xml version="1.0" encoding="UTF-8">
    <PSApiResult primaryRC="0" secondaryRC="0"/>

XML-тэг PSApiResult содержит в себе кода возврата в виде комбинации PrimaryRC и SecondaryRC.

Параметр Тип данных
primaryRC Целое число
secondaryRC Целое число

Возможные варианты значений комбинации кодов:

primaryRC secondaryRC Описание
0 0 платеж успешно прошел
34 1014 платеж не прошел по финансовым причинам
15 1018 нет связи с Банком-эквайером
15 1019 Удалось отправить транзакцию в Банк-эквайер, но ответа не получили
2 204 Заказ с данным MDORDER не найден

4.5. Запрос состояния платежа.

Есть два способа проверки состояния платежа:

  1. 1. Зайти на сайт РБС www.paymentgate.ru в раздел "Для Магазинов", войти в систему с именем и паролем Магазина, перейти в раздел "Статистика" и посмотреть состояние интересующего платежа.
  2. 2. Программное обеспечение Магазина формирует специальный HTTPS GET или POST запрос по адресу
https://playground.paymentgate.ru/bpcservlet/QueryOrders

Запрос должен содержать параметры

Название параметра Тип данных, формат Обязательный параметр Описание
MDORDER Строка, длиной до 150 символов Да Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
MERCHANTPASSWD Строка длиной до 20 символов Да пароль Магазина, полученный при регистрации в Системе РБС

Пример HTTPS GET запроса на операцию "Проверка состояния заказа":

https://playground.paymentgate.ru/bpcservlet/QueryOrders?MDORDER=5378-128-1980-9010164-25-51790-9822793321050&MERCHANTPASSWD=3edcvbn

В ответ сервер Системы РБС возвращает XML документ.

Пример ответа на запрос проверки состояния заказа:

<?xml version="1.0" encoding="UTF-8" ?>
    <PSApiResult objectCount="1" primaryRC="0" secondaryRC="0">
        <PSOrder amount="123456789" currency="810" merchantNumber="123456789" orderNumber="123456789" state="order_ordered">
            <PaymentCollection>
                <PSPayment approvalCode="207433" approveAmount="123456789" authCode="0"
                authTime="Thu Mar 14 12:10:24 GMT+03:00 2002" capCode="0"
                depositAmount="123456789" paymentNumber="123456789" 
                paymentType="BPC" payment_state="payment_deposited" 
                pan="412345..1234"/>
            </PaymentCollection>
        </PSOrder>
    </PSApiResult>
Таги и атрибуты тагов Тип данных Описание
PSApiResult Таг
objectCount Целое десятичное число. Всегда 1
primaryRC Целое десятичное число. Результат прохождения команды QueryOrders. Список возможных значений приведен ниже в данном разделе.
secondaryRC Целое десятичное число.
 
PSOrder Таг В PSApiResult всегда один PSOrder
amount Целое десятичное число. Сумма платежа в копейках
Currency Целое десятичное число. Валюта. Всегда рубли = 810
merchantNumber Целое десятичное число. Уникальный идентификатор Магазина в Системе РБС
orderNumber Целое десятичное число. Уникальный номер заказа созданный Магазином в момент регистрации заказа (или если платеж принимается на стороне магазина то в момент проведения платежа)
State Строка Всегда order_ordered для совершенных платежей.
 
PaymentCollection Таг В PSOrder всегда один PaymentCollection
 
PSPayment Таг В PaymentCollection всегда один PSPayment
approvalCode Строка длинной 6 символов Код авторизации платежа возвращаемый эмитентом карты.
Если не равен 000000, то платеж успешен.
approveAmount Целое десятичное число. Значение суммы заблокированной на карте клиента.
Значение указано в копейках.
Например, 4378, что соответствует сумме 43 рубля 78 копеек.
authCode Целое десятичное число. Состояние операции.
Примечание: Значения AuthCode описаны в отдельной таблице, в данном разделе
authTime Дата и Время по Москве Дата и время операции
Пример:
Thu Mar 14 12:10:24 GMT+03:00 2002
capCode Целое десятичное число. Зарезервированное значение. Всегда 0
depositAmount Целое десятичное число. Значение суммы переведенной на счет Магазина с карты клиента.
Значение указано в копейках.
Например, 4378, что соответствует сумме 43 рубля 78 копеек.
paymentNumber Целое десятичное число. Всегда 1
paymentType Строка Зарезервированное значение. Тип платежного протокола. Всегда BPC
payment_state Строка Состояние платежа. Список возможных значений приведен ниже в данном разделе.
pan Строка Маскированный номер карты

Возможные варианты значений комбинации кодов primaryRC и secondaryRC:

primaryRC secondaryRC Описание
0 0 Операция запроса состояния заказа прошла успешно.
2 204 Заказ с данным MDORDER не найден

Значения AuthCode. AuthCode является критерием успешности прохождения платежа.

AuthCode Описание
0 платеж прошел успешно
1 Неопределенная ошибка
2 отклонен эмитентом
3 не получен ответ от эмитента
4 ошибка на стороне эмитента
5 неправильно указанна сумма платежа - не хватает денег
6 срок действия карты истек
7 по данной карте запрещены интернет транзакции
8 ошибка в формате данных
10 вы прислали платеж превышающий ваши лимиты
11 прислано завершение на просроченный платеж
12 транзакция неправильно сформирована с точки зрения эмитента
13 транзакция неправильно сформирована с точки зрения эмитента

Также в личном кабинет, в детальном описании платежа можно найти параметр actionCode. Данный параметр более подробно описывает причину отлонения платежа:

005Отказ сети проводить транзакцию.
100Банк эмитент запретил интернет транзакции по карте.
101Истек срок действия карты.
103Торговой точке необходимо связаться с банком-эмитентом.
104Попытка выполнения операции по счету, на использование которого наложены ограничения.
106Превышено допустимое число попыток ввода ПИН (в железном банкомате). Вероятно карта временно заблокирована.
116Сумма транзакции превышает доступный остаток средств на выбранном счете.
120Отказ эмитента проводить транзакцию.
Чаще всего возникает при запретах наложенных на карту.
Например, карта запрещена к использованию в интренете
121Предпринята попытка выполнить транзакцию на сумму, превышающую дневной лимит, заданный банком-эмитентом
123Превышен лимит на число транзакций: клиент выполнил максимально разрешенное число транзакций в течение лимитного цикла и пытается провести еще одну.
125Неверный номер карты.
209Зарегистрирована похищенная карта, требуется ее изъятие.
902Владелец карты пытается выполнить транзакцию, которая для него не разрешена.
903Предпринята попытка выполнить транзакцию на сумму, превышающую лимит, заданный банком-эмитентом
904Ошибочный формат сообщения с точки зрения банка эмитента.
907Нет связи с банком эмитентом. HOST NOT AVAIL.
909Ошибка функционирования системы, имеющая общий характер. Фиксируется платежной сетью или банком-эмитентом.
910Банк-эмитент недоступен.
913Неправильный формат транзакции с точки зрения сети.

Сооответствие между actionCode и authCode:

Значения actionCode
(несколько значений перечисляются через запятую)
Значение authCode
0 0
1,904 1
907,910 2
103,107 4
110,116 5
101 6
902,913 7
903 8
106,117,119 9
121,123 10
203,204,208,209 11
100,104,111,125 12
109 13
Любые другие не указанные выше значения 2

Возможные состояния платежа (параметр payment_state):

Значение Состояние
payment_approved Платеж предавторизован. Состояние означает, что процесс предавторизации платежа в Системе РБС прошел успешно. Для данного состояния могут быть выполнены команды поставторизации или отмены предавторизации платежа.
payment_deposited Платеж поставторизован. Состояние означает, что процесс поставторизации платежа в Системе РБС прошел успешно. Для данного состояния может быть выполнена команда отмены поставторизации платежа.
payment_declined Состояние означает, что процесс предавторизации платежа в Системе РБС был отклонен Банком.
payment_void Состояние означает, что процесс отмены предавторизации платежа в Системе РБС прошел успешно.
payment_pending Состояние означает, что платеж находится в ожидании ответа от процессингового центра Банка-экайера. Для данного состояния не может быть выполнена никакая команда.
refunded Был произведен возврат денег на карту клиента.
refund failed Была неуспешная попытка возврата денег на карту клиента.

4.6. Возврат денег на карту.

Примечание: По стандартному договору между интернет магазином и Альфа Банком возврат денег на карту невозможен. При заключении дополнительного соглашения возможен возврат денег на карту через web-интерфейс как в личном кабинете, так и HTTPS GET/POST командой.

4.6.1. Инициация возврата денег на карту.

Для возврата денег на карту программное обеспечение Магазина должно сформировать HTTPS GET или POST запрос по адресу:

https://playground.paymentgate.ru/bpcservlet/Refund

Запрос должен содержать параметры

Название параметра Тип данных, формат Обязательный параметр Описание
MDORDER Строка, длиной до 150 символов уникальный идентификатор заказа, полученный при регистрации заказа от системы РБС
AMOUNT Целое число Сумма возврата в копейках
MERCHANTPASSWD Строка длиной до 20 символов пароль Магазина, полученный при регистрации в Системе РБС
user Строка логин дополнительной аутентификации пользователя проводящего возврат
pwd Строка пароль дополнительной аутентификации пользователя проводящего возврат

Пример HTTPS GET запроса на операцию "Возврат":

https://playground.paymentgate.ru/bpcservlet/Refund?MDORDER=-79-31242571-914743124-6-19-12658-412287_p1&AMOUNT=50&MERCHANTPASSWD=lazY2k&user=user1&pwd=qweasd

4.6.2. Ответ сайта Системы РБС на запрос о возврате денег на карту.

После проведения операции возврата сервер РБС возвращает XML документ с результатами операции возврата.

Пример ответа:

<?xml version="1.0" encoding="UTF-8">
    <PSApiResult primaryRC="0" secondaryRC="0"/>

XML-тэг PSApiResult содержит в себе кода возврата в виде комбинации PrimaryRC и SecondaryRC.

Параметр Тип данных
primaryRC Целое число
secondaryRC Целое число

Возможные варианты значений комбинации кодов:

primaryRC secondaryRC Описание
0 0 платеж успешно прошел
34 1014 платеж не прошел по финансовым причинам
15 1018 нет связи с Банком-эквайером
15 1019 Удалось отправить транзакцию в Банк-эквайер, но ответа не получили
2 204 Заказ с данным MDORDER не найден

4.7. Пакетное завершение двухстадийных платежей.

Существует возможность пакетного завершения множества двухстадийных платежей. На странице

    https://playground.paymentgate.ru/bpcservlet/BPC/batch/batch_deposit_file.jsp

расположена форма загрузки файла содержащего список уникальных идентификаторов заказа (MDORDER)

Номер каждого платежа должен быть на новой строчке, через пробел после номера можно добавить любую информацию в качестве комментария, она отобразится в файле отчета о завершении.

Пример файла со списком платежей на завершение:

72778945-42-1-65-7108-28842-7372110121_p1
-106-8810753114-31-60-109-52-84-55-79-83-40-73-98_p1 anydesciption
-867123-98123983-87598324-234875-0

После нажатия кнопки "Загрузить" начнется фоновый процесс завершения и будет сформирован файл отчета о результатах завершения. Файл отчета формируется по адресу:

https://playground.paymentgate.ru/bpcservlet/BPC/batch/upload/pN_ХХХХХХ.out.html

где ХХХХХХ - первые шесть символов MERCHANTNUMBER (номера магазина), а N - целое число от 1 до 4, т.е. pN может быть p1, p2, p3, p4.

Можно сформировать запрос на пакетное завершение автоматически HTTPS POST запросом следующей формы:

<input type="text" name="MERCHANTNUMBER" value="XXXXXX">
<input type="password" name="MERCHANTPASSWORD" value="password">
<input type="File" name="FILE">
<input type="checkbox" name="append" value="1" checked>

Файл отчета о пакетном завершении один для каждого интернет магазина. Параметр append в HTML форме управляет уничтожением старого файла отчета. Если append стоит в положении checked, то к старому файлу отчетов дописываются новые результаты.

Пример отчета:

72778945-42-1-65-7108-28842-7372110121_p1 orderNumber=121207014 depositedAmount=100 paymentState=payment_deposited pc=0 sc=0
-106-8810753114-31-60-109-52-84-55-79-83-40-73-98_p1 orderNumber=121207014 depositedAmount=100 paymentState=payment_deposited pc=0 sc=0 batch deposit is finished, input file is deleted=true

4.8. Выгрузка отчета о платежах.

Кроме просмотра статистики платежей в личном кабинете магазина на сайте Системы РБС существует возможность получить статистику в машиночитаемом формате с помощью следующего запроса:

https://playground.paymentgate.ru/bpcservlet/BPC/batch/batch_query_orders3.jsp?MERCHANTNUMBER=118600118603000118604&MERCHANTPASSWORD=lazY2k&yyyy1=2006&mm1=10&dd1=04&hh1=7&min1=0&yyyy2=2006&mm2=10&dd2=04&hh2=8&min2=0

Запрос должен содержать параметры

Название параметра Тип данных, формат Обязательный параметр Описание
yyyy1 Четырехзначное целое число Да Начальная дата отчета, больше или равно.
mm1 Целое число от 1 до 12 Да
dd1 Двухзначное целое число от 01 до 31 Да
hh1 Двухзначное целое число от 00 до 23 Да
min1 Двухзначное целое число от 00 до 59 Да
yyyy2 Четырехзначное целое число Да Конечная дата отчета, меньше или равно.
mm2 Двухзначное целое число от 1 до 12 Да
dd2 Двухзначное целое число от 01 до 31 Да
hh2 Двухзначное целое число от 00 до 23 Да
min2 Двухзначное целое число от 00 до 59 Да
MERCHANTNUMBER Строка Да Уникальный идентификатор Магазина, полученный при регистрации в Системе РБС
MERCHANTPASSWORD Строка Да Пароль Магазина, полученный при регистрации в Системе РБС

Отчет представляет собой текстовой файл, каждый платеж на отдельной строчке, значения в строчке отделены символом табуляции.
Примечание: За Один раз можно выгрузить не более 200 строк.

Формат строки отчета:

Название колонки Тип данных, формат, регистр Описание
MDORDER Строка, длиной до 150 символов Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
order number Внутренний идентификационный номер заказа в информационной системе сайта Магазина.
payment amount Целое десятичное число. Значение запрошенной суммы платежа.
Значение указано в копейках.
Например, 4378, что соответствует сумме 43 рубля 78 копеек.
approved amount Целое десятичное число. Значение суммы заблокированной на карте клиента.
Значение указано в копейках.
Например, 4378, что соответствует сумме 43 рубля 78 копеек.
deposited amount Целое десятичное число. Значение суммы переведенной на счет Магазина с карты клиента.
Значение указано в копейках.
Например, 4378, что соответствует сумме 43 рубля 78 копеек.
card number (PAN) Маскированный номер карты клиента.
cardholder name Имя владельца карты.
primaryRC и secondaryRC Пример 0-0 или 34-1014 primary code and secondary code
payment date Дата-Время http://www.w3.org/TR/xmlschema-2/#isoformats

4.9. Выгрузка отчета о платежах за целый день в TSV или Excel формате.

Делается запросом:

https://playground.paymentgate.ru/bpcservlet/BPC/batch/day.jsp?MERCHANTNUMBER=121089121090000121091&MERCHANTPASSWD=4rfvbnm&DATE=YYYYMMDD&MODE=XML

Если параметр MODE отсутствует, то файл будет TSV c полями

 
<%=orderNumber%><%=pan%><%=sDate%><%=amount%><%=approvedAmount%><%=depositedAmount%><%=text%><%=actionCode%>(<%=sActionCode
описание человеческое%>)<%=pc%><%=sc%><%=paymentState%><%=информация_о_банке эмитенте%>

Если MODE=XML, то генерируется XML, совместимый с Microsoft Excel.

4.10. Использование механизма аутентификации 3D-Secure/SecureCode при приеме платежей на стороне магазина.

Не надо читать этот пункт, если данные карты вводятся на стороне РБС

В случае, когда для пластиковой карты Банком-эмитентом включен механизм аутентификации по протоколам 3D-Secure/SecureCode, сервер Системы РБС в ответ на запрос Магазина возвращает Магазину строку, содержащую параметры MDORDER, ACSUrl и PaReq.

Данная строка представляет собой набор из трех пар (ключ=значение) объединенных знаком &

Название параметра Тип данных, формат Описание
MDORDER Строка до 150 символов Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
ACSUrl URL Ссылка на страницу сайта Банка-Эмитента, созданная банком для авторизации владельца карты. Кодируется в соответствии как значение URL (URI-encoded)
PaReq Строка Упакованное с помощью алгоритма BASE64 значение запроса аутентификации покупки

Пример строки:

MDORDER=-80-38-40-8267-123-6984-28-116-6837587031-20_p1&ACSUrl=https://playground.paymentgate.ru/acs/PAReq&PaReq=BASE64_encoded_data

Для осуществления аутентификации на стороне банка-эмитента владелец карты, использующий 3D-Secure, должен быть перенаправлен на сервер аутентификации банка-эмитента. Для этого сайт Магазина должен создать HTML-форму с командой переадресации и показать в браузере владельца карты.

Пример формы:

<html>
<body OnLoad=OnLoadEvent();>
    <form name="downloadForm" action="ACSUrl_value" method="POST"> 
        <input type="hidden" name="PaReq" value="PaReq_value">
        <input type="hidden" name="TermUrl" value="BackURL_value">
        <input type="hidden" name="MD" value="MDORDER_value">
    </form>
    <script language="Javascript">
        document.downloadForm.submit();
    </script>
</body>
</html>

Значения полей формы:

Название параметра Тип данных, формат Описание
PaReq Строка PaReq, полученный от системы РБС, т.е. упакованное с помощью алгоритма BASE64 значение запроса аутентификации покупки.
TermUrl URL BackURL, ссылка для возврата на страницу сайта Магазина, созданная магазином. Кодируется как значение URL (URI-encoded)
MD Строка до 150 символов Уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.

После окончания процесса аутентификации на стороне банка-эмитента, браузер владельца карты переадресуется обратно на сайт Магазина по ссылке указанной в параметре TermURL в выше описанной HTML-форме.

Переадресация обратно содержит в себе следующие параметры:

Название параметра Тип данных, формат Описание
MD Строка до 150 символов значение MDORDER, т.е. уникальный идентификатор заказа, полученный при регистрации заказа от Системы РБС.
PaRes   результат аутентификации покупателя банком-эмитентом, BASE64 закодированная строка

Далее сайт Магазина должен переслать полученные от банка-эмитента параметры системе РБС, отправив для этого HTTPS запрос на сервер РБС в следующем формате:

https://playground.paymentgate.ru/bpcservlet/BPC3DS?MD=mdorde_value&PaRes=PaRes_value

Примечание: регистр символов в имени параметра PaRes имеет значение.

Ответ на вышеописанный запрос представляется в такой же форме как и платеж без участия 3D-Secure/SecureCode (см. конец пункта 4.1.1.6)


Содерждание:

1.Основные термины и определения.
2.Возможности Системы РБС.
2.1.Поддерживаемые платежи и механизмы аутентификации.
2.2.Функциональные возможности системы.
2.3.Страница оплаты.
3.Описание процессов приема платежей.
3.1.Примем платежа на стороне Системы РБС.
3.2.Взаимодействие при размещении страницы оплаты на стороне Магазина.
3.3.Прием платежа для карты 3D-Secure/SecureCode на стороне магазина.
4.Техническое описание функциональных возможностей Системы РБС.
4.1.Прием одностадийного или двухстадийного платежа.
4.1.1.Регистрация заказа (одностадийный или двухстадийный платеж).
4.1.1.1.Запрос на регистрацию заказа (одностадийный или двухстадийный платеж).
4.1.1.2.Ответ в формате HTML сервера Системы РБС на запрос о регистрации заказа.
4.1.1.3.Ответ в формате XML сервера Системы РБС на запрос о регистрации заказа.
4.1.1.4.Ответ текстовом формате сервера Системы РБС на запрос о регистрации заказа.
4.1.1.5.Ответ в случае ошибки регистрации заказа.
4.1.1.6.Ответ на запрос платежа с данными карты собранными на стороне Магазина.
4.1.2.Подробное описание оплаты заказа (одностадийный или двухстадийный платеж).
4.1.2.1.Порядок проведения оплаты.
4.1.2.2.Возврат Клиента обратно на Сайт Магазина с одновременной передачей информации с результатами оплаты от Системы РБС обратно Магазину.
4.2.Завершение двухстадийного платежа. (Проведение отложенной авторизации).
4.2.1.Инициация Завершения двухстадийного платежа.
4.2.2.Ответ сайта Системы РБС на завершение двухстадийного платежа.
4.3.Отмена отложенной авторизации двухстадийного платежа. Снятие блокировки средств на счету клиента.
4.3.1.Инициация Снятие блокировки средств на счету клиента.
4.3.2.Ответ сайта Системы РБС на запрос о Снятии блокировки средств на счету клиента.
4.3.3.Ответ сайта Системы РБС на некорректный запрос о Снятии блокировки средств на счету клиента или завершении платежа.
4.4.Отмена одностадийного платежа.
4.4.1.Инициация отмены одностадийного платежа.
4.4.2.Ответ сайта Системы РБС на запрос об отмене одностадийного платежа.
4.5.Запрос состояния платежа.
4.6.Возврат денег на карту.
4.6.1.Инициация возврата денег на карту.
4.6.2.Ответ сайта Системы РБС на запрос о возврате денег на карту.
4.7.Пакетное завершение двухстадийных платежей.
4.8.Выгрузка отчета о платежах.
4.9.Выгрузка отчета о платежах за целый день в TSV или Excel формате.
4.10.Использование механизма аутентификации 3D-Secure/SecureCode при приеме платежей на стороне магазина.