Сбербанк ЕПС, протокол 2. ОСМП

по сравнению с
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (4)

просмотр истории страницы
Обычно сбербанку достаточно протокола OSMP, для них сделан отдельный файл приема плетежей находящийся по адресу [http://<ип адрес>:1444/sbrf.php|http://212.23.70.1:1444/sbrf.php&nbsp]
Для доступа к файлам приема платежей необходимо добавить IP с который осуществляется запрос в список IP через пробел:
Обычно сбербанку достаточно протокола OSMP, для них сделан отдельный файл приема плетежей находящийся по адресу http://<ип адрес>:1444/sbrf.php или если необходимо SSL шифрование&nbsp;https://<ип адрес>:1443/sbrf.php
{info}При интеграции со Сбербанк "Единый платежный сервис", эта платежная система соответствует следующим протоколам предлагаемым Сбербанком и его агентами:
* Протокол №2 "Описание протокола информационного взаимодействия по on-line запросам ЕПС к серверу Клиента №2"
* Приложение_16_(прот_2).docx

Для доступа к файлам приема платежей необходимо добавить IP с который осуществляется запрос в список IP платежных систем через пробел, а также убедиться что промежуточные сетевые экраны не блокируют доступ на эти порты.
Так же по этому протоколу работает платежная система "Расчетные Решения" (сайты www.nbcouec.ru и nko-rr.ru):
* Порядок_взаимодействия_с_Получателем_тип_Б_004_от_26.09.2017.pdf
* Порядок_взаимодействия_с_Получателем_тип_Б_005_от_03.11.2017.pdf{info}

{toc}

h1. Настройка работы Сбербанк (ОСМП)

# Добавьте IP-адреса Сбербанка в список разрешенных и проведите прочие общие настройки платежных систем по статье "[Платежные системы. Общее|CarbonBilling:Платежные системы. Общее]"
# Передайте адрес обработчика платежей Сбербанку зависит от используемого протокола, *http* или *https*:
#* *http*: [http://168.254.14.44:1444/sbrf.php]
#* *https*: [https://169.254.14.43:1443/sbrf.php]
Адреса _168.254.14.44_ и _169.254.14.43_ замените на адрес биллинга, по которому он доступен из сети интернет.
# Если используется SSL:
#- Создайте сертификаты по статье [Настройка SSL сертификатов платежных систем]
#- Отправьте клиентский сертификат контактному лицу со стороны платежной системы.

{info}Описание протокола ОСМП можно скачать по адресу:
{code}
http://168.254.14.44:1444/osmp.pdf
{code}
Адрес _168.254.14.44_ также замените на внешний адрес биллинга{info}

h1. Настройка со стороны Сбербанка

В анкете от Сбербанка необходимо указать следующие настройки:
* *Наличие BASIC-авторизации*: Нет
* *Порт*: 1443
* *Метод передачи данных*: POST
* *Использование MD5*: Нет
* *Тип SSL-соединения*: Двустороннее

h1. Прохождение тестов Сбербанка

* В некоторых случаях при интеграции Сбербанк генерирует документ под конкретного клиента, где клиент указывает все настройки (адрес обработчика, версию TLS, выбор протокола и т.д.). В этом же документе есть вкладка "Данные для подключения", где нужно выбрать тип SSL-соединения - односторонее или двустороннее. При выборе двустороннего типа также предлагается загрузить либо сертификат (.cer), либо хранилище сертификата (.pfx). В случае, если по .cer не получается соединиться и возникает ошибка handshake, рекомендуется выбрать тип "Хранилище сертификатов" - после этого автотесты Сбербанка проходят.
* Если требуется использовать односторонний SSL, нужно указать путь к обработчику с односторонней проверкой: https://<IP биллинга>:2443/sbrf.php
* Также есть нагрузочное тестирование. Если сервер не очень мощный, большое кол-во оплат может не проходить. В этом случае нужно, чтобы все пользователи вышли из биллинга. После выхода проходит 100% оплат.


h1. XSD-схемы ответов на запросы

В анкете отправляемой в Сбербанк, на вопрос "XSD-схемы ответов на запросы" скоприруйте следующий текст:
{code}<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:elementname="response">
<xs:complexType>
<xs:sequence>
<xs:elementname="osmp_txn_id" type="xs:string"></xs:element>
<xs:elementname="result" type="xs:string"></xs:element>
<xs:elementname="prv_txn" type="xs:int"></xs:element>
<xs:elementname="sum" type="xs:double"></xs:element>
<xs:elementname="fio" type="xs:string"></xs:element>
<xs:elementname="balance" type="xs:double"></xs:element>
<xs:elementname="recsum" type="xs:double"></xs:element>
<xs:elementname="minsum" type="xs:double"></xs:element>
<xs:elementname="comment" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>{code}
Но часть полей может отсутствовать, в зависимости от настроек биллинга и проводимой операции (CHECK или PAY), например:
* В ответе на check будут recsum, balance и fio, а в ответе на PAY их не будет.
* В ответе на PAY будут prv_txn и sum, в ответе на CHECK их не будет.

{warning}
Обработчик биллинга не поддерживает Basic-авторизацию.
{warning}

h2. Параметры запросов платежной системы

|| Параметр || Значение \\ || Назначение || Примечание || check || payment ||
| *command* | Возможные значения: check, pay. | Определяет тип запроса | check -- поиск Плательщика (проверка идентификатора);\\
payment -- создание платёжной транзакции | + | + |
| *ACCOUNT* | Строка (определяется сценарием платежа) | Лицевой счет Плательщика | | + | + |
| *sum* | Число | Сумма платежа | Разделитель “.” (точка) | + | + |
| *txn_id* | Число (содержит только цифры, длина максимум 20 знаков) | Идентификатор платежной транзакции | Положительное длинное целое число. Генерируется платёжной системой и используется для идентификации платёжных транзакций. | + | + |
| *txn_date* | Дата и время | Дата и время операции в платежной системе | Дата и время операции в платежной системе (формат ГГГГММДДЧЧММСС, часовой пояс всегда MCK UTC+3) | \- | + |
Пример проверки наличия абонента с номером договора TEST
{code}http://ip-биллинга:1444/sbrf.php?command=check&txn_id=1&account=TEST&sum=10.00{code}