...
- Пароль #2 — любая комбинация символов, например QlMvetxIj6UQMFOz.
*Result URL* --- URL на сервере hpd, обслуживающего ПС ROBOKASSA, в виде _http\[s\URL — URL на сервере hpd, обслуживающего ПС ROBOKASSA, в виде http[s]://server:port/rkassa_.Wiki Markup - Метод отсылки данных по Result URL — GET
Часть URL _http\[s\]://server:port_ *Result URL* соответствует серверу *hpd*, обслуживающему ПС *ROBOKASSA*. *Пароль #2* необходимо сохранить в конфиге *hpd*. Wiki Markup
Из-за ограничений ПС ROBOKASSA все URL в разделе "Администрирование" ЛК ПС ROBOKASSA должны быть на том же сайте, что и URL сайта продавца (указывается в разделе "Регистрационные данные" ЛК ПС ROBOKASSA). Поэтому чтобы запросы от ПС ROBOKASSA доходили до АСР "Гидра", необходимо сделать проброс любого внешнего порта с сервера сайта продавца на порт сервера, где запущен hpd. Лучше, чтобы это делалось через внутренний VLAN.
В каталоге /opt/hydra/rails/.rvm/usr/ssl/certs должны быть сертификаты (по лицензионным противоречиям), для того, чтобы портал при обращении к боевому серверу робокассы смог проверить валидность сертификата этого сервера и не рвал соединение.
Настройка скриптов на сайте оператора
Из-за вышеописанных ограничений на URL в разделе "Администрирование" ЛК ПС ROBOKASSA значения URL для Success URL и Fail URL также должны быть на том же сайте, что и URL сайта продавца.
Для передачи идентификационных данных абонента, например лицевого счета, в запросах к ПС ROBOKASSA следует использовать пользовательский параметр ShpAccount.Для получения уникального номер номера счета в магазине (параметр InvId в запросах к ПС ROBOKASSA) и проверки идентификационных данных в АСР "Гидра" перед отображением платежной формы или инициализацией оплаты следует использовать специальный внутренний HTTP-запрос к hpd (ПС Hydra) из скриптов на сайте оператора по URL следующего вида:
Wiki Markup |
---|
_http\[s\]://server:port/hydra?command=check&bank_code=*BankCode*&account=*ShpAccount*&sum=*OutSum*_, где *BankCode* --- код банка ПС *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 — уникальный номер счета в магазине (следует использовать в качестве значения параметра InvId в запросах к ПС ROBOKASSA), Result, Comment — код и комментарий результата соответственно.
Коды результата (Result):
Код | Описание |
---|---|
0 | Проверка успешна |
1 | Внутренняя ошибка |
4 | Неверный формат идентификационных данных |
5 | Идентификационные данные неверны |
300 | Другая ошибка |
В случае, если предварительную проверку идентификационных данных в АСР "Гидра" не производить, платеж по неверным данным остановится при оповещение об оплате.
. Подробнее об этом можно почитать в разделе настройки платежной системы Hydra.
Подробно механизм взаимодействия с ПС ROBOKASSA описан в технической документации на сайте ПС.