+7 (999) 881-15-11

Счёт из 1С в Max

Июнь 2026 · Редакция «Арете-ИТ»

Счёт на оплату можно отправлять из 1С сразу после выписки: покупатель получает понятное сообщение и PDF, а менеджеру не приходится сохранять файл и переносить его в мессенджер вручную.

В УНФ, КА 2, УТ 11.5 и ERP 2.5 отличаются документы-основания и механизм получения печатной формы. Код интеграции начинается после того, как конфигурация уже вернула ТабличныйДокумент. Не путайте счёт на оплату со счётом-фактурой: это разные документы и разные деловые ситуации.

Готовая печатная форма счёта в PDF
// ПечатнаяФорма — уже сформированный ТабличныйДокумент.
// Команда и параметры получения формы зависят от конфигурации и вида документа.
Поток = Новый ПотокВПамяти;
ПечатнаяФорма.Записать(Поток, ТипФайлаТабличногоДокумента.PDF);
ДвоичныеДанные = Поток.ЗакрытьИПолучитьДвоичныеДанные();
ИмяФайла = "document.pdf";
Загрузить счёт и отправить его покупателю
ОтправитьФайлВMax(
	ТокенБота,
	ИдПользователя,
	ДвоичныеДанные,
	"invoice-145.pdf",
	"Счёт № 145 на 48 600 ₽. Оплатить до 15 сентября.");

Срок оплаты полезнее указать в сообщении: его видно сразу, даже если файл откроют позже. Номер, сумма и дата в рабочем коде берутся из счёта. Использованная процедура ОтправитьФайлВMax целиком приведена в инструкции по ссылке ниже и использует только стандартные объекты платформы.

Max принимает PDF как type=file. Получение URL, загрузка и ожидание готовности вложения разобраны в отдельной инструкции. Если счёт сначала должен подтвердить руководитель, отправке предшествует сценарий согласования.

Тот же шаг через подсистему

«Арете — сервер мессенджеров, Max edition» принимает готовые двоичные данные, сама получает URL загрузки, сохраняет token и отправляет сообщение после обработки вложения:

Счёт как вложение через АСМ_М
ИдПользователя = 123456789; // user_id из карточки получателя
СопроводительныйТекст = "Направляем документ из 1С.";

Параметры = Новый Структура;
Параметры.Вставить("user_id", ИдПользователя);
Параметры.Вставить("text", СопроводительныйТекст);
АСМ_М.ВложитьФайл(Параметры, ДвоичныеДанные, ИмяФайла);
АСМ_М.ОтправитьСообщение(Бот, Параметры);

Читать дальше