Диплом: Автоматизация приема платежей в базе конфигурации "1С: Предприятия 8.3" в ООО "Мастер Плюс"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
45
Для обоих способов взаимодействия сценарии работы пользователя в
программе "1С:Предприятие" очень близки и в большинстве случаев не зависят
от способа подключения.
Предприятие пользуется услугами АО "Альфа-Банк", у которого на
текущий момент не имеется собственного криптографического программного
обеспечения.
В нашем случае аутентификация происходит по закрытому ключу
сертификата. Система передает в Банк уникальный идентификатор Клиента в
банковской системе, а также файл открытой части ключа электронной подписи
Клиента, импортированный в систему "1С:Предприятие" на этапе настроек
обмена (метод "LogonCert", передается XML-файл, соответствующий XML-
схеме данных для аутентификации по закрытому ключу). Банковский сервис по
идентификатору клиента, серийному номеру сертификата и имени издателя
выполняет поиск сертификата электронной подписи Клиента, если находит, то
возвращает уникальный идентификатор – "маркер", зашифрованный с
использованием открытого ключа электронной подписи Клиента. Если не
находит, то возвращает ошибку аутентификации.
Полученный маркер должен быть расшифрован на стороне
"1С:Предприятие" с использованием закрытого ключа электронной подписи. В
дальнейшем, расшифрованный уникальный идентификатор должен быть указан
в каждом HTTP-запросе для обмена данными на транспортном уровне (в
заголовке SID). Алгоритм представлен на рисунке 13.
46
Рисунок 13. Алгоритм аутентификации клиента по закрытому
ключу ЭП.
На данном этапе, в программе "1С:Предприятие" выполняется проверка:
если пароль от контейнера закрытого ключа не сохранен в системе, а вводится
при каждом запросе, система предложит пользователю ввести пароль в
диалоговом окне.
Транспортный уровень позволяет отправлять и получать электронные
документы между клиентской системой "1С:Предприятие" и Банком по
согласованным между сторонами обмена настройкам, используя
зашифрованный канал. Инициатором сеанса обмена всегда выступает система
"1С:Предприятие".
Для передачи электронных документов между участниками обмена
используется "транспортный контейнер". Это XML-файл, сформированный по
определенному формату (XML-схема транспортного контейнера). Пример
сформированного транспортного контейнера в формате XML изображен на
рисунке 14.
47
Рисунок 14. Пример XML-файла запроса выписки.
Если настройки обмена между Клиентом и Банком предусматривают
сжатие данных, то электронные документы перед помещением в транспортный
контейнер сжимаются в формате архива.
Схема формирования транспортного контейнера с вариантами
использования настройки сжатия данных представлена на рисунке 15.
48
Рисунок 15. Схемы транспортного контейнера.
Следующим этапом является отправка электронных документов из "1С".
Отправка выполняется в 3 этапа:
- формирование транспортного контейнера, содержащего
электронные документы;
- аутентификация Клиента на стороне Банка (если нет ранее
открытой сессии);
- отправка транспортного контейнера в Банк и обработка ответа.
В "1С" формируется транспортный контейнер с одним или несколькими
электронными документами.
Далее проходит аутентификация на стороне Банка согласно выбранному
протоколу, в данном случае используется аутентификация по закрытому ключу
электронной подписи.
49
Если аутентификация пройдена успешно, транспортный контейнер
передается в Банк (отправка на ресурс Банка производится HTTP-методом
"POST" – метод "SendPack"), в синхронном режиме банковская система
возвращает либо ошибку получения, либо уникальный идентификатор на
стороне Банка, который будет однозначно соответствовать полученному
транспортному контейнеру.
Банковская система может проводить контроль формата и разбор
транспортного контейнера:
- либо в синхронном режиме (сразу в момент получения);
- либо в асинхронном режиме (ставит входящие транспортные
контейнеры в очередь на разбор).
Для такого варианта уникальный идентификатор возвращается сразу
после того, как транспортный контейнер успешно был поставлен в очередь на
разбор, не дожидаясь самого разбора.
Далее запускается процесс разбора очереди входящих транспортных
контейнеров банковской системой, результатом которого будет ответ о
состоянии обработки (XML-файл, соответствующий XML-схеме извещения о
состояния обработки транспортного контейнера).
Подготовленный ответ Банка упаковывается в транспортный контейнер
и ожидает на стороне Банка очередного запроса на наличие подготовленных к
передаче транспортных контейнеров из "1С".
Параллельно с процессом отправки ответа о состоянии обработки
транспортного контейнера банковская система выполняет обработку каждого
электронного документа, входящего в него. Этот алгоритм представлен на
рисунке 16.
50
Рисунок 16. Отправка электронных документов из "1С".
Получение электронных документов в "1С" выполняется в три этапа:
- аутентификация Клиента на стороне Банка (если нет открытой
сессии);
- запрос у Банка списка подготовленных к передаче транспортных
контейнеров, содержащих электронные документы для Клиента;
- запрос у Банка транспортного контейнера по его уникальному
идентификатору и разбор в "1С".
Проходит аутентификация на стороне Банка согласно протоколу.
51
Если аутентификация пройдена успешно, система "1С" запрашивает
Банк на наличие подготовленных транспортных контейнеров для Клиента
(запрос на ресурс Банка производится HTTP-методом "GET" – метод
"GetPackList"). В синхронном режиме банковская система возвращает список
уникальных идентификаторов транспортных контейнеров, готовых к передаче
со стороны Банка и отметку времени, равную дате и времени формирования
(передаются значения даты и времени сервера Банка) самого последнего
транспортного контейнера, входящего в этот список.
Если в запросе "1С" о готовых к передаче транспортных контейнерах
указать "Отметку времени" (указывается значение даты и времени сервера
Банка с точностью до секунды), то именно с этого момента времени будет
формироваться список уникальных идентификаторов (в формате GUID),
подготовленных к передаче в хронологическом порядке.
Формат GUIDэто ста двадцати восьми-битный глобально уникальный
идентификатор. Шанс нарушения уникальности каждого отдельного GUID не
гарантируется, но сводится к нулю.
Для того, чтобы получить список GUID всех когда-либо
сформированных транспортных контейнеров на банковской стороне, параметр
"Отметка времени" в запросе не передается. Данный алгоритм представлен на
рисунке 17.
52
Рисунок 17. Получение электронных документов в "1С".
53
Общее описание механизма получения выписки банка и изменение
статусов можно описать следующим алгоритмом:
1) В учетной системе "1С" формируется электронный документ
"Запрос выписки банка" (XML-файл, соответствующий XML-схеме запроса на
выписку).
2) Если используется электронная подпись на стороне "1С", то
система предложит пользователю подписать электронный документ.
3) Электронный документ "Запрос выписки банка" и электронная
подпись (если используется) помещаются в транспортный контейнер (XML-
файл), согласно настройкам обмена между Клиентом и Банком (в частности,
применение сжатия данных на прикладном уровне).
4) Далее передача данных в Банк проходит согласно протоколу
взаимодействия на транспортном уровне – "без сжатия".
5) Если отправка прошла успешно, то система "1С" изменит статус
электронному документу на "Отправлен".
6) После получения из Банка ответа по результатам обработки
транспортного контейнера система "1С" назначит электронному документу
статус "Доставлен".
7) По результатам контроля и первичной обработки электронного
документа на стороне Банка формируется электронный документ "Извещение о
состоянии электронного документа" (XML-файл), содержащий либо ошибку
обработки, либо текущий статус электронного документа, и готовится к
отправке.
8) После получения информации о статусе электронного документа
или ошибки обработки на стороне Банка система "1С" назначит
соответствующий статус электронному документу.
9) По мере готовности электронного документа "Выписка банка"
(XML-файл) и формированию электронной подписи Банка (если используется)
банковская система формирует транспортный контейнер (XML-файл), согласно
настройкам обмена между Клиентом и Банком (в частности, применение
54
сжатия данных на прикладном уровне) и ставит его в очередь на передачу в
систему "1С".
10) Далее получение данных из Банка проходит согласно протоколу
взаимодействия на транспортном уровне – "без сжатия".
11) Статус, что электронный документ "Выписка банка" получен,
система "1С" назначит после успешного разбора входящего транспортного
контейнера из Банка.
При автоматическом получении выписки используется только базовая
аутентификация. В последней версии механизма логин и пароль сохраняются в
информационной базе, поэтому данная учетная запись должна иметь строгое
ограничение на стороне сервера банка - она должна иметь только право
получения выписки.
Стоит отметить некоторые особенности автоматического получения
выписки:
- Период запроса определяется автоматически от даты последней
операции по счету по текущий день;
- Период запроса выписки не может превышать 7 дней;
- Запросы выписок при автоматическом получении не имеют
электронной подписи.
Для дальнейшего понимания реализации задачи необходимо дать
определение основным объектам, из которых состоит конфигурация базы
данных в системе "1С".
На сегодняшний день программные продукты "1С" являются неким
стандартом для работы бухгалтерского, управленческого и других видов учета
в малом и среднем бизнесе. Эти продукты закрывают если не все, то
большинство самых разных вариантов работы и потребностей бизнеса.
Огромным преимуществом системы "1С" является конфигурируемость, то есть
она настолько универсальна, что позволяет настроить себя под любые бизнес-
процессы.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)