1C + ЭДО Мегафон

Публикация № 437112 21.12.15

Интеграция - ЭДО и ОФД

ЭДО

Тестируем модуль обмена 1С с ЭДО Мегафон (модуль прилагается пользователям ресурса ЭДО Мегафон бесплатно).

Пару недель назад получил приглашение от партнера ПАО Мегафон для участия в электронном документообороте, и хотел бы поделиться, что нового для себя открыл в этой системе. Начнем с регистрации, переходим на ссылку ресурса https://doc.megafon.ru/Account/Login вносим свой почтовый адрес и далее реквизиты компании, все достаточно просто и понятно, пару подтверждений и мы уже в личном кабинете. Для нас уже подготовлено заявление на присоединение к СЭД, и первым делом начнем с регистрации электронной подписи, для этого мы можем использовать уже имеющийся для сдачи отчетности ключ и сертификат. Как ни странно, на всю эту операцию понадобилось минуты две, и пока мы ждем подтверждение по СЭД, посмотрим раздел "Документы". В нем мы можем создать по шаблону формализованные документы, делаем сразу документ "Акт на работы"  и сохраним его, подписывать мы пока не можем. Второй вариант: сканируем наш акт и крепим через загрузку произвольных форм, третий вариант: можем загружать «xml» версию акта, но ее у нас пока готовой нет. Пока все это проделывали, уже пришло подтверждение заявления, и теперь можем подписать документы. Пробуем подписать, но «Chrome» ругается на поддержу NАPI, поэтому его закрываем и переходим в имеющийся встроенный «Explorer», в нем все спокойно подписываем и жмем "Получить/Отправить", документооборот с нашей стороны готов.  На тестирование ресурса дается 14 дней, и предлагает приобрести тарифы, которые на мой взгляд на текущий момент самые гибкие, меня устроит тариф 100 документов на год стоимостью 1000 рублей, его и выбираем. После окончания тестового периода автоматически переходим на тариф "0", который может только принимать входящие документы, т.к. они бесплатны.

Смотрим дальше интерфейс ресурса, в нем видим раздел "Модуль 1С", в котором находится сам модуль и инструкция к нему. Что хотим получить, естественно обмениваться с ресурсом документами из учетной системы в режиме клиента, для этого нам и понадобится настроить данную обработку. Пробуем открыть обработку под 8.3 платформой управляемый режим - ошибка, переходим в обычный режим толстого клиента и в нем видим окно входа, сразу предлагающее логин и пароль нашей регистрации. Проходим регистрацию и получаем интерфейс, по функционалу схожий с веб-ресурсом, т.е. можем уже документы отправлять прямо из 1С. Но всего этого будет мало для компании с оборотом документов более 500 листов в день, рассылать такое количество клиентам будет трудозатратно. Открываем конфигуратор и начинаем подготовку к разработке: 1. Обменника в управляемом режиме; 2. Настройке плана обмена для регистрации ЭДО, с возможностью автоматической рассылки проведенных документов.

Пока наши специалисты готовят задание, посмотрим, что же предлагает готового обработка. Модуль формы и модуль объекта говорит о том, что управляемый режим все же не предусмотрен. Поддерживаемые для интеграции конфигурации 1С:  некая "Универсальная интеграция", "Интеграция бухгалтерия", "УПП13", "КА", "УТ102", "УТ103" и зачем-то выделена "Интеграция АльфаАвто41". Просматривая список всех модулей, имя самой обработки "UnicloudBusiness365", делаем вывод что за основу взят проект компании "ЮниКлауд Лабс" - эта компания создана в 2011 году, входит в группу компаний АйТи, является резидентом «Сколково» с сентября 2011 года. В январе 2012 года получила грант от фонда «Сколково» на развитие. Компания имеет офисы в Москве и УфеСистема «Unicloud Business 365» была анонсирована в середине 2012 года. Она представляет собой облачный сервис для совместной работы сотрудников небольшой компании, включающий управление поручениями, учет и ведение клиентов, проектную деятельность и работу с первичными документами. Система интегрирована с операторами электронного документооборота – «Калуга Астрал», «СКБ Контур», «Такском». Есть хороший видеоматериал,демонстрирующий функционал "UnicloudBusiness365" системы https://www.youtube.com/watch?v=Tky1HgCL-6g.

Продолжим дальше, теперь у нас есть информация, что основой ресурса является функционал интеграции с нашими почтовыми ящиками, все это хорошо, но интересует, как же происходит обмен с технической точки зрения. Модуль JSON наводит на мысль, что использован данный формат, но фактов пока нет, предполагалось, что все же в «xml» формате. Смотрим найденную команду выгрузки, она же оказалась и командой загрузки:

функция ВызовАпиБизнес365(АдресРесурса, Метод, ТелоЗапроса = неопределено, CАвторизацией = Истина, СОкномОшибки = истина) экспорт
	ВывестиОкноАвторизации = ложь;
	ВывестиОкноОшибки = ложь;
	Попытка
		НастройкиАпи = НастройкиАпиБизнес365();
		Соединение = Новый HTTPСоединение(НастройкиАпи.host,НастройкиАпи.port , , , ); 
		Заголовки = Новый Соответствие();
		Заголовки.Вставить("host", НастройкиАпи.hostport);
		Заголовки.Вставить("Content-Type", "application/json");
		АдресРесурсаПолный = НастройкиАпи.apiversion + АдресРесурса;
		Если CАвторизацией = Истина тогда
			дата = ТекущаяДата();
			данные = Строка(дата) + АдресРесурсаПолный;
			ключ = Нрег(ОдинСАдаптер_НастройкиТекущегоПользователя_ПолучитьНастройку("Бизнес365КлючПользователя"));
			hash = ПолучитьМодуль("Модуль_SHA1").ПолучитьSHA(ключ, данные);
			hash64 = ПолучитьМодуль("Модуль_Base64").КодироватьМассивБайтовВСтроку6Бит(hash);
			логинПользователя = ОдинСАдаптер_НастройкиТекущегоПользователя_ПолучитьНастройку("Бизнес365ЛогинПользователя");
			Заголовки.Вставить("X-Authorization", ?(ЗначениеЗаполнено(логинПользователя),логинПользователя,"")  + ":" + hash64 + ":auth2");
			Заголовки.Вставить("X-Date", дата);
		КонецЕсли;
		Если Метод = "POST" тогда
			Запрос = Новый HTTPЗапрос(АдресРесурсаПолный, Заголовки);
			Если ЗначениеЗаполнено(ТелоЗапроса)=Истина тогда
				ТелоJson = ПолучитьМодуль("Модуль_JSON").ЗаписатьJSON(ТелоЗапроса, ИСТИНА);
				Запрос.УстановитьТелоИзСтроки(ТелоJson);
			КонецЕсли;
			Ответ = Соединение.ОтправитьДляОбработки(Запрос); 
		КонецЕсли;
		Если Метод = "GET" тогда
			Если ЗначениеЗаполнено(ТелоЗапроса)=Истина тогда
				Первый = Истина;
				Для Каждого Элемент Из ТелоЗапроса Цикл
					Если Первый Тогда
						АдресРесурсаПолный = АдресРесурсаПолный + "?";
						Первый = Ложь;
					Иначе
						АдресРесурсаПолный = АдресРесурсаПолный + "&";
					КонецЕсли;
					АдресРесурсаПолный = АдресРесурсаПолный + Элемент.Ключ;
					АдресРесурсаПолный = АдресРесурсаПолный + "=";
					АдресРесурсаПолный = АдресРесурсаПолный + Элемент.Значение;
				КонецЦикла;
			КонецЕсли;
            Запрос = Новый HTTPЗапрос(АдресРесурсаПолный, Заголовки);
			Ответ = Соединение.Получить(Запрос); 
		КонецЕсли;
		РезультатJson = Ответ.ПолучитьТелоКакСтроку();
		Результат = ПолучитьМодуль("Модуль_JSON").ПрочитатьJSON(РезультатJson, ИСТИНА);
		Data = Результат["Data"];
		Если Ответ.КодСостояния = 401 Тогда
			ВывестиОкноАвторизации = истина;
		ИначеЕсли Результат["Status"]["Code"] <> "Ok" Тогда
			ТекстИсключения = Результат["Status"]["Message"];
			Если CАвторизацией И СОкномОшибки Тогда
				ВывестиОкноОшибки = истина;
			КонецЕсли;
		КонецЕсли;
	Исключение
		ВызватьИсключение ("Ошибка при запросе к " + НастройкиИмяСистемы());
	КонецПопытки;
	Если ВывестиОкноАвторизации Тогда
		РешениеОшибкиАвторизации();
		Возврат ВызовАпиБизнес365(АдресРесурса, Метод, ТелоЗапроса, CАвторизацией)
	КонецЕсли;
	Если ВывестиОкноОшибки Тогда
		РешениеОшибки(ТекстИсключения);
		Возврат ВызовАпиБизнес365(АдресРесурса, Метод, ТелоЗапроса, CАвторизацией)
	КонецЕсли;
	Если ЗначениеЗаполнено(ТекстИсключения) Тогда
	    ВызватьИсключение (ТекстИсключения);
	КонецЕсли;
    Возврат Data;
конецФункции

...вот и нашлось "ТелоJSON"- значит, обмен с узлом в формате JSON, и недавно подготовленная публикация //infostart.ru/public/436405/ на данную тему пригодится, тем более, что планируем интегрироваться не только с 1С 8.3 платформой, но и с базами на различных СУБД. Код модуля достаточно "прозрачный", на подготовку задания для ускорения обмена, думаю, уйдет не так много времени, и результат нас устроит.

Продолжение следует...

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. romanco 13 21.12.15 22:37 Сейчас в теме
Может быть что-то поменялось за последние полгода, но по ЭДО с клиентами они вроде бы не работают.
ПАО Мегафон ваш клиент или поставщик услуг?
2. JetBrain 74 22.12.15 05:59 Сейчас в теме
(1) romanco, ...и клиент и поставщик. ЭДО не только для внутренней работы с Мегафоном, список контрагентов любой можно создать. Удобство системы к примеру в том, что даже если у вашей компании почта не корпоративная, то контролировать обмен документами будет очень удобно и просто.
3. worker1c 114 22.12.15 09:47 Сейчас в теме
Через чей сервис производится обмен данными,см НастройкиАпиБизнес365(), Мегафон или оператора ЭДО?
Возможно ли обмениваться счет-фактурами?
Что такое интеграция с почтовыми ящиками?
4. JetBrain 74 22.12.15 14:19 Сейчас в теме
(3) worker1c, узлы обмена видимо меги:
функция НастройкиАпиБизнес365() экспорт
	система = НастройкиСистемаБизнес365();
	Если система = "system.megafon" Тогда
		Возврат Новый Структура(
				"host, port, hostport, apiversion", 
				"system.megafon.ru", 8081, "system.megafon.ru:8081", "/api/1.0");
	ИначеЕсли система = "system.system" Тогда
		Возврат Новый Структура(
				"host, port, hostport, apiversion", 
				"api.system.ru", , "api.system.ru", "/api/1.0");
	ИначеЕсли система = "production" Тогда
		Возврат Новый Структура(
				"host, port, hostport, apiversion",
				"doc.megafon.ru", "8081", "doc.megafon.ru:8088", "/api/1.0");
	Иначе
		Возврат Новый Структура(
				"host, port, hostport, apiversion", 
				"developer.business365.ru", "8088", "developer.business365.ru:8088", "/api/1.0");
    КонецЕсли;
конецФункции
Показать

Документы делятся на два типа, формализованных и неформализованных (по ним лимит почти в 10 раз больше). Счет-фактура да есть.
Интеграцию лучше посмотреть видео про Бизнес365 в паблике, для самого сервиса ЭДО нужен только адрес почты для регистрации и входа.
5. пользователь 02.04.20 17:33
Сообщение было скрыто модератором.
...
Оставьте свое сообщение

См. также

Подключение функционала БСП "Присоединенные файлы" к функционалу Диадок

ЭДО и ОФД Платформа 1С v8.3 Бесплатно (free)

Альтернативный вариант хранения файлов документов и подписей ЭДО Диадок на сетевом ресурсе.

23.12.2022    582    user1490177    0    

4

Переход на КЭДО: как настроить и внедрить сервис «1С:Кабинет сотрудника»

Кадровый учет ЭДО и ОФД Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

Сервис «1С:Кабинет сотрудника» позволяет перейти на КЭДО быстро и с небольшими трудозатратами. После внедрения 1С:КС просто работает, требуя минимальной сервисной поддержки. Рассказываем, как организовать процесс с самого начала.

18.08.2022    7241    Infostart    4    

31

Не удалось сделать проверку отзыва сертификата в 1С (при маркировке, директ-банк, 1С-Отчетность, ЭДО)

Адаптация типовых решений ЭДО и ОФД Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Если возникает ошибка при подписании ЭЦП документов в 1С, при проверке и подписании маркировки и документов в ЧЗ, при подключении к директ-банку и всем, что связано с электронной подписью.

18.03.2022    5854    ClickUp    10    

19

Доработка УПП 1.3 для выгрузки без ЭДО файлов всех сотрудников из документа "Сведения о застрахованных лицах, ФСС" для СБИС

Зарплата Файловый обмен (TXT, XML, DBF), FTP ЭДО и ОФД Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет ФОМС, ЕФС Бесплатно (free)

ФСС потребовал предоставить полные списки работников при переходе на безбумажные больничные. Если сотрудников в УПП довольно много, становится проблематично каждого сотрудника выгружать в ФСС вручную. Можно даже сказать - довольно кропотливо. Вариант работы с ЭДО не требует жмакать кнопку для каждого сотрудника, но это платно (для второй и последующих организаций). Оказывается к ЭДО можно пока не подключаться. Предлагаю вариант автоматической выгрузки.

22.02.2022    3027    ksnik    12    

8

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Исправление ошибок 1С-ЭДО

Корректировка данных ЭДО и ОФД Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бесплатно (free)

Исправление ошибок 1С-ЭДО: "internalID не соответствует формату" и "документ не соответствует формату".

09.08.2021    9872    Power_0N    3    

6

Как вносить изменения в новое ЭДО от 1С в БП 3? Июнь 2021, БП 3.0.93.20

Документооборот и делопроизводство (СЭД) Файловый обмен (TXT, XML, DBF), FTP ЭДО и ОФД Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Бесплатно (free)

Обновились на 3.0.93.20, и все мои расширения под ЭДО перестали работать. Разберем, где вообще искать код, который выводит данные электронного документа в XML, где вмешиваться в ход этого вывода?

03.06.2021    11192    fixin    34    

19

API ОФД-Я разбор документации с примерами

WEB-интеграция ЭДО и ОФД Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Примеры запросов 1С для получения данных с ОФД-Ярус через API.

20.04.2021    2805    www76    0    

2

Маркировка табака. Формирование тега 1162 "код товара" для передачи в ККТ и ОФД

Розничная торговля Адаптация типовых решений ЭДО и ОФД Платформа 1С v8.3 Конфигурации 1cv8 Розничная и сетевая торговля (FMCG) Россия Бесплатно (free)

С 01.07.2019 стартует новый этап маркировки сигарет. Теперь в кассе обязательно надо будет считывать марку с пачек табака, если она там есть. Считывать и передавать в ОФД через тег 1162 в онлайн-кассе. А как сформировать данные этого тега? Не все так просто...

27.06.2019    19329    kirlog    62    

11

Распознавание и загрузка документов в 1С Промо

Универсальная программа-обработка для распознавания любых сканов или фото первичных документов в 1С (счета-фактуры, УПД, ТТН, акты и тд). Точность распознания до 98%.

от 11 рублей

Переход на новые форматы ЭДО после 01.07.2017. (использование УПД)

Инструкции пользователю Документооборот и делопроизводство (СЭД) ЭДО и ОФД Платформа 1С v8.3 Конфигурации 1cv8 Россия Бухгалтерский учет Бесплатно (free)

В статье я постарался кратко расписать, какие варианты обмена ЭДО с контрагентами доступны в 1С (любой конфигурации 1С) по новым форматам. Скрины новых форматов в списке картинок к статье. Добавил исправление поведения УПД при формировании ЭД.

25.07.2017    21663    igo1    12    

16

Обработка в JSON формате + бонус "Суперсила"

Универсальные обработки Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Пример обработки для чтения/Запись формата JSON, с источником/приемником com-массивом.

1 стартмани

18.12.2015    44299    37    JetBrain    19    

36