Как отправить и получить акт о выполнении работ/оказании услуг в рекомендованном ФНС формате¶
Рассмотрим последовательность действий к функциям интеграторского интерфейса Диадока, которые требуется совершить при отправке акта о выполнении работ/оказании услуг.
- Исполнитель формирует файл титула исполнителя, подписывает и направляет заказчику.
- Заказчик получает товарную накладную, подписанную и отправленную исполнителем;
- Заказчик формирует файл титула заказчика, подписывает своей ЭП и отправляет в адрес исполнителя.
Более подробно о порядке обмена электронными актами о выполнении работ/оказании услуг между компаниями можно почитать на сайте
Формирование файла титула исполнителя для акта о выполнении работ/оказании услуг¶
Если на стороне интеграционного решения не предусмотрено функциональности для формирования XML-документов, соответствущих утвержденным форматам, то исполнитель может сгенерировать файл титула, используя команду GenerateAcceptanceCertificateXmlForSeller .
В теле запроса должны содержаться данные для изготовления титула исполнителя для акта о выполнении работ/оказании услуг в XML-формате в виде сериализованной структуры AcceptanceCertificateSellerTitleInfo .
HTTP-запрос для генерации файла титула исполнителя акта о выполнении работ/оказании услуг выглядит следующим образом:
В теле ответа содержится XML-файл титула исполнителя, построенный на основании данных из запроса.
Успешный ответ сервера выглядит так:
Файл генерируется в соответствии с XML-схемой , которой должны удовлетворять XML-акты, согласно приказу ФНС.
Имя файла титула исполнителя для акта о выполнении работ/оказании услуг возвращается в стандартном HTTP-заголовке Content-Disposition .
Отправка файла титула исполнителя для акта о выполнении работ/оказании услуг¶
После того, как у вас есть XML-файл титула исполнителя, его нужно отправить с помощью команды PostMessage .
Для этого нужно подготовить структуру MessageToPost следующим образом:
в значение атрибута FromBoxId указываем идентификатор ящика отправителя;
в значение атрибута ToBoxId указываем идентификатор ящика получателя;
для передачи XML-файла титула исполнителя акта о выполнении работ/оказании услуг нужно использовать атрибут XmlAcceptanceCertificateSellerTitles, описываемый структурой XmlDocumentAttachment:
- внутри структуры XmlDocumentAttachment находится вложенная структура SignedContent;
- сам XML-файл нужно передать в атрибут Content, подпись исполнителя в атрибут Signature.
Описание структур, используемых при отправке акта о выполнении работ/оказании услуг:
После отправки в теле ответа будет содержаться отправленное сообщение, сериализованное в протобуфер Message .
Все дальнейшие действия происходят на стороне покупателя.
Поиск акта о выполнении работ/оказании услуг¶
Сначала покупателю необходимо найти все входящие акты о выполнении работ/оказании услуг, которые требуется обработать. Для этого нужно воспользоваться методом GetDocuments :
- в значении параметра boxId указываем идентификатор ящика, в котором следует выполнить поиск входящих документов;
- в параметр filterCategory указываем статус и тип документа: XmlAcceptanceCertificate.InboundNotFinished .
Пример запроса на получение акта о выполнении работ/оказании услуг выглядит следующим образом:
В теле ответа вернется список документов в виде структуры DocumentList с вложенной структурой Document. Для каждого из этих документов запоминаем: MessageId, EntityId.
Получение акта о выполнении работ/оказании услуг¶
Теперь необходимо получить найденный акт XmlAcceptanceCertificate .
Чтобы получить акт о выполнении работ/оказании услуг нужно вызвать метод GetMessage и указать нужные GET-параметры boxId , messageId , entityId .
BoxId — это идентификатор ящика получателя, messageId — идентификатор полученного сообщения с актом о выполнении работ/оказании услуг, entityId — идентификатор акта. Их можно взять из структуры Message .
Пример структуры акта о выполнении работ/оказании услуг XmlAcceptanceCertificate в теле ответа:
Формирование файла титула заказчика для акта о выполнении работ/оказании услуг¶
Файл титула заказчика можно сформировать как на стороне интеграционного решения, так и используя команду GenerateAcceptanceCertificateXmlForBuyer . Для этого надо передать следующие параметры:
- boxId — идентификатор ящика получателя;
- sellerTitleMessageId — идентификатор сообщения, содержащего соответствующий титул исполнителя;
- sellerTitleAttachmentId — идентификатор сущности, представляющей титул исполнителя, для которого требуется изготовить титул заказчика.
Эти идентификаторы соответствуют идентификаторам из параметров boxId , messageId , entityId для метода GetMessage .
В теле запроса должны содержаться данные для изготовления титула заказчика для акта о выполнении работ/оказании услуг в XML-формате в виде сериализованной структуры AcceptanceCertificateBuyerTitleInfo .
HTTP-запрос для генерации файла титула заказчика акта о выполнении работ/оказании услуг выглядит следующим образом:
В теле ответа содержится XML-файл титула заказчика, построенный на основании XML-файла титула исполнителя и данных из запроса.
Успешный ответ сервера выглядит так:
Файл генерируется в соответствии с XML-схемой , которой должны удовлетворять XML-акты, согласно приказу ФНС.
Имя файла титула заказчика для акта о выполнении работ/оказании услуг возвращается в стандартном HTTP-заголовке Content-Disposition .
Отправка файла титула заказчика для акта о выполнении работ/оказании услуг¶
После того, как у вас есть XML-файл титула заказчика, его нужно отправить с помощью команды PostMessagePatch .
Для этого нужно подготовить структуру MessagePatchToPost следующим образом:
в значение атрибута BoxId указываем идентификатор ящика, в котором находится исходное сообщение;
в значение атрибута MessageId указываем идентификатор сообщения, к которому относится отправляемый патч;
для передачи XML-файла титула исполнителя акта о выполнении работ/оказании услуг нужно использовать атрибут XmlAcceptanceCertificateBuyerTitles, описываемый структурой ReceiptAttachment:
-
ParentEntityId — идентификатор документа, к которому относится титул заказчика; это идентификатор соответствующей сущности из родительского сообщения (поле EntityId в структуре Entity .);
- внутри структуры ReceiptAttachment находится вложенная структура SignedContent;
- сам XML-файл нужно передать в атрибут Content, подпись исполнителя в атрибут Signature.
Описание структур, используемых при отправке акта о выполнении работ/оказании услуг:
После отправки в теле ответа будет содержаться отправленное дополнение, сериализованное в протобуфер MessagePatch .
Пример кода на C# для отправки файла титула исполнителя для акта о выполнении работ/оказании услуг:
Пример кода на C# для получения файла титула исполнителя для акта о выполнении работ/оказании услуг и отправки файла титула заказчика:
СТО Инструкция формирования УПД в 1С для электронного документооборота (ЭДО) на примере сервиса Диадок.
Сервис ЭДО Диадок позволяет подписывать счет-фактуры в формате XML, в соответствии с требованиями ФНС России.
Для работы в системе необходимо иметь сертификат квалифицированной электронной подписи (КЭП) организации, которую вы представляете, а так же оплаченный тарифный пакет для данной организации: https://www.diadoc.ru/price
1. Вход в систему Диадок.
Вход в сервис Диадок осуществляется по адресу https://www.diadoc.ru/ через сертификат КЭП.
Чтобы войти в систему, выполните следующее:
1. Убедитесь, что есть соединение с Интернетом.
2. В строке браузераInternet Explorer введите адрес www.diadok.ru.

3. Далее в правом верхнем углу страницы нажмите «Войти».
5. Откроется страница входа в сервис:
• Для входа с сертификатом – «Вход в Диадок» → «По сертификату». Откроется страница выбора сертификата.

Примечание. Если настроена работа с несколькими организациями, то откроется страница выбора ящика организации. Выберите ящик организации, после чего откроется основная страница сервиса.
2. Формирование XML документа через обработку 1С.
Прежде чем сформировать XML документ в 1С, Вам необходимо узнать идентификатор участника организации и ее контрагентов в сервисе ЭДО.
Для этого необходимо:
— зайти в личный кабинет сервиса Диадок
— во «вкладке настройка и оплата» перейти в «реквизиты организации»

— найти идентификатор участника ЭДО

Скопировать данный идентификатор и передать в ООО «Экспертиза»
Что бы узнать идентификаторы контрагентов организации необходимо перейти во вкладку «Контрагенты» > «Ваши контрагенты».

Выбрать организацию и нажать «ID»

Данный идентификатор так же необходимо передать в ООО «Экспертиза».
Обработка «Сформировать XML документов»




3. Подпись и отправка
Чтобы подписать и отправить XML УПД, перейдите в личный кабинет Диадок:
— Нажмите на кнопку «Новый документ».

— Загрузите один или несколько документов с помощью ссылки «Загрузить с компьютера».
После загрузки в окне отобразится название файла и его размер.
Если нужно удалить загруженный документ, нажмите на крестик справа.

— После добавления всех необходимых документов нажмите на кнопку «Подписать и отправить».
Кнопка «Подписать и отправить» недоступна, если у пользователя несколько сертификатов и ни один не выбран для подписания документов. Выберите нужный с помощью ссылки «выбрать».
Примечание. В окне выбора сертификата установлен флажок «Запомнить мой выбор в текущей организации». Это означает, что документы будут подписываться выбранным сертификатом по умолчанию. При необходимости флажок возможно снять.

Сменить сертификат на другой возможно с помощью ссылки «выбрать другой» при подписании документов либо в персональных настройках.
Пакет будет подписан ЭП отправителя, отправлен и перемещен в папку «Исходящие» или «Внутренние».
Как передать документы из 1С Фреш через Диадок в формате xml
Добрый день! Как передать документы (акт, счет) из 1С Фреш через Диадок в формате xml?
Обсуждение (7)
Здравствуйте Екатерина. Не совсем понял — Вы используете внешнюю обработку Диадока ? Или используете вэб-версию Контура? Документ в формате XML нужен для передачи стороннему оператору ЭДО/контрагенту по почте? Будет намного быстрее если опишите полную потребность, которую хотите реализовать.
Здравствуйте, Александр! Мне нужно выгрузить из 1С акт и счет в xml формате и загрузить его в Контур.Диадок без использования модуля, обработок и т.д., т.к. пользуемся ЭДО редко. В принципе, я нашла выход, набрала документы вручную в Диадоке, но хотелось бы как-то автоматизировать этот процесс по возможности
Екатерина, по действиям:
1) В 1С БП заходите в документ отгрузки и сохраняете электронную форму документа через кнопку Еще —> ЭДО —> выгрузить в файл. Сохраняете где-нибудь в папке файл (вот так будет примерно называться -ON_NSCHFDOPPR_235001964481_612700098157_20210723_43ca1acb-0646-418d-a463-cd4bdc0155d3.xml)
2) Заходите в Контур.Диадок и создаете новый документ. Выбираете вариант — Загрузите с компьютера (пример во вложении). Выбираете тот файл, что сохранили на шаге 1. Далее в папке Исходящие в контуре должен появиться документ к отправке. Проставляете необходимые реквизиты, проверяете, подписываете, отправляете.
Александр, спасибо! Я так делала, у меня сохраняется несколько файлов в zip-архиве. Я могу вытащить из архива файл с длинным названием (т.к., как правило, это нужный файл), но это уже все-таки не совсем автоматизация. А как у Вас получилось сохранить только 1 файл? Может, что-то в настройках мне нужно изменить?
Верно Екатерина, я согласен что не совсем автоматизация. В приводимом примере я файл распаковывал и подгружал. Как это дело автоматизировать — только доработкой, чтобы в 1С Бухгалтерии у Вас была возможность комплексно выгрузить несколько документов УПД (с длинным наименованием) в папку на компьютере, а затем одним заходом (пакетно) подгрузить все в Контур. Комплексная загрузка там работает — проверял. Просто выделить сразу все выгруженные из 1С файлы и нажать кнопку «загрузить» — как в шаге 2.
Заметки АйТи
Для выгрузки счет-фактуры и др.документов из реализации заходим в базу 1С 8.3 бухгалтерия и открываем обработку(компонента) » Обработка_ЭДО.epf — скачать :
Данная обработка проверялась и работает на БП 3.0. На остальных конфигурациях НЕ проверялась.

После открытия обработки в поле «По документу» нажимаем на три точки в конце поля и выбираем «Реализация (акт, накладная):



Если данный контрагент выгружается в первый раз, то необходимо будет подставить идентификаторы ЭДО:
Наш идентификатор в системе Контур Диадок –
2BM-773421ХХХХ-ХХХХХХХХ-ХХХХХХХХХХХХ
Посмотреть его можно в Контур-Диадок:


Слева выбираем «Контрагенты» – «Ваши контрагенты» – и нажимаем на имя контрагента (напр. ООО «ЛУКОЙЛ-ХХХ»)



Заходим под учетной записью Сотрудника и выбираем «Документы» – «Исходящие» – «Новый документ»
Выбираем «Загрузить с компьютера» и выбираем нужный нам документ:

Контур распознал наш документ:

Если в поле «Наименование» появляются лишние цифры, то нажимаем слева сверху «Редактировать»:



Если мы хотим отправить документы пакетом (вместе со счетом и актом), то ставим галку «Связать документы в пакет» и нажимаем «Загрузить ещё» и добавляем нужные документы

Когда все документы добавлены и указаны их типы в соответствии с инструкцией Контур Диадок – https://youtu.be/0Mh_Kh4a1bQ, можно нажимать «Подписать и отправить» внизу формы.

Доверенность
с 1 сентября 2023 года сотрудники должны подписывать документы от лица компании с помощью МЧД и КЭП физлица. В сервисе есть все для легкой работы с выпуском доверенностей: готовые формы, удобная система согласования и быстрая подпись электронных документов.
Кому подходит
- Сотрудникам и уполномоченным лицам организаций
- Обслуживающим бухгалтерам
Возможности
- Выдача МЧД за 5 минут
- Управление всеми доверенностями в организации: создание, отзыв и актуализация
- Минимизация ошибок при заполнении данных
- Назначение ответственных за работу с МЧД сотрудников
45 комментариев:
А как скачать обработку?

Там в начале есть ссылка, обработка платная стоит 200р со словом СКАЧАТЬ, оплату необходимо зарегистрировать в форме

вчера ссылки не было 🙂
благодарю!
в УНФ будет работать?
В УНФ не проверял, т.к. такой надобности не было. Но скорее всего будет, чем нет. Если у вас получится проверить, просьба оставить комментарий здесь. Спасибо.

Решили идти в ногу с прогрессом и приобщиться таки к ЭДО. У многих контрагентов Диадок и подключились к нему за 4000 р. в год. В процессе внедрения оказалось, что часть контрагентов хочет получать документы именно в формате XML, но XML, который выдаёт 1С для Диадока не подходит. Есть дополнительный модуль интеграции, который стоит уже 16000 р. в год. Есть там некоторые плюшки, конечно, но при наших объёмах это не критично. Стал искать альтернативное решение — обработку и нашёл здесь! Заказал, оплатил, получил. На этапе подключения возникла проблема с правами пользователя 1С, но всё решаемо — мануал в сети есть. Дальше — всё по приведённой выше инструкции.
Автору — респект и уважуха!