Автоматизация · 13 мин
Как сделать автоматическую рассылку счетов в 1С
Как настроить автоматическую рассылку счетов покупателям из 1С: регламентные задания, учетная запись почты, шаблоны писем, проверка результата и типичные ошибки.
Ручная отправка счетов покупателям отнимает у менеджеров заметную часть дня: документ создаётся, распечатывается в PDF, прикрепляется к письму, отправляется — и так десятки раз. В типовых конфигурациях 1С (Управление торговлей 11, Комплексная автоматизация, ERP, Бухгалтерия предприятия) этот процесс можно автоматизировать: система сама сформирует счёт, вложит печатную форму и отправит письмо по расписанию или по событию.
Существует два основных подхода. Первый — штатные механизмы: учетная запись электронной почты в 1С, рассылки отчетов, бизнес-процессы и дополнительные обработки из «Дополнительных отчетов и обработок». Второй — собственная доработка через регламентное задание, которое по расписанию выбирает неотправленные счета и рассылает их. Выбор зависит от конфигурации, объёма документов и требований к тексту письма.
Ниже разобраны оба варианта с конкретными шагами настройки, проверкой результата и разбором ошибок, из-за которых рассылка молча не работает.
Что понадобится перед настройкой
Прежде чем настраивать рассылку, убедитесь, что выполнены базовые условия. Без них любой вариант автоматизации упирается в ошибки доступа или в отсутствие нужных подсистем в конфигурации.
Во-первых, нужна корпоративная почта, с которой будут уходить письма. Для неё в 1С создаётся учетная запись электронной почты с параметрами SMTP и (опционально) POP3/IMAP. Уточните у почтового провайдера адрес SMTP-сервера, порт и требования к шифрованию (SSL/TLS) — для многих сервисов также требуется отдельный «пароль приложения» вместо основного пароля ящика.
Во-вторых, проверьте права: пользователю, под которым выполняется рассылка (или фоновое задание), нужны права на чтение документов «Счет на оплату покупателю», на использование учетной записи почты и на выполнение регламентных заданий. В файловой базе фоновые задания выполняются под сеансом запустившего их пользователя, в клиент-серверной — под пользователем, указанным в регламентном задании.
Настройка учетной записи электронной почты
Это фундамент любой рассылки. В типовых конфигурациях перейдите в раздел «Администрирование» → «Органайзер» (или «Настройка работы с почтой») → «Учетные записи электронной почты» и создайте новую запись. Укажите адрес отправителя, имя (оно будет отображаться у получателя), сервер исходящей почты, порт, тип шифрования, логин и пароль.
После заполнения обязательно нажмите «Проверить настройки». 1С попытается подключиться к серверу и отправить тестовое письмо. Если проверка не проходит, типичные причины: неверный порт (часто 465 для SSL и 587 для STARTTLS), блокировка «небезопасных приложений» на стороне почтового сервиса, антивирус или брандмауэр, перехватывающий SMTP-трафик.
Отметьте флажок «Использовать для отправки» — без него учетная запись существует, но письма через неё не уходят. Если планируется получать ответы клиентов в 1С, дополнительно настройте параметры входящей почты.
Вариант 1: рассылка через штатные механизмы и дополнительные обработки
В конфигурациях на Библиотеке стандартных подсистем есть подсистема «Рассылка отчетов» («Администрирование» → «Печатные формы, отчеты и обработки» → «Рассылки отчетов»). Она рассчитана в первую очередь на отчеты, но с её помощью можно отправлять и печатные формы документов — если конфигурация это поддерживает либо если подключена внешняя обработка рассылки.
Более гибкий штатный путь — подсистема «Дополнительные отчеты и обработки». Она позволяет подключить внешнюю обработку вида «Заполнение объекта» или «Дополнительная обработка» и назначить её выполнение по расписанию. Для рассылки счетов обычно используют обработку, которая формирует печатную форму счета в PDF и отправляет письмо по шаблону. Готовые обработки такого типа публикуются в открытых каталогах решений для 1С; перед использованием проверьте их совместимость с вашей версией конфигурации.
Настройка шаблона письма
Текст письма должен формироваться автоматически с подстановкой данных документа: номера и даты счета, наименования контрагента, суммы. В типовых конфигурациях для этого служат «Шаблоны сообщений» («Администрирование» → «Общие настройки» или раздел маркетинга). В шаблоне используются параметры вида [Номер], [Дата], [СуммаДокумента] — конкретный список доступных параметров зависит от типа объекта.
Проверьте шаблон на тестовом счете: отправьте письмо на свой адрес и убедитесь, что все параметры подставились, вложение открывается и содержит корректную печатную форму с актуальными реквизитами и печатью (если используется факсимиле).
- 1Создайте и проверьте учетную запись электронной почты
- 2Включите подсистему «Дополнительные отчеты и обработки» в настройках
- 3Подключите обработку рассылки счетов и настройте её параметры (шаблон письма, отбор документов)
- 4Задайте расписание выполнения обработки
- 5Отправьте тестовое письмо на свой адрес и проверьте вложение
- 6Проверьте журнал регистрации на предмет ошибок после первого запуска по расписанию
Вариант 2: регламентное задание с собственной обработкой
Когда штатных средств не хватает — например, нужно рассылать счета только при определенном статусе заказа, разными шаблонами для разных договоров или с копией менеджеру, — пишут собственное регламентное задание. Это работа для программиста 1С, но понимание логики полезно и постановщику задачи.
Общая схема такая: регламентное задание запускается по расписанию (например, каждые 30 минут), выбирает счета, подлежащие отправке (по признаку «не отправлен» — обычно добавляют дополнительный реквизит или регистр сведений для отслеживания факта отправки), для каждого формирует табличный документ печатной формы, сохраняет его во временный PDF-файл и отправляет через объект ИнтернетПочта с использованием профиля учетной записи.
Фрагмент типовой логики отправки встроенным языком выглядит примерно так:
Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(УчетнаяЗапись);
Почта = Новый ИнтернетПочта;
Почта.Подключиться(Профиль);
Сообщение = Новый ИнтернетПочтовоеСообщение;
Сообщение.Тема = "Счет № " + Счет.Номер + " от " + Формат(Счет.Дата, "ДЛФ=D");
Сообщение.Получатели.Добавить(АдресПолучателя);
Сообщение.Вложения.Добавить(ПутьКФайлуPDF, "Счет_" + Счет.Номер + ".pdf");
Сообщение.Тексты.Добавить(ТекстПисьма, ТипТекстаПочтовогоСообщения.ПростойТекст);
Почта.Послать(Сообщение);
Почта.Отключиться();
Ключевой момент — фиксация факта отправки. После успешной отправки установите у документа признак «Отправлен» (или запишите событие в регистр). Иначе при следующем запуске задание отправит тот же счёт повторно, и клиент получит дубликаты. Также предусмотрите обработку ошибок: если письмо не ушло (неверный адрес, сбой сервера), ошибка должна писаться в журнал регистрации, а не прерывать всю рассылку.
// Проверка перед отправкой: адрес должен быть заполнен
Адрес = Контрагент.АдресЭлектроннойПочты;
Если ПустаяСтрока(Адрес) Тогда
ЗаписьЖурналаРегистрации("Рассылка счетов", УровеньЖурналаРегистрации.Предупреждение,,, "Не указан email контрагента " + Контрагент);
Продолжить;
КонецЕсли;Откуда брать адреса получателей
Слабое место любой автоматической рассылки — качество адресной базы. В типовых конфигурациях email хранится в контактной информации контрагента (вид «Адрес электронной почты») или в контактных лицах. Определите единое правило: из какого именно поля берётся адрес для счетов, и зафиксируйте его в настройках обработки.
Практическая рекомендация — завести отдельный вид контактной информации, например «Email для счетов», и заполнять его осознанно. Это исключает ситуацию, когда счёт уходит на личную почту менеджера клиента вместо бухгалтерии. Перед запуском рассылки выгрузите список контрагентов без заполненного email и передайте менеджерам на дозаполнение — иначе часть счетов просто не будет отправлена, и вы узнаете об этом только по просроченной оплате.
Проверка работы рассылки и контроль результата
После настройки не ограничивайтесь одним тестом. Прогоните рассылку на копии базы или на ограниченном отборе (один-два контрагента с вашими адресами) и проверьте полный цикл: документ отобран, письмо сформировано, вложение корректно, признак отправки установлен, повторная отправка не происходит.
В рабочем режиме контролируйте три вещи: журнал регистрации (ошибки фонового задания и отправки почты), фактическое выполнение регламентного задания (консоль заданий или раздел «Регламентные и фоновые задания» — задание могло быть заблокировано или завершаться с ошибкой) и обратную связь от клиентов о недоставленных письмах.
Как проверить результат
Письмо пришло, PDF открывается, реквизиты и сумма верные
Письмо в спаме, вложение не открывается или содержит чужие реквизиты
В списке фоновых заданий видны регулярные успешные запуски
Задание не выполнялось или завершается с ошибкой
Отправленный счет не попадает в рассылку повторно
Клиент получает дубликаты писем
Нет ошибок отправки, есть записи об успешных операциях
Ошибки подключения к SMTP или отсутствия адреса получателя
Типичные ошибки и как их избежать
Самая частая причина «молчащей» рассылки — неработающее регламентное задание. В файловых базах фоновые задания выполняются только пока запущен сеанс, в котором они стартовали, либо требуется отдельный запуск с параметром выполнения фоновых заданий. В клиент-серверном варианте проверьте, что задание включено, не заблокировано и у пользователя задания есть нужные права.
Вторая группа ошибок — почтовые: неверный порт или тип шифрования, пароль приложения вместо основного пароля, превышение лимита отправки, попадание писем в спам из-за отсутствия SPF/DKIM-записей у домена отправителя. Третья группа — данные: пустой email у контрагента, устаревшая печатная форма, неактуальные реквизиты организации в макете.
Выбор подхода под вашу ситуацию
Если у вас типовая конфигурация, небольшой поток счетов и стандартный текст письма — начните со штатных механизмов и готовой дополнительной обработки: это быстрее и не требует доработок конфигурации. Если нужны сложные условия отбора, разные шаблоны, интеграция со статусами заказов или учёт отправки в регистрах — заказывайте доработку с регламентным заданием.
Как выбрать действие
В любом варианте финальный критерий качества один: клиент получает правильный счёт один раз, вовремя, а вы видите в системе, кому и когда он отправлен.
Что важно запомнить
Автоматическая рассылка счетов строится на трёх элементах: настроенная учетная запись почты, механизм отправки (штатный или регламентное задание) и учёт факта отправки. Перед запуском протестируйте полный цикл на тестовых адресах и настройте контроль ошибок через журнал регистрации.
Частые вопросы об автоматической рассылке счетов в 1С
Можно ли настроить рассылку счетов без программиста?
Да, если конфигурация типовая и вас устраивает стандартный сценарий. Потребуется настроить учетную запись почты, включить подсистему дополнительных обработок и подключить готовую обработку рассылки, совместимую с вашей версией. Для нестандартных условий отбора и шаблонов без доработки не обойтись.
Как сделать, чтобы счёт отправлялся сразу после создания, а не по расписанию?
Используйте отправку по событию: в штатных механизмах это настраивается через бизнес-процессы или триггеры (если конфигурация их поддерживает), в доработанных — через подписку на событие записи документа. Учтите, что отправка в момент проведения замедляет работу пользователя, поэтому обычно письмо ставится в очередь и отправляется фоновым заданием в течение нескольких минут.
Почему письма из 1С попадают в спам у клиентов?
Частые причины: отсутствие или неверная настройка SPF-, DKIM- и DMARC-записей домена отправителя, отправка с бесплатного почтового ящика вместо корпоративного домена, массовые однотипные письма, вложения с подозрительными именами файлов. Настройку DNS-записей выполняет администратор домена или хостинг-провайдер.
Как запретить повторную отправку уже отправленного счета?
Нужен признак факта отправки: дополнительный реквизит документа, дополнительное сведение или запись в регистре сведений. Обработка рассылки должна отбирать только документы без этого признака и устанавливать его после успешной отправки. Дополнительно полезно хранить дату отправки и адрес получателя для разбора споров.
Что делать, если у контрагента не заполнен email?
Обработка должна пропускать такие документы и фиксировать предупреждение в журнале регистрации, а не прерывать всю рассылку. Периодически формируйте список контрагентов с пустым адресом и передавайте менеджерам на заполнение — иначе часть клиентов не получит счета, а вы узнаете об этом только по просрочке оплаты.
Работает ли рассылка в файловой базе 1С?
Да, но с ограничением: фоновые задания в файловой базе выполняются только в рамках запущенного сеанса. Обычно выделяют отдельный сеанс (например, на компьютере или сервере, который всегда включен), запущенный с настройкой выполнения фоновых заданий. Если этот сеанс закрыт, рассылка останавливается до следующего запуска.