Полная инструкция по подключению
Порядок технического подключения программного интерфейса Предприятия к системе мобильных платежей МОБИ.Деньги
I. Введение
Для удобства и упрощения процесса технического подключения Предприятия к системе мобильных платежей МОБИ.Деньги (далее также - платежная платформа, Система) разработчиками Системы созданы примеры реализации программного интерфейса Предприятия.
Программный интерфейс Предприятия реализован в нескольких вариантах с помощью различных средств разработки: C#, Delphi и наиболее полно - в PHP.
Перед тем как приступить к техническому подключению, рекомендуется загрузить:
- Необходимый набор библиотек для создания клиентского сертификата, пакет с утилитами OpenSSL и корневые сертификаты (демонстрационный и коммерческий) Загрузить
- Примеры конфигурационных файлов для пакетов Apache и PHP Загрузить
- Примеры реализации скриптов Предприятий Загрузить
- Файл программного интерфейса Предприятия shop.wsdl Загрузить
- Примеры форм оплаты Загрузить
II. Настройка веб-сервера Предприятия
2.1 Установка и настройка веб-сервера с поддержкой SSL
Настроить веб-сервер Apache (рекомендуемая версия не ниже 2-й) с поддержкой протокола SSL. Возможно использование других веб-серверов, например, IIS.
Обязательные параметры для обеспечения взаимодействия по протоколу SSL:
- SSLCertificateKeyFile - путь к ключу
- SSLCertificateFile - путь к сертификату
- SSLCACertificateFile - путь к сертификату платежной платформы
- DocumentRoot - путь к скриптам Предприятия
- SSLVerifyClient require - требовать клиентский сертификат
Необходимым условием для Предприятия является установка на своей стороне файла корневого сертификата Платежной платформы ca.crt, путь к которому указывается как SSLCACertificateFile.
Дополнительно можно указать директиву SSLOptions+ExportCertData, что позволит в скриптах получить сертификат из переменной SSL_CLIENT_CERT и проверять именно равенство сертификатов (полученных от Фронт-энда платежной платформы и от Клиента (далее также - Плательщика)). Данные параметры могут располагаться как в файле ssl.conf, так и в файле конфигурации виртуального хоста vhosts.conf. В приложении имеются примеры работоспособных конфигурационных файлов (vhosts.conf, ssl.conf, httpd.conf).
2.2 Установка и настройка веб-сервера с поддержкой IIS
В разделе "Свойства" для вашего веб-сервера выберите вкладку Безопасность каталога и в ней в группе Сертификаты кнопку Создать;
Выберите "Создать новый запрос на сертификат". Далее укажите, что будете делать отложенный запрос (не в локальную службу сертификатов!) и заполните все необходимые поля, которые мастер сертификатов будет запрашивать. В конце он создаст файл с запросом по тому пути, который вы укажете.
Отправьте полученный файл с запросом на подпись сертификата сотруднику службы поддержки МОБИ.Деньги. Подписанный сертификат будет прислан вам по почте.
Снова нажмите в IIS кнопку Создать... и выберите продолжение работы с отложенным запросом. IIS запросит файл сертификата - отдайте ему созданный вами файл. После этого IIS должен нормально работать с полученным сертификатом.
2.3 Установка и настройка PHP
Настроить PHP (рекомендуемая версия не ниже 5-й) и установить модули OPENSSL и SOAP. Для совместной работы пакетов Apache и PHP необходимо провести дополнительные настройки: файл php.ini пакета PHP должен содержать следующие строки:
- extension=php_soap.dll
- extension=php_openssl.dll
- soap.wsdl_cache_enabled=1
- soap.wsdl_cache_dir="drive:/tmp_wsdl_dir"
- soap.wsdl_cache_ttl=86400
III. Получение сертификата
Авторизация Предприятия в
платежной платформе реализована с помощью SSL-сертификатов.
Для первоначальной настройки и тестирования клиентский
сертификат необходимо подписать на демо-портале. При переводе
Предприятия в коммерческий режим сертификат необходимо подписать на
коммерческом портале и поменять корневой сертификат демо-портала на
корневой сертификат коммерческого портала. Подписывает сертификат
сотрудник службы поддержки.
3.1 Создание ключа и запроса на подпись сертификата
Для создания приватного клиентского ключа и запроса на сертификат выполните команду OpenSSL\gen_key.bat - из полученного примера. В результате будут созданы файлы cert.key и cert.csr - это приватный ключ и запрос на подпись сертификата.
3.2 Подписание сертификата в платежном центре (ПЦ)
Сертификат веб-сервера Предприятия должен быть подписан со стороны Системы. Отправьте файл с запросом cert.csr сотруднику службы поддержки МОБИ.Деньги. В ответ вы получите файл подписанного сертификата cert.crt.
Файлы cert.key и cert.crt являются файлами сертификата и приватного ключа. Они будут использоваться для авторизации в системе МОБИ.Деньги. Файл приватного ключа рекомендуется хранить в безопасном месте, недоступном для публичного использования. Файл cert.crt является обязательным к установке.
Обратите внимание:
Не забудьте установить корневой сертификат Системы (см.
п.2.1).
IV. Настройка и тестирование скриптов Предприятия
Платежный интерфейс Предприятия должен быть установлен на компьютере с постоянным IP-адресом и уникальным DNS-именем (URL). Эти данные записываются в анкету Предприятия. Они необходимы для того, чтобы запросы от системы МОБИ.Деньги отправлялись на реальный адрес Предприятия.
4.1 Размещение скриптов Предприятия на веб-сервере
Куратор определяет тип Предприятия. Имеются примеры четырех типов Предприятий (список типов может быть расширен):
- Тип "биллинг" (прямое пополнение лицевого счета): файл billing_shop.php
- Тип "карточки" (продажа карт предоплаты): файл cards_shop.php
- Тип "интернет-магазин": файл internet_shop.php
- Тип "билеты" (продажа билетов): файл ticket_shop.php
Образцы скриптов для Предприятий этих типов размещены в архиве shop_examples.zip.
Обратите внимание:
В текстовом коде этих файлов содержатся полезные комментарии.
Вам необходимо установить файл-скрипт (например,
code>billing_shop.php для Предприятия типа «биллинг») в
созданную для этих целей папку. Ответы и запросы Предприятия должны
удовлетворять кодировке UTF-8.
Обратите внимание:
При настройке скриптов для вашего Предприятия, необходимо
привести возвращаемые коды ошибок в соответствии с пп. 1.1-1.3 5-ой
части описания протокола.
Также значение faultcode функции SoapFault должно совпадать
непосредственно с кодом возвращаемой ошибки.
4.2 Описание программного интерфейса Предприятия
Описание программного интерфейса Предприятия содержится в файле shop.wsdl. Этот файл предоставляется Предприятию и им не редактируется. Он предназначен для уточнения форматов данных, передаваемых Предприятием в Систему.
4.3 Размещение форм оплаты Предприятия на веб-сервере
На выделенной странице сайта вы можете разместить ссылку на форму оплаты в Личном кабинете или саму форму оплаты. Имеются типичные образцы формы оплаты товаров для четырех видов Предприятий:
- Биллинг: файл billing_form.htm
- Карточки: файл cards_form.htm
- Интернет-магазин: файл internet_form.htm
- Билеты: файл ticket_form.htm
4.4 Тестирование скриптов Предприятия
Тестирование работы магазинных скриптов как на демо- так и на коммерческом портале Системы производится сотрудником службы поддержки. Если в результате тестирования в работе скриптов будут найдены какие-либо ошибки, сотрудник службы поддержки поможет вам разобраться в их возникновении и устранении.
V. Условия и порядок тестирования Предприятий
Для проведения полного цикла тестирования Предприятие обязано произвести на своей стороне все необходимые настройки:
- настроить веб-сервер;
- установить и настроить сертификат;
- настроить скрипты;
- настроить прием запросов от Системы только с указанных Системой IP-адресов;
- предоставить службе поддержки МОБИ.Денег все необходимые для тестирования данные (номер тестового счета, заполненную тех.анкету и т.д.).
Служба поддержки тестирует следующие параметры:
-
Установка корректного соединения между Системой и
Предприятием
Служба поддержки тестирует настройки соединения между Системой и Предприятием, отправляя запросы (в том числе с произвольных IP-адресов) и проверяя получаемые ответы Предприятия. Соединение считается настроенным верно, если Предприятие выдает корректный контракт.
В случае возникновения проблем на данном этапе тестирования Предприятие решает их вместе со службой поддержки МОБИ.Денег. -
Прохождение платежа с корректными данными (через платежную форму
и SMS)
Сотрудник службы поддержки получает у Предприятия все необходимые данные для проведения тестирования и инициирует платеж через платежную форму и SMS. Ответ об успешном платеже должен выдаваться в соответствии с установленным форматом.
В случае возникновения проблем на данном этапе тестирования Предприятие решает их вместе со службой поддержки МОБИ.Денег. -
Ответы Предприятия на запросы с некорректными данными (через
платежную форму и SMS)
Сотрудник службы поддержки инициирует платеж через платежную форму и SMS, указывая в них заведомо некорректные данные (несуществующий номер счета или номер заказа и т.д.). Запросы Системы должны корректно обрабатываться Предприятием, а ответы Предприятия должны соответствовать коду ошибки и быть понятными Клиенту.
В случае возникновения проблем на данном этапе тестирования Предприятие решает их вместе со службой поддержки МОБИ.Денег. -
Ответы Предприятия на повтор уже инициированного платежа
Для этого Система отправляет повторный запрос PaymentAuthorization с указанным параметром IsRepeat=1. Предприятие должно идентифицировать повтор согласно PaymentID. Корректным ответом Предприятия на PaymentAuthorization с IsRepeat=1 считается стандартный ответ без повторной выдачи товара/услуги.
Предприятие может самостоятельно участвовать в тестировании и настройке своих скриптов в демо-режиме.
VI. Перевод Предприятия в коммерческий режим
Перевод Предприятия в коммерческий режим выполняется только после завершения тестирования в демо-режиме, которое, с учётом исправления найденых ошибок, занимает не больше двух недель.
6.1 Изменение сертификата
Для того чтобы перевести работу скриптов в коммерческий режим вам необходимо заменить корневой сертификат Системы демо режима на корневой сертификат Системы коммерческого режима и переподписать клиентский сертификат на коммерческом портале (см. п.3.2)
6.2 Тестирование на коммерческом портале
Тестирование на коммерческом портале проводится так же, как и на демо-портале. Обычно на это уходит 1-2 дня.
6.3 Включение коммерческого режима
Обязательным условием запуска Предприятия в коммерческом режиме является подписание договора Банк-Предприятие. Включение коммерческого режима осуществляет исключительно куратор. По всем возникающим проблемам при работе в коммерческом режиме, следует обращаться в службу поддержки по e-mail support@mobi-money.ru