Предисловие: я не являюсь сотрудником платежной системы Payonline (наши заказчики выбрали эту платежную систему), поэтому не размещаю этот пост в хаб «Я пиарюсь». Цель данного поста — популяризация Drupal. Если хоть один человек воспользуется этим модулем, я буду считать свою миссию выполненной.
Возможности модуля весьма прозаичны:
1. Страница и блок с формой для ввода данных пользователя:
- номер лицевого счета;
- номер квартиры(опционально, для проверки правильности ввода номера лицевого счета);
- сумма платежа;
- сумма и тип страхования, сумма пени;
2. Администрирование модуля
2.1 Просмотр платежей
2.2 Просмотр/добавление/экспорт пачек оплаты
2.3 Экспорт платежей за период
2.3 Конфигурация модуля
Немного о том, как работает модуль.
- Если житель правильно указал номер лицевого счета, генерируется номер заказ(OrderID) и он переходит на страницу оплаты на сайте платежной системы;
- Если платеж прошел успешно, платежная система на callbackUrl(https://адрес-вашего-сайта/payonline-hcs/confirm) отправляет запрос на подтверждение оплаты на вашем сайте.
После подтверждения оплаты, администратор может из принятых платежей формировать пачки оплаты. В новую пачку оплаты попадают только платежи, ранее не попавшие в другие пачки. Такая возможность реализована для удобства экспорта платежей в ПО управляющей компании.
Экспорт платежей из пачки и за определенный период(без привязки к определенной пачке) возможен, пока, только в формат CSV.
Формат выгружаемого файла (столбцы):
- id;
- номер лс;
- номер счета;
- сумма платежа;
- дата и время принятия платежа на сайте;
- дата и время принятия платежа в платежной системе;
- сумма страхования жилья;
- сумма страхования гражданской ответственности;
- сумма полной страховки;
- сумма пени;
- комиссия, взимаемая при платеже
Проверка правильности ввода номера лицевого счета по номеру квартиры
По умолчанию эта функция отключена в настройках.
Перед тем как включать эту функцию необходимо заполнить справочник-соответствие номеров лицевых счетов номерам квартир. Иначе, если включена функция проверки и справочник будет пустой или в нем будет неполная база по всем лицевым счетам, тогда пользователю будет выдаваться ошибка, что номер лицевого счета указан неверно.
Справочник заполняется с помощью специальной формы, расположенной в разделе «Конфигурация Payonline»->«Справочник с номерами квартир».
На «вход» для заполнения справочника нужен текстовый файл с разделителями. Необходимая структура файла:
"0505252";"1"
где первое поле — номер лицевого счета, второе поле — номер квартиры.
Не забудьте настроить права доступа к модулю. Иначе форма оплаты будет недоступна анонимным пользователям.
Модуль находится под лицензий BSD. Исходный код на Github.
Пожалуй все. Будут вопросы, задавайте в комментариях.
P.S.
За разработку этого модуля для нашего заказчика я взял 0 руб, с прицелом на то, чтобы поделиться им с сообществом. Я считаю хорошей практикой делится «наработками», если заказчику они достались бесплатно. Если же за разработку взимается n-я сумма, у меня рука не поднимается выкладывать это в открытый доступ. Да и заказчикам такой подход, я думаю, тоже не понравится.
Автор: servekon