Интеграция с API Почты России. Регистрация отправлений и обновление статусов отправлений.

13.10.23

Интеграция - WEB-интеграция

Расширение для взаимодействии с сервером Почты России по api решает следующие задачи: регистрация отправлений на сервере Почты России, получение статуса отправления с сервера Почты России, хранение зарегистрированных отправлений в справочнике, обновление статусов отправлений по регламентному заданию.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Интеграция с API Почты России. Отправка и получение данных.:
.cfe 66,93Kb
41 2 150 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

К написанию данной статьи сподвигло небольшое количество актуальной информации (2022-2023 годы) о взаимодействии с сервером Почты России по api. Найденная мной информация в основном касается отслеживания отправлений, причем не в пакетном режиме, а для каждого в отдельности, мне же по работе пришла задача на регистрацию отправлений на сервере Почты России и получение статусов по трек-номерам в пакетном режиме.

Что требуется — создавать отправления на сервере Почты России, получать печатные формы (с трек-номером). Для каждого успешного отправления создавать элемент справочника в котором будут храниться печатные формы (ярлыки), трек-номер, лог создания отправления и его статус. Так же требуется проверять статус по трек-номеру отправления.

Что нам понадобится: прежде всего это договор с Почтой России, т. к. для регистрации отправлений какой либо тестовой среды не существует. Для отправки существует отдельный сервис https://otpravka.pochta.ru. После прохождения всего процесса регистрации (описывать его не стану) вам станет доступен личный кабинет (далее ЛК) и возможность изучить спецификацию https://otpravka.pochta.ru/specification#/main, вам выдадут логин, пароль и токен. В отличии от спецификации для отслеживания отправлений, примеры для 1с отсутствуют, в основном все примеры на питоне.

Итак:

API Онлайн-сервиса «Отправка» является самым прямым способом взаимодействия сторонних приложений с Онлайн-сервисом «Отправка» посредством REST запросов.
Запросы и ответы сервиса используют JSON текстовый формат.

Подключение ваших приложений к API Онлайн-сервису «Отправка» позволит интегрировать в ваши бизнес-процессы:

  • подготовку печатных ярлыков для отправлений;

  • подготовку печатных документов с расчетом стоимости;

  • подготовку электронных документов с автоматической отсылкой в почтовое отделение;

  • подключение дополнительных сервисов для нормализации адресов, телефонов, наименований (фамилия, имя, отчество) получателей.

Необходимые условия

Для интеграции с API Онлайн-сервиса «Отправка» необходимо располагать:

  • токеном авторизации приложения;

  • ключом авторизации пользователя.

 

Для отслеживания отправлений требования аналогичны.

 

Предлагаю вашему вниманию расширение для работы с api Почты России, которое решает следующие задачи:

 

 

 

1. Регистрация отправлений на сервере Почты России https://otpravka.pochta.ru,

2. Получение статуса отправления с сервера Почты России https://tracking.pochta.ru,

3. Хранение зарегистрированных отправлений в справочнике.

4. Обновление статусов отправлений по регламентному заданию.

Расширение протестировано на конфигурации Бухгалтерия предприятия, редакция 3 (3.0.142.67), на платформе 1С:Предприятие 8.3 (8.3.23.1865), с выключенным «Безопасным режимом» и с выключенным режимом «Защита от опасных действий». Расширение работает на платформах 8.3.20 и 8.3.21, думаю должна работать и на других конфигурациях в которых есть БСП т. к. заимствованный объект только один (Общий модуль «ДополнительныеОтчетыИОбработки»), необходим он для реализации работы регламентного задания. Процесс работы регламентного задания сохраняется в файл, во временной папке 1с.

Основной код находится в общем модуле ПР_Сервер, в расширении присутствуют две обработки для настройки доступа к API и созданию тестовых отправлений. Для работы расширения нужно использовать 2 функции, ПР_Сервер.ОтправитьПР() и ПР_Сервер.ОбновитьСтатусОтправленияПР(),

 

  1. ОтправитьПР() - Регистрирует отправления на сервере Почты России, при успешной регистрации создает элементы в справочнике «ОтправленияПочтойРоссии». Принцип работы следующий:
    1. Проверка входящих параметров.
    2. Объединение адресов в один массив (для пакетного запроса) из входящего в функцию массива отправлений, элемент коллекции — это соответствие (адрес отправителя, номер телефона и т. п.).
    3. Нормализация адресов.
    4. Валидация адресов.
    5. Объединение телефонных номером и ФИО в массивы, только для валидированных адресов (для пакетных запросов) из входящего в функцию массива отправлений, элемент коллекции — это соответствие (адрес отправителя, номер телефона и т. п.).
    6. Нормализация телефонных номеров и ФИО.
    7. Проверка результатов нормализации ФИО с отбором отправлений, только успешно прошедших нормализацию.
    8. Создание заказов и регистрация отправлений на сервере Почты России.
    9. Объединение заказов в партии.
    10. Получение ярлыков отправлений, сохранение ярлыков у соответствующих элементов справочника в базе, сохранение лога для каждого отправления, обновление статуса отправления и сохранение результата.
    11. Возврат лога всего процесса.
  2. ОбновитьСтатусОтправленияПР() - Получает статусы отправлений по переданным трек-номерам, создает элементы в справочнике «ОтправленияПочтойРоссии». Принцип работы следующий:
    1. Проверка входящих параметров, предварительная обработка данных.
    2. Подготовка данных к отправке в пакетном режиме с использованием WS-ссылки (для пакетного режима работы в таком варианте взаимодействия в спецификации к api для 1С описания нету).
    3. Обработка ответа по «тикету», в случае «неготовности» ответа создается задача, которая будет обработана регламентным заданием позже.
    4. При успешном получении информации с сервера Почты России, обновляется статус отправлений у соответствующих элементов справочника в базе, если в функцию передан параметр «ТрекНомера», в коллекции элементов которого есть свойство «ДокРТУ», тогда к данному документу будет добавлен трек-номер как дополнительное сведение.

В разработке мне помогли следующие статьи: 

Конфигурирование новых регламентных заданий с помощью расширения

Создание тестового отправления через API Почта России

Вступайте в нашу телеграмм-группу Инфостарт

Расширение Почта России Интеграция Регистрация отправлений

См. также

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    5898    4    3    

7

WEB-интеграция Программист Бизнес-аналитик 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

14400 руб.

20.12.2024    3274    17    2    

18

WEB-интеграция Анализ продаж Системный администратор Программист Пользователь 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Модуль "Подсистема интеграции AmoCRM с 1С" позволяет обеспечить единое информационное пространство, в котором пользователи могут эффективно управлять клиентской базой, следить за статусами сделок и поддерживать актуальность данных как в AmoCRM, так и в 1С.

60000 руб.

07.05.2019    38478    73    45    

31

WEB-интеграция Программист 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разработана для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

12000 руб.

02.02.2021    20171    58    52    

36

WEB-интеграция 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

В расширении реализован механизм интеграции между системой поставщика и Личным кабинетом СДТ. Реализован обмен заказами и реализациями (накладными), предусмотрено отслеживание статусов документов. Расширение предназначено для 1С:УТ 11.4.

35856 руб.

27.11.2024    1758    1    0    

1

Обмен с ГосИС WEB-интеграция Бухгалтер Пользователь 1С v8.3 Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Обработка является альтернативой механизму, разработанному фирмой 1С и заполняющему реквизиты контрагента по ИНН или наименованию. Не требуется действующей подписки ИТС. Вызывается как внешняя дополнительная обработка, т.е. используется, непосредственно, из карточки контрагента. Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС (egrul.nalog.ru) для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0, УТ 10.3, УТ 11.x, КА 1.1, КА 2.x, УПП 1.x, ERP 2.x, УНФ 1.5, УНФ 1.6, УНФ 3.0, ДО 2.1

5196 руб.

28.04.2016    97236    109    218    

359
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. IP43 303 22.08.24 12:48 Сейчас в теме
Скачал за 2SM загружаю в базу Бухгалтерия предприятия, редакция 3.0 (3.0.154.17) Ошибка при выполнении файловой операции 'C:\1C-ALL\PUBID_1954952-ПочтаРоссии_1_1.cfe'
по причине:
Неверный формат хранилища данных 'file://C:/1C-ALL/PUBID_1954952-ПочтаРоссии_1_1.cfe'
2. Blazeriz 21.10.24 16:27 Сейчас в теме
Бухгалтерия предприятия, редакция 3.0 (3.0.161.22)
1С:Предприятие 8.3 (8.3.25.1394)

Не работает даже Тестирование:

Метод объекта не обнаружен (ВГраница)
{ПочтаРоссии ОбщийМодуль.ПР_Сервер.Модуль(998)}:Итр = МассивСоответствийКПроверке.ВГраница();
{ПочтаРоссии ОбщийМодуль.ПР_Сервер.Модуль(1276)}:АдресОтправителя = ВалидацияНормализацииАдресаПР(АдресОтправителя.ОтветJSON);
{ПочтаРоссии Обработка.ТестированиеПР.Форма.Форма.Форма(113)}:РезультатВыполнения = ПР_Сервер.ОтправитьПР(Организация, НастройкиПР, Отправления);
{ПочтаРоссии Обработка.ТестированиеПР.Форма.Форма.Форма(120)}:ТестироватьПРНаСервере();

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
3. ILNIK 37 05.08.25 12:17 Сейчас в теме
Очень помогло расширение.
Скопировал объекты в свою самописную конфигурацию
Все работает, допилил под свою специфику заполнение отправлений.
Отправления создаются.
Автору спасибо, сэкономил кучу времени
Для отправки сообщения требуется регистрация/авторизация