Модуль платежей. Разрешает автоматически зачислять деньги с разных платёжных систем.
Возможности
- Автоматически зачислять деньги на счёт пользователя без участия оператора
- Уведомление администратора о поступлениях платежей.
- Уведомление пользователя о получении платежа.
- Ведение журнала платежей с детальной информацией о платежах.
- Создание отчёта платежей.
- Блокирования/разрешения уведомлений о платеже для определенных только IP адресов. Уведомление администратора о не санкционируемых операциях.
- Зачисление с Visa/Master карт.
- Зачисления через терминалы оплаты.
- Загрузка платежей с файла(Банковские выписки).
- Курсы Валют.
- Запуск команд перед/после оплатой.
- Разделение платежей по группам пользователей
- Список платежных систем
- Банковские выписки
- Групповые снятия денег
- Периодические
С чего начать?
Надо подписать договор с платежной системой.
Получить протокол (опционально) взаимодействия API.
Получить ключи от процессинга (например, логин, пароль, номер мерчанта в платежной системе).
Купить и настроить модуль платежной системы в ABillS.
Принимать платежи.
Типы внешних платежей
Тип 1 - Портал абонента: пользователь оплачивает за услуги непосредственно со своего веб-кабинета используя виртуальные платёжные системы (Webmoney, Yandex деньги) или пластиковые карты Visa/Master Cards.
1) После входа в личный кабинет пользователь переходит в меню Денежные операции>Пополнение счёта
, вводит суму пополнения, выбирает систему оплаты и нажимает кнопку дальше
2) Система переносит пользователя на страницу подготовленной оплаты с данными платежа
3) Если все данные верны пользователь нажимает кнопку оплатить и переносится на странице проведение платежа системы оплаты которую он выбрал
4) После успешного совершения платежа пользователя возвращает назад на страницу личного кабинета с информацией что платёж был зачислен успешно
5) Если во время платежа произошла ошибка пользователя также возвращает на страницу личного кабинета и предупреждает повторно об ошибке пополнения
Тип 2 - Терминалы оплаты: пользователь оплачивает за услуги с терминала платежей. Терминал платежей через обработчик paysys_check.cgi передает данные в биллинг.
1) Пользователь подходит к терминалу и выбирает провайдера
2) Вводит свой логин или UID (или любой другой параметр указанный в настройке платёжной системы в биллинге). Терминал идентифицирует абонента, показывает его ФИО и остаток на счету.
3) Пользователь пополняет счет. На протяжении 1-2 минут деньги появляются на счету и биллинг активизирует услуги.
Тип 3 - Работа с выписками: пользователь оплачивает за услуги в банке. Средства вносятся администратором или автоматически через консоль (FTP, POP3, file)
При оплате в систему билинга вносятся следующие данные:
Журнал платежей
Идентификатор платежа
Сума платежа
Дата и время платежа
Платёжная системы
Журнал внешних платежей
Идентификатор платежа
Сума платежа
Дата и время платежа
Платёжная системы
IP адрес откуда пришёл платёж
Тело самого запроса
Статус транзакции
Типы пополнений
После версии 0.78.30 используется новая схема подключения платежных систем.
@MODULES = ( 'Paysys' ); # Включение меню финансовых операций. $conf{user_finance_menu}=1; #Включение новой схемы модуля Paysys. $conf{PAYSYS_NEW_SCHEME}=1;
Подключение модуля:
Настройка работы с базой данных и создание таблиц:
mysql --default-character-set=utf8 -D abills < db/Paysys.sql -p cp Paysys.pm /usr/abills/Abills/mysql
Дополнительные модули платёжных систем копируются в папку /usr/abills/Abills/modules/Paysys/systems.
Установка агента получения (чекера) платежей. Платёжные системы отправляют на чекер данные об оплате, чекер идентифицирует систему и заносит средства на счет. Если чекер не может идентифицировать системы он пишет Error: Unknown payment system.
cd /usr/abills/cgi-bin/ ln -s ../Abills/modules/Paysys/paysys_check.cgi paysys_check.cgi
Отслеживание ошибок
Для включение режима отладки нужно в конфигурационном файле включить опцию $conf{PAYSYS_DEBUG}=1; (Включить лог отладки для Paysys модуля)
Лог ведётся в файле /usr/abills/var/log/paysys_check.log.
По данному файлу можно отследить были ли подтверждения оплаты со стороны платёжной системы. Если не можете найти в данном файле подтверждения о платеже. Скорее всего система не отправила Вам его. Чтобы быть полностью уверенным что платёжная система не отправляет подтверждение посмотрите в файл логов веб сервера на наличие обращений от платёжной системы к вашему билингу
# grep paysys_check.cgi /var/log/httpd/abills-access_log
если обращения были вы видите следующие строки
192.168.1.4 - !- [04/Jun/2014:07:33:38 +0000] "GET /paysys_check.cgi HTTP/1.1" 200 1678
Интерактивный режим
При открытии в веб браузере программы без параметра paysys_check.cgi система запускает интерактивный режим пополнения счета, который разрешает пополнить счет без захода в личный кабинет абонентом.
В интерактивном режиме отображаются все подключённые платёжные системы у которых есть возможность оплаты через личный кабинет
Вид формы:
F.A.Q
Вопросы | Ответы |
---|---|
Как перейти со старой схемы на новую? | Сделать надо следующее: |
Как спрятать персональную информацию? | Как спрятать персональную информацию абонента? |
Как Abills различает с какой платежной системы пришел запрос? | Abills ориентируется на IP адреса, которые вы задали в настройках платежной системы. Если адрес, с которого идут запросы не был прикреплен ни к одной платежной системе - Abills не будут обрабатывать их. |