Pull to refresh

Payonline HCS. Модуль приема платежей для ЖКХ

Reading time 3 min
Views 5.9K
Предисловие: я не являюсь сотрудником платежной системы Payonline (наши заказчики выбрали эту платежную систему), поэтому не размещаю этот пост в хаб «Я пиарюсь». Цель данного поста — популяризация Drupal. Если хоть один человек воспользуется этим модулем, я буду считать свою миссию выполненной.

Возможности модуля весьма прозаичны:

1. Страница и блок с формой для ввода данных пользователя:

  • номер лицевого счета;
  • номер квартиры(опционально, для проверки правильности ввода номера лицевого счета);
  • сумма платежа;
  • сумма и тип страхования, сумма пени;

Форма ввода платежа


2. Администрирование модуля

2.1 Просмотр платежей



2.2 Просмотр/добавление/экспорт пачек оплаты



2.3 Экспорт платежей за период



2.3 Конфигурация модуля



Немного о том, как работает модуль.


  • Если житель правильно указал номер лицевого счета, генерируется номер заказ(OrderID) и он переходит на страницу оплаты на сайте платежной системы;
  • Если платеж прошел успешно, платежная система на callbackUrl(http://адрес-вашего-сайта/payonline-hcs/confirm) отправляет запрос на подтверждение оплаты на вашем сайте.


После подтверждения оплаты, администратор может из принятых платежей формировать пачки оплаты. В новую пачку оплаты попадают только платежи, ранее не попавшие в другие пачки. Такая возможность реализована для удобства экспорта платежей в ПО управляющей компании.

Экспорт платежей из пачки и за определенный период(без привязки к определенной пачке) возможен, пока, только в формат CSV.

Формат выгружаемого файла (столбцы):

  • id;
  • номер лс;
  • номер счета;
  • сумма платежа;
  • дата и время принятия платежа на сайте;
  • дата и время принятия платежа в платежной системе;
  • сумма страхования жилья;
  • сумма страхования гражданской ответственности;
  • сумма полной страховки;
  • сумма пени;
  • комиссия, взимаемая при платеже

Проверка правильности ввода номера лицевого счета по номеру квартиры


По умолчанию эта функция отключена в настройках.
Перед тем как включать эту функцию необходимо заполнить справочник-соответствие номеров лицевых счетов номерам квартир. Иначе, если включена функция проверки и справочник будет пустой или в нем будет неполная база по всем лицевым счетам, тогда пользователю будет выдаваться ошибка, что номер лицевого счета указан неверно.
Справочник заполняется с помощью специальной формы, расположенной в разделе «Конфигурация Payonline»->«Справочник с номерами квартир».
На «вход» для заполнения справочника нужен текстовый файл с разделителями. Необходимая структура файла:
"0505252";"1"

где первое поле — номер лицевого счета, второе поле — номер квартиры.



Не забудьте настроить права доступа к модулю. Вот образец правильной настройки прав доступа к модулю:


Модуль находится под лицензий BSD. Исходный код на Github.

Пожалуй все. Будут вопросы, задавайте в комментариях.

P.S.
За разработку этого модуля для нашего заказчика я взял 0 руб, с прицелом на то, чтобы поделиться им с сообществом. Я считаю хорошей практикой делится «наработками», если заказчику они достались бесплатно. Если же за разработку взимается n-я сумма, у меня рука не поднимается выкладывать это в открытый доступ. Да и заказчикам такой подход, я думаю, тоже не понравится.

UPD от 27.01.2014
Обновил модуль до версии 1.0.1. Список изменений:
  • добавлена страница со статистикой в административной части;
  • добавлена страница и блок с возможностью проверки статуса платежа;
  • небольшие изменения в структурах таблиц, переведены все строки;
  • в списке платежей для админа теперь указывается номер пачки оплаты, если он есть.

UPD от 29.01.2014
Обновил модуль до версии 1.0.2.
UPD от 03.03.2014
Обновил модуль до версии 1.0.3. Подробнее смотрите change_log.txt.
UPD от 02.09.2014
Сделал рефакторинг кода, убрал глобальные переменные.
UPD от 26.10.2014
Обновил модуль до версии 1.0.7.
Теперь сумму комиссии можно не включать в общую сумму платежа.
Добавил возможность вручную выбирать платежи для экспорта или добавления в пачку оплаты.
Убрал некоторые ошибки, сделал рефакторинг кода.
UPD от 20.03.2015
Обновил до версии 1.0.7.1
Only registered users can participate in poll. Log in, please.
Нужно ли подобный модуль портировать для других платёжный систем?
68.42% Да, было бы неплохо 39
14.04% Нет, считаю модуль бесполезным 8
17.54% Модуль нуждается в доработке функционала 10
57 users voted. 18 users abstained.
Tags:
Hubs:
+6
Comments 10
Comments Comments 10

Articles