Механизм работы платёжных систем:
Особенностью работы платежных систем является то, что при совершении платежа создаётся операция "добавление оплаты" - ADD. Соответственно её необходимо добавить для конкретного пользователя. Поэтому абоненту необходимо войти в личный кабинет. После совершения оплаты платёжная система отправляет сообщение PAY, после которого денежные средсва зачисляются на счёт абонента.
Для того, что бы разместить форму оплаты на главной странице сайта необходимо:
- Составить форму платёжной системы, в которой будет запрашиваться номер договора;
- По номеру договора необходимо получить suid(id авторизации), сделать это можно запросом к API;
curl "http://169.254.80.82:8082/rest_api/v2/Users/" -d 'method1=objects.filter&arg1={"abonent__contract_number":"BILL0000018"}&method2=first&arg2={}&method3=get_or_create_dynamic_session&arg3={}'
- По suid в личном кабинете вызвать функцию add_payment_operation;
curl "http://169.254.80.82:8082/rest_api/v2/Users/" -d 'method1=web_cabinet.add_payment_operation&arg1={"suid":"244925771054513035", "summa_in": 100, "operator": "SBER_NEBANK","src_ip":"10.10.10.10"}'
- На примере Payment.php перенаправить абонента на страницу оплаты. Путь к файлу Payment.php:
/app/asr_cabinet/usr/local/lib/cabinet_modules/modules/Payment.php
Платёжные системы работающие без создания операции в биллинге:
- Все системы на основе протокола OSMP;
- Сбербанк биллинговые системы;
- Яндекс касса;
- Paycom (UZ);
- Альфа-Банк.