plugins: sberbank: default: messages: success: OK invalid_signature: # invalid signature err_text message charged_payment: # charged payment err_text message main: secret_key: # set secret key here timezone_offset_hours: 0 listeners: http: plain: plugins: [sberbank/main] workers: - listeners: [http/plain] |
Для проверки необходимо сформировать POST-запрос к агенту HPD. Для автоматизации формирования запроса можно использовать скрипт:
#!/bin/sh # ВХОДНЫЕ ПАРАМЕТРЫ HPD_URL="https://hpd-url.domain.ru/sberbank/main" # URL, по которому отвечает HPD SBRF_PWD="SecretKeyHere" # Пароль (см. конфигурационный файл) TO_ACC="123456" # Код лицевого счета для проверки # ОСНОВНАЯ ЧАСТЬ ЗАПРОСА, РАСЧЕТ ПОДПИСИ XML_PARAMS="<act>1</act><account>$TO_ACC</account>" QRY_HASH=$(md5 -q -s "$XML_PARAMS$SBRF_PWD") # ЗАПРОС С ПОДПИСЬЮ, ВЫВОД ДЛЯ НАГЛЯДНОСТИ XML_FULL="<?xml version=\"1.0\" encoding=\"windows-1251\"?><request><params>\ $XML_PARAMS</params><sign>$QRY_HASH</sign></request>" echo "\n[XML QUERY]\n\n$XML_FULL" # ОБРАЩЕНИЕ К СЕРВЕРУ echo "\n[ANSWER]\n" curl -k --request POST --data "params=$XML_FULL" \ --header "Content-Type: application/x-www-form-urlencoded; charset=Windows-1251" \ "$HPD_URL" echo "\n" |
Пример работы скрипта:
% ./test_sberbank_hpd.sh [XML QUERY] <?xml version="1.0" encoding="windows-1251"?><request><params><act>1</act><account>8603266</account></params><sign>01a29d2e91a6fa19148b07a243ea9851</sign></request> [ANSWER] <?xml version="1.0" encoding="utf-8" ?> <response><params><account>8603266</account><client_name>ИВАН АЛЕКСАНДРОВИЧ М.</client_name><err_code>0</err_code><err_text>OK</err_text></params><sign>eefba1b97111f5d1fd6a0cd7c892bdcf</sign></response> % |