Настройка ЛК для взаимодействия с hpd
Для взаимодействия с hpd в разделе "Администрирование" ЛК ПС ROBOKASSA необходимо установить следующие данные:
- Пароль #2 — любая комбинация символов, например QlMvetxIj6UQMFOz.
Result URL — URL на сервере hpd, обслуживающего ПС ROBOKASSA, в виде http[s]://server:port/rkassa.
- Метод отсылки данных по Result URL — GET
Часть URL http[s]://server:port Result URL соответствует серверу hpd, обслуживающему ПС ROBOKASSA. Пароль #2 необходимо также сохранить в конфиге hpd.
Из-за ограничений ПС ROBOKASSA все URL в разделе "Администрирование" ЛК ПС ROBOKASSA должны быть на том же сайте, что и URL сайта продавца (указывается в разделе "Регистрационные данные" ЛК ПС ROBOKASSA). Поэтому чтобы запросы от ПС ROBOKASSA доходили до АСР "Гидра", необходимо сделать проброс любого внешнего порта с сервера сайта продавца на порт сервера, где запущен hpd. Лучше, чтобы это делалось через внутренний VLAN.
Настройка скриптов на сайте оператора
Из-за вышеописанных ограничений на URL в разделе "Администрирование" ЛК ПС ROBOKASSA значения URL для Success URL и Fail URL также должны быть на том же сайте, что и URL сайта продавца.
Для передачи идентификационных данных абонента, например лицевого счета, в запросах к ПС ROBOKASSA следует использовать пользовательский параметр ShpAccount.
Для проверки идентификационных данных в АСР "Гидра" перед отображением платежной формы или инициализацией оплаты следует использовать специальный внутренний HTTP-запрос к hpd из скриптов на сайте оператора по URL следующего вида:
http[s]://server:port/hydra?command=check&txn_id=InvId&account=ShpAccount&sum=OutSum, где InvId — идентификатор транзакции (соответствует значению параметра InvId в запросе к ПС ROBOKASSA), ShpAccount, OutSum — идентификационные данные и сумма платежа соответственно. Часть URL http[s]://server:port соответствует серверу hpd, обслуживающему запросы на проверку идентификационных данных.
По результатам HTTP-запроса hpd возвращает XML-документ следующего вида:
<?xml version="1.0" encoding="utf-8"?> <response> <txn_id>*TxnID*</txn_id> <result>*Result*</result> <comment>*Comment*</comment> </response>
TxnID — идентификатор транзакции, переданной в запросе, Result, Comment — код и комментарий результата соответственно.
Коды результата (Result):
Код |
Описание |
---|---|
0 |
Проверка успешна |
1 |
Внутренняя ошибка |
4 |
Неверный формат идентификационных данных |
5 |
Идентификационные данные неверны |
300 |
Другая ошибка |
Подробно механизм взаимодействия с ПС ROBOKASSA описан в технической документации на сайте ПС.