Общая информация
Параметр | Значение |
---|---|
Протокол | -------- |
ID | 174 |
Версия модуля | 9.01 |
Версия биллинга | >1.40.00 |
Назначение модуля
Модуль является универсальным для обработки платежных выписок в формате CSV.
Настройки модуля
- Скопировать файл CSV.pm в папку /usr/abills/Abills/modules/Paysys/systems/
- Зайти в меню Настройки
>
Paysys>
Настройки Добавить платежную систему
Работа с несколькими банками
Модуль поддерживает наследование, поэтому можете добавлять другой банк, как отдельный модуль в Настройки>
Paysys>
Настройки
В отчете будет отображаться отдельно подключенные плагины для обработки CSV
Если Вы работаете только с импортированием файлов в биллинг, выбор даты в выписке игнорируете
Ручная работа с выписками
Можно вручую загрузить файл через Отчёт>Платежные системы>Внутренние отчеты. Если сохранять файл не нужно на сервере, дата указывать дату не обязательно, обработка будет всех платежей, которые есть в файле
Настройки контрагента
Параметр | Значение | Пример |
---|---|---|
PAYSYS_CSV_ACCOUNT_KEY* | Поле по которому искать пользователя в системе | UID |
PAYSYS_CSV_FIELDS* | Поля, которые присутствуют в выписке, можно указывать не все, если не нужно несколько последних в строке | DATE,TIME,ID,DESC,EDRPOU,KONTRAGENT,RAHUNOK KONTRAGENTA,NBU_ID,SUMA DEBET,SUMA KREDIT |
PAYSYS_CSV_FIELDS_REGEX | Регулярные выражения, которые применять к полям, если платеж не будет подходить под требования регулярных выражений будет отображаться ошибка, валидации Символ | используется в качестве делимитера между регулярными выражениями, поэтому использовать его в регулярных выражениях запрещено | ^\d{2}:\d{2}:\d{2}$|^\d{4}.\d{2}.\d{2}$||^\d{8}$||^UA\d{27}$|^\d{6|}|^\d+$|^\d+$ |
PAYSYS_CSV_FIELDS_SEQUENCE* | Собственный выбор и порядок полей в таблице, которые необходимо показывать. Названия полей должны быть на основе PAYSYS_CSV_FIELDS | SUMA KREDIT, DATE,TIME,ID,DESC,EDRPOU,KONTRAGENT,RAHUNOK KONTRAGENTA |
PAYSYS_CSV_COLUMN_NAMES* | Собственное название полей, которые будут отображаться в отчете. Порядок идет в соответствии с опцией PAYSYS_CSV_FIELDS_SEQUENCE | Дата,Час,Сума,Номер,Призначення,Код ЄДРПОУ,Контрагент,Рахунок Контрагента |
PAYSYS_CSV_IMPORT_FIELD* | Ключевое поле, на основе которого будет происходить зачисление платежа, берется как транзакция, если нет поля PAYSYS_CSV_TRANSACTION_FORMAT | KOD IDENT. |
PAYSYS_CSV_IMPORT_FIELDS* | Зарезервированные поля в системе, которые применяются при импорте SUM - сумма платежа | SUM:SUMA KREDIT;DATE:DATE;DESC:DESC |
PAYSYS_CSV_REGEX | Регулярное выражение, по которому будет проводится поиск пользователя | \d{4,} |
PAYSYS_CSV_REGEX_FIELD | Поле по которому будет происходить поиск. Название поля, ваше собственное, которое присвоили в PAYSYS_CSV_FIELDS | DESCRIPTION |
PAYSYS_CSV_EDRPOU_CHECK | Проверка по юридическому ID компании ЕГРПОУ или ИНН. Заполнять в опции нужно название поля | EDRPOU |
PAYSYS_CSV_AMOUNT_INTEGER_FORMAT | Нужно, если сумма платежа составляет 200.52 у.е., а в выписке это число 20052 | 1 |
PAYSYS_CSV_DEBIT_PAYMENTS | Дебетовые платежи, которые есть в выписке и не нужно отображать Указывается в формате тип:поле:значений. Возможно указывать в двох форматах 1:поле - которое отвечает за то что будет дебетовый платеж 2:поле:значение - тоже самое что выше, но если есть поле, которое должно быть равно определенному значению. Например в колонке TYPE есть значения "Дебет/Кредит" | 2:TYPE:Дебет |
PAYSYS_CSV_DEBIT_PAYMENTS_SKIP | Не отображать в выписке дебетовые платежи | 1 |
PAYSYS_CSV_DATE_FORMAT* | Формат даты. Заполняется в виде: формат;поля с которых нужно сделать дату платежа Нужно если дата и время платежа отдельно и формат даты отличный от %Y-%m-%d %H:%M:%S | %Y-%m-%dT%H:%M:%S;DATE,TIME |
PAYSYS_CSV_FILE_ENCODE | Изменить кодировку файла, если она отличается от utf-8 | windows-1251:utf-8 |
PAYSYS_CSV_HEADER | Удалять первые строки в выписке, если это информационные поля | 2 |
PAYSYS_CSV_FOOTER | Удалять последние строки в выписке, если это информационные поля | 2 |
PAYSYS_CSV_TRANSACTION_FORMAT | Поля с который формировать уникальную транзакцию, если в выписке платежей нет соответствующего поля. Задается в формате Типы: | field:NOMER;string:-;field:KOD IDENT.;string:-;field:DATA |
PAYSYS_CSV_TRANSACTION_AS_MD5 | Формировать транзакцию как строку MD5 на основании опции PAYSYS_CSV_TRANSACTION_FORMAT | 1 |
PAYSYS_CSV_STATEMENTS_CELL_PREPROCESS | Регулярное выражение, которое предназначено для обработки строки с платежом перед работой с ним. Нужно, если надо удалить лишние символы в начале, в конце, задвоение кавычек | (^")|((?<=")")|(\s+"$) |
PAYSYS_CSV_STATEMENTS_DELIMITER* | Разделитель между значениями платежа | ; |
PAYSYS_CSV_STATEMENTS_PATH | Директория де сохраняются файлы, по умолчанию /usr/abills/var/log/Paysys/{НОМЕР ПЛАТЕЖНОЙ СИСТЕМЫ}/ | /var/db/Paysys/mtb |
PAYSYS_CSV_STATEMENTS_FILE_FORMAT | Обработка названий файлов, если в названии не будет найдено значение по групе date - файл будет пропущен Зарезервированные названия групп регулярных выражений | (?<date>\d{8})-\d{6}-official_(?<merchant_id>UA\d{27})_(?<currency>[A-Z]{3})_(?<file_date>\d{8})\.(?<ext>[A-Za-z]+) |
PAYSYS_CSV_STATEMENTS_FILE_SKIP | Пропускать файлы с помощью регулярного выражения | EUR|\d{24} |
PAYSYS_CSV_PERIODIC_DISABLE | Отключить работу периодической обработки сохраненных файлов выписки, если таковы имеются на сервере | 1 |
Базовые демонстрационные конфигурации для различных банков
МТБ Банк (автоклиент)
PAYSYS_MTBAUTO_COLUMN_NAMES | Дата,Сума,Призначення,ЕДРПОУ платника,Назва компанії платника |
PAYSYS_MTBAUTO_DATE_FORMAT | %y%m%d %H:%M:%S;DATE |
PAYSYS_MTBAUTO_DEBIT_PAYMENTS | 2:TYPE:1 |
PAYSYS_MTBAUTO_FIELDS | PLUG,PLUG,PLUG,PLUG,PLUG,PLUG,PLUG,PLUG,PLUG,PLUG,NAME,EDRPOU,SUM,CURR,TYPE,PLUG,DATE,PLUG,DESC,PLUG.PLUG,PLUG |
PAYSYS_MTBAUTO_FIELDS_REGEX | ^|||||||||||^\d{8,10}$|^\d+([.,]\d+)?$||||^\d{6} \d{2}:\d{2}:\d{2}$|||||$ |
PAYSYS_MTBAUTO_FIELDS_SEQUENCE | DATE,SUM,DESC,EDRPOU,NAME |
PAYSYS_MTBAUTO_FILE_ENCODE | windows-1251:utf-8 |
PAYSYS_MTBAUTO_IMPORT_FIELD | EDRPOU |
PAYSYS_MTBAUTO_IMPORT_FIELDS | SUM:SUM;DATE:DATE;DESC:DESC |
PAYSYS_MTBAUTO_REGEX_FIELD | DESC |
PAYSYS_MTBAUTO_STATEMENTS_CELL_PREPROCESS | (^")|("$)|("")|(?!^)(")(?!$) |
PAYSYS_MTBAUTO_STATEMENTS_DELIMITER | \| |
PAYSYS_MTBAUTO_TRANSACTION_FORMAT | field:EDRPOU;field:SUM;field:DATETIME;field:DESC |
PAYSYS_MTBAUTO_STATEMENTS_FILE_FORMAT | DOC_(?<date>\d{8})\.csv |
PAYSYS_MTBAUTO_STATEMENTS_PATH | /usr/abills/Abills/modules/Paysys/t/csv/MTBAuto |
А-Банк
PAYSYS_ABANKCSV_AMOUNT_INTEGER_FORMAT | 1 |
PAYSYS_ABANKCSV_COLUMN_NAMES | Дата операції,№ платежу,Тип операції,Контрагент,ЄДРПОУ/РНОКПП контрагента,IBAN Контрагента,Призначення платежу,Сума грн,Залишок після операції в валюті рахунку |
PAYSYS_ABANKCSV_DATE_FORMAT | %d.%m.%Y%H:%M:%S;DATE,TIME |
PAYSYS_ABANKCSV_DEBIT_PAYMENTS | 2:TYPE:Вихідна |
PAYSYS_ABANKCSV_EDRPOU_CHECK | EDRPOU |
PAYSYS_ABANKCSV_FIELDS | DATE,TIME,ID,TYPE,KONTRAGENT,EDRPOU,IBAN,DESC,SUM,AFTER_SUM |
PAYSYS_ABANKCSV_FIELDS_SEQUENCE | DATETIME,ID,TYPE,KONTRAGENT,EDRPOU,IBAN,DESC,SUM,AFTER_SUM |
PAYSYS_ABANKCSV_HEADER | 2 |
PAYSYS_ABANKCSV_IMPORT_FIELD | EDRPOU |
PAYSYS_ABANKCSV_IMPORT_FIELDS | SUM:SUM;DATE:DATETIME;DESC:DESC |
PAYSYS_ABANKCSV_STATEMENTS_CELL_PREPROCESS | ((?<=\d)\s(?=\d))|((?<=\d),(?=\d))|(\") |
PAYSYS_ABANKCSV_STATEMENTS_DELIMITER | , |
CreditAgricole
PAYSYS_CREDITAGRICOLECSV_COLUMN_NAMES | Дата,Час,Сума,Номер,Призначення,Код ЄДРПОУ,Контрагент,Рахунок Контрагента,ID NBU |
PAYSYS_CREDITAGRICOLECSV_DATE_FORMAT | %Y-%m-%dT%H:%M:%S |
PAYSYS_CREDITAGRICOLECSV_EDRPOU_CHECK | KOD IDENT. |
PAYSYS_CREDITAGRICOLECSV_FIELDS | DATA,CHAS,NOMER,PRIZNACHENNJA,KOD IDENT.,KONTRAGENT,RAHUNOK KONTRAGENTA,KOD ID NBU,SUMA DEBET,SUMA KREDIT |
PAYSYS_CREDITAGRICOLECSV_FIELDS_SEQUENCE | DATA,CHAS,SUMA KREDIT,NOMER,PRIZNACHENNJA,KOD IDENT.,KONTRAGENT,RAHUNOK KONTRAGENTA,KOD ID NBU |
PAYSYS_CREDITAGRICOLECSV_FILE_ENCODE | windows-1251:utf-8 |
PAYSYS_CREDITAGRICOLECSV_HEADER | 1 |
PAYSYS_CREDITAGRICOLECSV_IMPORT_FIELD | NOMER |
PAYSYS_CREDITAGRICOLECSV_IMPORT_FIELDS | SUM:SUMA KREDIT;DATE:CHAS;DESC:PRIZNACHENNJA |
PAYSYS_CREDITAGRICOLECSV_REGEX | \d{4,} |
PAYSYS_CREDITAGRICOLECSV_REGEX_FIELD | PRIZNACHENNJA |
PAYSYS_CREDITAGRICOLECSV_STATEMENTS_DELIMITER | ; |
PAYSYS_CREDITAGRICOLECSV_STATEMENTS_FILE_FORMAT | (?<date>\d{8})-\d{6}-official_(?<merchant_id>UA\d{27})_(?<currency>[A-Z]{3})_(?<file_date>\d{8})\.(?<ext>[A-Za-z]+) |
PAYSYS_CREDITAGRICOLECSV_STATEMENTS_PATH | /usr/abills/Abills/modules/Paysys/t/csv/CreditAgricole |
PAYSYS_CREDITAGRICOLECSV_TRANSACTION_FORMAT | field:NOMER;string:-;field:KOD IDENT.;string:-;field:DATA |
Укргазбанк
PAYSYS_UKRGASBANKCSV_COLUMN_NAMES | Сума,Дата,ЄДРПОУ/ІПН,Призначення,Назва компанії(банку) платника,Номер транзакції |
PAYSYS_UKRGASBANKCSV_DATE_FORMAT | %d/%m/%Y;DATA_VYP |
PAYSYS_UKRGASBANKCSV_DEBIT_PAYMENTS | 2:DK:2 |
PAYSYS_UKRGASBANKCSV_EDRPOU_CHECK | OKPO_KOR |
PAYSYS_UKRGASBANKCSV_FIELDS | DATA_VYP,MFO,AC,OKPO,NAME,ND,DATA_D,DK,MFO_KOR,AC_KOR,OKPO_KOR,NAME_KOR,CUR_TAG,CUR_CODE,CUR_RATE,AC_CUR_TAG,AccountCur,SUM_PD_NOM,SUM_PD_EQ,PURPOSE,IN_RST_NO,IN_RST_EQ,OUT_RST_NO,OUT_RST_EQ,DB_SUM_NOM,CR_SUM_NOM,DB_SUM_EQ,CR_SUM_EQ,DAT_OST_OB,DB_IBAN,CR_IBAN |
PAYSYS_UKRGASBANKCSV_FIELDS_SEQUENCE | SUM_PD_NOM,DATA_VYP,OKPO_KOR,PURPOSE,NAME_KOR,ND |
PAYSYS_UKRGASBANKCSV_FILE_ENCODE | windows-1251:utf-8 |
PAYSYS_UKRGASBANKCSV_HEADER | 1 |
PAYSYS_UKRGASBANKCSV_IMPORT_FIELD | ND |
PAYSYS_UKRGASBANKCSV_IMPORT_FIELDS | SUM:SUM_PD_NOM;DATE:DATA_VYP;DESC:PURPOSE |
PAYSYS_UKRGASBANKCSV_STATEMENTS_CELL_PREPROCESS | (^")|("$)|("") |
PAYSYS_UKRGASBANKCSV_STATEMENTS_DELIMITER | ; |
PAYSYS_UKRGASBANKCSV_TRANSACTION_AS_MD5 | 1 |
PAYSYS_UKRGASBANKCSV_TRANSACTION_FORMAT | field:ND;field:SUM_PD_NOM;field:DATA_VYP;field:PURPOSE |
УкрСиббанк
PAYSYS_UKRSIBBANKCSV_COLUMN_NAMES | Сума,Дата,ЄДРПОУ/ІПН,Призначення,Назва компанії(банку) платника,Номер транзакції |
PAYSYS_UKRSIBBANKCSV_DATE_FORMAT | %d.%m.%Y %H:%M |
PAYSYS_UKRSIBBANKCSV_DEBIT_PAYMENTS | 1:DEBIT |
PAYSYS_UKRSIBBANKCSV_EDRPOU_CHECK | CORRESPONDENT_EDRPOU |
PAYSYS_UKRSIBBANKCSV_FIELDS | EDRPOU,MFO,ACCOUNT,CURRENCY,TRANSACTION_DATE,OPERATION_CODE,BANK_MFO,BANK_NAME,CORRESPONDENT_ACCOUNT,CORRESPONDENT_EDRPOU,CORRESPONDENT_NAME,DOCUMENT_NUMBER,DOCUMENT_DATE,DEBIT,CREDIT,PAYMENT_PURPOSE,HRYVNIA_COVERAGE |
PAYSYS_UKRSIBBANKCSV_FIELDS_SEQUENCE | CREDIT,TRANSACTION_DATE,CORRESPONDENT_EDRPOU,PAYMENT_PURPOSE,CORRESPONDENT_NAME,DOCUMENT_NUMBER |
PAYSYS_UKRSIBBANKCSV_FILE_ENCODE | windows-1251:utf-8 |
PAYSYS_UKRSIBBANKCSV_HEADER | 1 |
PAYSYS_UKRSIBBANKCSV_IMPORT_FIELD | DOCUMENT_NUMBER |
PAYSYS_UKRSIBBANKCSV_IMPORT_FIELDS | SUM:CREDIT;DATE:TRANSACTION_DATE;DESC:PAYMENT_PURPOSE |
PAYSYS_UKRSIBBANKCSV_STATEMENTS_CELL_PREPROCESS | (^")|("$)|("") |
PAYSYS_UKRSIBBANKCSV_STATEMENTS_DELIMITER | ; |
PAYSYS_UKRSIBBANKCSV_TRANSACTION_AS_MD5 | 1 |
PAYSYS_UKRSIBBANKCSV_TRANSACTION_FORMAT | field:PAYMENT_PURPOSE;field:CREDIT;field:TRANSACTION_DATE |
ПравексБанк
PAYSYS_PRAVEXBANKCSV_COLUMN_NAMES | Сума,Дата,ЄДРПОУ/ІПН,Призначення,Назва компанії(банку) платника,Номер транзакції |
PAYSYS_PRAVEXBANKCSV_DATE_FORMAT | %d.%m.%Y %H:%M |
PAYSYS_PRAVEXBANKCSV_DEBIT_PAYMENTS | 1:DEBIT |
PAYSYS_PRAVEXBANKCSV_EDRPOU_CHECK | CORRESPONDENT_EDRPOU |
PAYSYS_PRAVEXBANKCSV_FIELDS | EDRPOU,MFO,ACCOUNT,CURRENCY,TRANSACTION_DATE,OPERATION_CODE,BANK_MFO,BANK_NAME,CORRESPONDENT_ACCOUNT,CORRESPONDENT_EDRPOU,CORRESPONDENT_NAME,DOCUMENT_NUMBER,DOCUMENT_DATE,DEBIT,CREDIT,PAYMENT_PURPOSE,HRYVNIA_COVERAGE |
PAYSYS_PRAVEXBANKCSV_FIELDS_SEQUENCE | CREDIT,TRANSACTION_DATE,CORRESPONDENT_EDRPOU,PAYMENT_PURPOSE,CORRESPONDENT_NAME,DOCUMENT_NUMBER |
PAYSYS_PRAVEXBANKCSV_FILE_ENCODE | windows-1251:utf-8 |
PAYSYS_PRAVEXBANKCSV_FOOTER | 2 |
PAYSYS_PRAVEXBANKCSV_HEADER | 1 |
PAYSYS_PRAVEXBANKCSV_IMPORT_FIELD | DOCUMENT_NUMBER |
PAYSYS_PRAVEXBANKCSV_IMPORT_FIELDS | SUM:CREDIT;DATE:TRANSACTION_DATE;DESC:PAYMENT_PURPOSE |
PAYSYS_PRAVEXBANKCSV_STATEMENTS_CELL_PREPROCESS | (^")|("$)|("") |
PAYSYS_PRAVEXBANKCSV_STATEMENTS_DELIMITER | ; |
PAYSYS_PRAVEXBANKCSV_TRANSACTION_AS_MD5 | 1 |
PAYSYS_PRAVEXBANKCSV_TRANSACTION_FORMAT | field:PAYMENT_PURPOSE;field:CREDIT;field:TRANSACTION_DATE |