Модуль работы с платёжными документами.
Выписка счётов из пользовательского интерфейса
Выписка счётов из интерфейса для администраторов
Выписка счетов-фактур
Автоматическая выписка счёта, кассового чека при занесении денег на аккаунт пользователя
Формирование общего файла счетов для печати и рассылки всем пользователям
Формирование актов оказания услуг за определённый период
Автоматическое формирование актов оказания услуг для всех компаний системы
Выписка налоговых накладных
Формирование договора и его печать
Возможность формировать несколько типов договоров в зависимости от предоставляемых услуг
Создание документов в PDF формате (нужен модуль PDF::API2)
Формировать индивидуально документы для каждого типа оплат
Привязка документов к группам пользователей
Привязка оплат к счетам
Групповая генерация счетов и квитанций на оплату
Цифровая подпись. Цифровая подпись Vchasno.
abills/libexec/config.pl
@MODULES = ( 'Docs' ); |
Счет (invoice) - платёжный документ на оплату.
Оплата (payment), после оплаты в счете делается пометка, что он был оплачен.
Квитанция об оплате (receipts) - выписывается по факту оплаты с пометкой номера оплаты.
Налоговая (tax invoice) - для юридических лиц выписывается в конце месяца по факту оплаты.
Счет на оплату и квитанция могут выписаться в момент оплаты. Также, при оплате можно выбрать счет, по которому была произведена оплата. Если сумма оплаты отличается от суммы счета система может распределить сумму по нескольким счетам.
$conf{DOCS_ACCOUNT_EXPIRE_PERIOD}=10; | Время действительности счета. По умолчанию 30 дней |
---|---|
$conf{DOCS_ACCOUNT_EXPIRE_DAY}=20; | Дата действия счета. Имеет более высокий приоритет чем $conf{DOCS_ACCOUNT_EXPIRE_PERIOD} |
$conf{MONEY_UNIT_NAMES}='грн;коп'; | Название денежной единицы='большая часть;меньшая часть' |
$conf{DOCS_PDF_PRINT}=1; | Вывод печатных документов в формате PDF. Шаблоны документов помещать в папку шаблонов $conf{TPL_DIR}. Функция работает только при наличии установленного Perl модуля Perl PDF::API2 Смотрите также Шаблоны системы |
$conf{DOCS_VAT_INCLUDE}=20; | Процентов включенного налога |
$conf{DOCS_ORDERS}=['Услуги связи', 'Тех. поддержка']; | Виды товаров для счёта |
$conf{DOCS_LANGUAGE}='russian'; | Язык печатных документов. По умолчанию равен $conf{default_language} |
$conf{DOCS_PAYMENT_METHODS}='-' | Описание типов платежей для бухгалтерских документов. При указании данной переменной типы оплат берутся с данной переменной, а не из системных типов оплат. Если нет типа, указанного в данной переменной, используется тип с номером 0. По этому рекомендовано всегда иметь описание оплаты с типом 0. Формат $conf{DOCS_PAYMENT_METHODS}='номер:тип; номер:тип;'; Пример 0:оплата с расчётного счёта; 1:Наличка; 2:Поступление с терминалов |
$conf{DOCS_CURRENCY}='980'; | Валюта выписываемых документов. Если опция указана и отличается от системной $conf{SYSTEM_CURRENCY}, документы выписываются в двух валютах в системной и в валюте документов. Коды нужно вводить соответственно с стандартом ISO 4217. Также нужно заводить валюты в меню конвертации Система>Курс обмена Таблица кодов http://index.minfin.com.ua/code/ |
$conf{DOCS_SKIP_NEXT_PERIOD_INVOICE}=1; | Не отображать в пользовательском интерфейсе форму выписки счета на следующий учётный период |
$conf{DOCS_PAYMENT_SYSTEM_CURRENCY}=1; | При оплате заполнять поля оплаты системной валютой |
$conf{DOCS_PRE_INVOICE_PERIOD}=10; | Количество дней до начала учётного периода для генерации счетов. (По умолчанию 10) |
$conf{DOCS_INVOICE_ORDERS}=12; | Количество позиций в счете. По умолчанию 12 |
$conf{DOCS_CONTRACT_TYPES}=':Д:физические лица:contract_1; :В:выделенка для юр. лиц (Ethernet, ADSL):contract_2; :ВО:оптика для организаций:contract_3;'; | Задания списка типов договоров для работы с клиентами. Формат: ПРЕФИКС_ДОГОВОРА:CУФИКС_ДОГОВОРА:НАЗВАНИЕ_ДОГОВОРА:ШАБЛОН Для шаблона contract_1 система будет искать файл /usr/abills/Abills/templates/Docs_docs_contract_1.tpl или его альтернативный pdf шаблон. Если не заполнено поле Номер договора и дата система автоматически подставляет следующий нужный номер в эти поля |
$conf{DOCS_INVOICE_ALT_TPL}=1; | Включить возможность вести 2 шаблона счетов. Основной и дополнительный |
$conf{DOCS_INVOICE_PAID_TPL}=1; | Выводить для оплаченных счетов другой шаблон. шаблон для оплаченных счетов docs_invoice_paid.[tpl|dsc|pdf] |
$conf{DOCS_FEES_METHOD_ORDERS}=1; | Выводит типы услуг в счетах с типов начислений |
$conf{DOCS_SKIP_USER_MENU}=1; | Не отображать меню документов в портале абонента |
$conf{DOCS_USERPORTAL_INVOICE}=1; | Список квитанций в портале абонентов |
$conf{DOCS_PAYMENT_RECEIPT_SKIP}=1; | Не создавать квитанцию после оплаты |
$conf{DOCS_PAYMENT_SENDMAIL}=1; | Отправлять созданные после оплаты документы почтой: счет и квитанцию |
$conf{DOCS_PAYMENT_DOCS_SKIP}=1; | Не формировать и не показывать форму документов |
$conf{DOCS_ACCOUNT_EXPIRE_PERIOD_MULTIPLIER}=2; | Множитель для удаления неоплаченных счетов. Если Время действительности счета кончилось и он не оплачен. Счет будет удален через («Дата действия счета» * «Множитель»). Пример: DOCS_ACCOUNT_EXPIRE_DAY(DOCS_ACCOUNT_EXPIRE_PERIOD)=30; DOCS_ACCOUNT_EXPIRE_PERIOD_MULTIPLIER=3; 30 * 3 = 90 дней |
$conf{DOCS_SAVE}=1; | Сохранять выписанные документы в отдельной папке (По умолчанию они только рассылаются и генерируются на лету) Папка для сохранения ($conf{DOCS_STORE_DIR}) : /usr/abills/Abills/templates/Docs/ |
$conf{DOCS_QR_CODE}=''; | Разместить в шаблоне Qr code для оплаты во время сканирования (параметру надо задать такое значения " METHOD=0&CREATE_RECEIPT=1&add=1&APPLY_TO_INVOICE=1&INVOICE_ID=create") также в шаблоне надо установить значения %QR_CODE_DOCS% в место этого ключа будет Qr code при создании документа |
$conf{DOCS_SEND_INVOICE_VIBER}=1; | После создания счета отправлять абоненту на Viber Обязательный параметр $conf{DOCS_SAVE}=1; Шаблон сообщения docs_invoice_viber.tpl |
Также можно формировать индивидуально документы для каждого типа оплат (docs_account.tpl, docs_account_company.tpl, docs_invoice.tpl).
Формат таких шаблонов в каталоге abills/Abills/templates:
[название модуля]_[название шаблон]_[тип оплаты].tpl Docs_docs_account_1.tpl |
Примечание: шаблоны даного типа нельзя править через веб-интерфейс.
Данная функция доступна только для документов в формате PDF |
Например. Если Вам нужно для оплат наличными выдавать кассовый чек, а для оплат банком от юридических лиц акт оказания услуг:
формируем два дополнительных шаблона:
1. Будет выдаваться по умолчанию для всех платежей
abills/Abills/templates/Docs_docs_account.tpl # признак индивидуального шаблона abills/Abills/templates/Docs_docs_account.pdf # сам шаблон abills/Abills/templates/Docs_docs_account.dsc # файл описание переменных |
2. Будет выписываться для оплат с типом банк
abills/Abills/templates/Docs_docs_account_1.tpl # признак индивидуального шаблона abills/Abills/templates/Docs_docs_account.pdf # abills/Abills/templates/Docs_docs_account.dsc # |
Список типов пополнения можно расширять по вашему желанию.
docs_receipt_email.tpl - шаблон тела письма отправки квитанции.
docs_invoice_email.tpl - шаблон тела письма отправки счета.
Для групп имеющих флаг Собственные Бух. документы можно создавать индивидуальные шаблоны документов. Шаблоны создаются в папке abills/Abills/templates/ по принципу индивидуальных шаблонов и, в конце названия файла через два нижних подчеркивания указывается номер группы. Если нужно использовать тип услуги указанный в оплатах и индивидуальные групповые документы, тогда через одно подчёркивание (Docs_[название шаблона]_[Номер типа услуги]_[номер группы].tpl).
Можно использовать как и для receipt, invoice, contract.
Пример:
контракт для группы 99
abills/Abills/templates/Docs_docs_contract__99.tpl # признак индивидуального шаблона abills/Abills/templates/Docs_docs_contract__99.pdf # сам шаблон abills/Abills/templates/Docs_docs_contract__99.dsc # файл описание переменных |
В системе реализована функция ручной и автоматической привязки оплат к счетам.
Система находит самый ранний по дате счёт в статусе «Не оплачен».
Проверяет, какая сумма по данному счёту не оплачена.
Если неоплаченный остаток счёта+сумма оплаты = сумма счёта, то вся сумма оплаты распределяется на данный счёт (в записи о счёте появляется ссылка на номер записи об оплате, которая была внесена по этому счёту и гасимая сумма, а в записи об оплате появляется ссылка на счёт, который был оплачен и сумма оплаты, которая этот счёт закрывает), и счёт переходит в статус «Оплачен»;
Ручная привязка счетов
Пользователь из списка при оплате выбирает нужный счет.
Если неоплаченный остаток счёта+сумма оплаты = сумма счёта, то вся сумма оплаты распределяется на данный счёт, и счёт переходит в статус «Оплачен».
Также есть возможность вручную выбрать счёт для привязки оставшейся части оплаты к другому счёту. Данное действие производится через журнал счетов. Администратор выбирает неоплаченный счет и переходит к журналу неприкреплённых оплат, где он выбирает нужную оплату и указывает сумму. Если сумма больше, чем счет, система прикрепляет только сумму соответствующую счету, а остальную помечает как нераспределённую.
Если при ручном распределении счёт не выбран, то вся сумма оплаты считается нераспределенной.
Если удаляется оплата или счет соответственно, система удаляет и привязку.
Для того что бы получить выписку с всеми операциями клиента вам надо зайти на клиента а после нажать на кнопку Выписка со счета
После вас направит на страницу с выпиской:
Здесь вы сможете выбрать год, за который надо получить выписку. Или выбрать за весь период.
Можно распечатать или же скачать в XLS формате (для того чтобы открыть в Excel)
Клиенты -> Компании
Обслуживание>Документы>Журнал клиентов
В данном списке сохраняться клиенты, которые являются плательщиками счетов
Если в журнале по UID есть внесенные клиенты, то они будут выведены в виде списка при создании счета
Если нет внесенных клиентов, то при нажатии на "+" в поле Клиент будет выведено поле для ввода клиента с сохранением его в Журнал клиентов
Если нет списка клиентов до UID, то автоматически откроется поле для ввода с подстановкой фамилии и имени абонента или названии компании (если абонент привязан к компании)
Если у клиента в журнале не поставлен чекбокс в поле "Документы", то в списке при создании счета он будет отображается красным цветом (пример Черняк М.В.)