Как это работает
Обычные платежи работают из HPAY, в hydra-payments (HUPO) их не добавляли. Автоплатёж работает в hydra-payments (HUPO): ЛК редиректит пользователя для инициализационной оплаты в ПС, после успеха пользователь видит в ЛК какое-то время "Автоплатёж настраивается", HPD периодически забирает платежи из ПС и, встретив инициализационный платёж для подписки, активирует её.
Фискализация для автоплатежей включается в ЛК.
Пример настройки стыковки с Assist, включая автоплатежи:
HPD
С HPD-499 (версия hpd - 6.2.0.16) интеграция использует вебхуки для подтверждения платежей. Адрес для отправки вебхуков: /assist/<instance_name>/confirm_payment.
plugins:
assist:
main:
merchant_id:
login:
password:
recurrent_enabled: true
request_period: 600 # seconds, minimum 600
bank_code: Assist
bank_account:
currency: RUB
base_url: https://payments.demo.paysecure.ru
cancel_path: /cancel/wscancel.cfm
recurrent_path: /recurrent/rp.cfm
test_mode: false
root_certificates: []
secret_key: '' # secret for webhooks signature validation. Supports only MD5.
# type of response to webhook accepted by assist
# possible values: 'xml', 'http_ok'
wh_response_type: 'xml'
request_timeout: 300 # seconds, timeout for HTTP requests
listeners:
http:
plain:
plugins: [assist/main]
tracking:
assist:
plugins: [assist/main]
workers:
- listeners: [http/plain, tracking/assist]
Параметр wh_response_type должен соответсвовать параметру "Вид ответа мерчанта" в платежной системе. Значению 'HTTP 200' в системе соответствует значение 'http_ok' в конфиге hpd, а значению 'Стандартный пакет' - 'xml'. Значение по-умолчанию в платежной системе для тестового окружения - 'HTTP 200', для продуктового - 'Стандартный пакет'.
HUPO
payments:
atu_gateway: assist
gateways:
assist:
default:
hpd_url: http://127.0.0.1:9080
hpd_plugin_name: assist
hpd_plugin_instance: main
hpd_secret: secret
conditions_url: /conditions.txt
amount: 1
currency: RUB
merchant_id:
pay_url: https://payments.demo.paysecure.ru/pay/order.cfm
fiscal_mode: true
receipt_name: Услуги связи
recurring_period: 28 # period of recurring payments, days (the parameter is purely informational)