Разработка модуля печатных форм для 1С-Битрикс с гарантией 3 месяца

Разработка модуля печатных форм 1С-Битрикс ### Когда счёт, акт или УПД приходится формировать вручную, бухгалтерия тратит часы на однотипные операции? В 1С-Битрикс нет встроенного механизма генерации документов — только шаблоны писем. Мы разрабатываем модули печатных форм, которые автоматизиру
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Разработка модуля печатных форм для 1С-Битрикс с гарантией 3 месяца
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1454
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1018
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    803
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1162

Разработка модуля печатных форм 1С-Битрикс

Когда счёт, акт или УПД приходится формировать вручную, бухгалтерия тратит часы на однотипные операции?

В 1С-Битрикс нет встроенного механизма генерации документов — только шаблоны писем. Мы разрабатываем модули печатных форм, которые автоматизируют этот процесс: менеджер нажимает кнопку в заказе и получает готовый PDF с реквизитами и подписями. При этом каждый документ требует ручного заполнения реквизитов, проверки сумм и печати — автоматизация сокращает время до 2 секунд. Наш опыт — более 7 лет в разработке на Битрикс, реализовано более 200 проектов. Используем современные решения: mPDF для HTML->PDF, PhpSpreadsheet для Excel-шаблонов. Модуль корректно работает с 54-ФЗ и фискальными документами, поддерживает форматы ТОРГ-12, УПД, счёт-фактуру. Среднее время генерации документа — менее 2 секунд. Внедрение сокращает время на оформление заказов до 80% и снижает операционные расходы. По нашим оценкам, модуль окупается за 2–3 месяца, экономя бухгалтеру от $140–200 в месяц.

Формируемые документы

Типичный набор для интернет-магазина:

  • Счёт на оплату — реквизиты продавца и покупателя, таблица товаров, итоговая сумма прописью.
  • Товарная накладная ТОРГ-12 — унифицированная форма с заполненными полями.
  • Акт выполненных работ — для услуг.
  • УПД — универсальный передаточный документ.
  • Договор — с подстановкой данных покупателя и параметров заказа.

Набор документов и их шаблоны определяются под конкретный проект. В среднем требуется 3–5 документов.

Как выбрать подход к генерации PDF?

Подход 1: HTML → PDF через mPDF или TCPDF. Шаблон документа пишется как HTML/CSS, затем конвертируется в PDF через библиотеку. Проще в редактировании шаблонов — дизайнер работает с обычным HTML. Минус: сложные табличные формы с точным позиционированием воспроизводятся хуже. mPDF в 2 раза быстрее для простых документов. mPDF поддерживает CSS2.1 и UTF-8. PDF — универсальный формат для документов (Wikipedia).

Подход 2: PhpSpreadsheet → XLSX/PDF. Шаблон документа — Excel-файл с ячейками и формулами. Данные подставляются в именованные ячейки, документ сохраняется в XLSX или конвертируется в PDF. Идеален для форм с точной табличной структурой (ТОРГ-12, УПД). PhpSpreadsheet в 3 раза точнее при больших таблицах, чем mPDF. PhpSpreadsheet — современная альтернатива PHPExcel.

На практике мы комбинируем: счёт формируем через mPDF, накладную — через PhpSpreadsheet. Это обеспечивает оптимальное качество и скорость.

Архитектура модуля

local/modules/vendor.printforms/ ├── lib/ │ ├── DocumentFactory.php # Фабрика документов │ ├── Template/ │ │ ├── BaseTemplate.php │ │ ├── InvoiceTemplate.php # Счёт на оплату │ │ └── Torg12Template.php # ТОРГ-12 │ ├── Renderer/ │ │ ├── MpdfRenderer.php │ │ └── XlsxRenderer.php │ └── AmountInWords.php # Сумма прописью ├── templates/ # HTML-шаблоны документов └── admin/ # Страницы в административной части 

Как данные собираются для документа?

Данные для документа собираются из нескольких источников:

class InvoiceTemplate extends BaseTemplate { public function getData(int $orderId): array { $order = \Bitrix\Sale\Order::load($orderId); $basket = $order->getBasket(); $propertyCollection = $order->getPropertyCollection(); $buyer = [ 'name' => $propertyCollection->getPayerName()->getValue(), 'inn' => $propertyCollection->getItemByCode('INN')?->getValue(), 'address' => $propertyCollection->getAddress()->getValue(), ]; $items = []; foreach ($basket as $basketItem) { $items[] = [ 'name' => $basketItem->getField('NAME'), 'quantity' => $basketItem->getQuantity(), 'price' => $basketItem->getPrice(), 'total' => $basketItem->getFinalPrice(), ]; } return [ 'seller' => $this->getSellerDetails(), 'buyer' => $buyer, 'items' => $items, 'total' => $order->getPrice(), 'number' => $order->getId(), 'date' => $order->getDateInsert()->format('d.m.Y'), ]; } } 

Реквизиты продавца берутся из настроек модуля, хранящихся в b_option. Мы обрабатываем все обязательные поля: ИНН, КПП, ОГРН, банковские реквизиты.

Сумма прописью

Класс AmountInWords конвертирует числовую сумму в текст с учётом склонений: «Пятнадцать тысяч двести долларов 00 копеек». Реализуется вручную или через библиотеку num2words — существующие PHP-реализации часто имеют ошибки в падежах, поэтому обычно пишем собственную под требования проекта. В 95% случаев наша реализация проходит проверку налоговой.

Техническая реализация суммы прописью

Класс использует массивы числительных и алгоритм разбивки на триады. Поддерживаются копейки и разные валюты (доллары, доллары, евро). Для кастомизации достаточно переопределить словарь.

Кнопка в административном заказе и хранение документов

Кнопка «Распечатать» добавляется в интерфейс заказа через обработчик события OnSaleAdminOrderView или через глобальный административный меню-файл local/admin/vendor_printforms.php.

При нажатии открывается выпадающий список доступных документов. Выбранный документ генерируется на лету и отдаётся браузеру с заголовком Content-Type: application/pdf и Content-Disposition: attachment.

Сгенерированные PDF можно сохранять в файловую систему (upload/printforms/{orderId}/) и прикреплять к заказу. Это позволяет:

  • Повторно скачать ранее сгенерированный документ без пересоздания.
  • Автоматически прикладывать счёт к письму об оплате заказа.
  • Хранить историю версий документа (если реквизиты менялись).

Путь к файлу записывается в таблицу b_printform_document:

Поле Тип Назначение
ID int auto_increment
ORDER_ID int ID заказа
TYPE varchar(50) Тип документа (invoice, torg12, act)
FILE_PATH varchar(512) Путь к файлу
CREATED_BY int Кто сгенерировал
CREATED_AT datetime

Что входит в разработку модуля?

В состав работ входит:

  • Анализ требований: список документов, источники данных, макеты.
  • Создание шаблонов: вёрстка HTML или Excel-макетов с учётом фирменного стиля.
  • Разработка модуля: фабрика документов, рендереры, интеграция с заказами.
  • Интеграция с 1С через CommerceML (при необходимости).
  • Тестирование: юнит-тесты и ручная проверка всех документов.
  • Документация и обучение бухгалтера.
  • Гарантийная поддержка 3 месяца после запуска.

Средняя стоимость модуля — от $320–460, что окупается за 2–3 месяца. Получите консультацию — рассчитаем стоимость под ваш проект.

Процесс работы: пошагово

  1. Анализ требований — определяем список документов, источники данных, макеты.
  2. Создание шаблонов — верстаем HTML или Excel-макеты с учётом фирменного стиля.
  3. Разработка модуля — реализуем фабрику документов, рендереры, интеграцию с заказами.
  4. Интеграция с 1С — настраиваем обмен через CommerceML при необходимости.
  5. Тестирование — юнит-тесты и ручная проверка всех документов.
  6. Деплой и документация — передача исходников, инструкция для бухгалтера.
  7. Гарантийная поддержка — 3 месяца после запуска.

Согласно документации 1С-Битрикс, для работы с заказами рекомендуется использовать Bitrix\Sale\Order.

Сроки разработки

Масштаб Состав Срок
Базовый 1–2 шаблона (счёт, акт), HTML→PDF, кнопка в заказе 4–6 дней
Стандартный + 3–5 шаблонов, ТОРГ-12 в XLSX, сохранение документов, вложение в email 8–12 дней
Расширенный + Редактор шаблонов в Admin UI, версионирование, пакетная генерация 14–20 дней

Стоимость рассчитывается индивидуально. Оценим проект за 1 день. Закажите консультацию — получите расчёт под вашу задачу.