Разработка

Автоматизация выставления счетов и актов: интеграция Точка Банк с Битрикс24 для сервисных компаний

Автоматизация выставления счетов и актов: интеграция Точка Банк с Битрикс24 для сервисных компаний

Введение: почему это важно для бизнеса услуг

 Если ваша компания оказывает услуги на регулярной основе — IT-сопровождение, маркетинговые услуги, консалтинг, техподдержка — вы знаете, как много времени уходит на рутинную работу с документами. Каждый месяц нужно выставить десятки счетов, а в конце месяца — закрыть их актами выполненных работ.


 Мы в компании "Сигма" столкнулись с той же проблемой: менеджеры тратили по 2-3 часа в день на создание счетов в банке Точка, копирование их номеров в CRM, отслеживание оплат. А в конце месяца — новый круг ада с актами для услуг сопровождения.


 Решение нашлось в автоматизации. Сегодня я расскажу, как мы интегрировали Точка Банк с Битрикс24, и почему выбрали именно такую архитектуру.

Задача: что нужно было автоматизировать

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


- **Счета по предоплате** — выставляются в момент заключения сделки

- **Акты по факту** — создаются в конце месяца только для услуг сопровождения

- **Связанные документы** — акт должен быть привязан к счету в системе банка

- **Минимум действий менеджера** — поставил галочку и забыл

- **Контроль процесса** — видеть статус документов прямо в CRM

Архитектура решения: почему CRON, а не вебхуки

Проблема с прямыми вебхуками

 Первая мысль была очевидной — использовать роботы и вебхуки Битрикс24. Создаем робота, который при изменении сделки вызывает наш скрипт. Но мы столкнулись с ограничением:
Ошибка с переданным URL https://yoursite.ru/tochka-integration/public/bp-handler.php:
Пожалуйста обратитесь в поддержку IT-Solution для добавления домена </code>`yoursite.ru`` в список разрешенных
 Битрикс24 из соображений безопасности блокирует вызовы на непроверенные домены. Можно было бы добавить домен в белый список, но это долго и требует координации с техподдержкой.

Решение через CRON задачи

 Мы выбрали более надежный подход — асинхронную обработку через CRON:
Робот в БП → Ставит галочку → CRON проверяет → Создает документ → Снимает галочку

Преимущества такого подхода:

- **Независимость от ограничений Битрикс24** — никаких проблем с доменами

- **Контроль нагрузки** — обработка идет порциями, не перегружая API банка

- **Отказоустойчивость** — если API банка недоступен, повторим через 2 минуты

- **Простое логирование** — все операции записываются в файлы на сервере

- **Легкая отладка** — можно запустить скрипт вручную для любой сделки

Техническая реализация

Структура проекта

/home/bitrix/www/``yoursite.ru``/tochka-integration/
├── config/
│   └── config.php                     # JWT токены и настройки
├── public/
│   ├── bitrix-integration.php         # Создание счетов
│   └── create-act-with-requisite.php  # Создание актов
├── cron-check-invoices.php            # CRON проверка счетов (*/2 * * * *)
├── cron-check-acts.php                # CRON проверка актов (*/5 * * * *)
├── cron-invoices.log                  # Логи операций со счетами
└── cron-acts.log                      # Логи операций с актами

Поля в Битрикс24

 Мы добавили три пользовательских поля в сделки:


- **UF_CRM_176288127** — галочка "Счёт в Точку"

- **UF_CRM_176288821** — ID созданного счета (текстовое поле)

- **UF_CRM_1762888801** — галочка "Акт в точку"

Алгоритм работы со счетами

// Каждые 2 минуты CRON выполняет:
1. Получить список сделок где:
   - Галочка "Счёт в Точку" = Да
   - Поле "ID счета" = Пусто

2. Для каждой сделки:
   - Получить данные компании и её реквизиты
   - Получить товарные позиции
   - Сформировать JSON для API Точки
   - Создать счет через API
   - Сохранить ID счета в поле сделки
   - Записать в лог

Алгоритм работы с актами

// Каждые 5 минут CRON выполняет:
1. Получить список сделок где:
   - Галочка "Акт в точку" = Да
   - Поле "ID счета" != Пусто
   - В товарах есть слово "сопровождение"

2. Для каждой сделки:
   - Проверить наличие услуг сопровождения
   - Установить дату акта = последний день месяца
   - Создать акт, привязанный к счету
   - Снять галочку "Акт в точку"
   - Записать в лог

Особенности для сервисных компаний

1. Разделение счетов и актов

 В продуктовом бизнесе счет и накладная часто создаются одновременно. Но в услугах:


- **Счет** выставляется заранее (предоплата)

- **Акт** формируется по факту выполнения (конец месяца)


 Наша система учитывает это — акты создаются отдельным процессом и только для услуг сопровождения.

2. Автоматическая дата актов

$actDate = date('Y-m-t'); // Последний день текущего месяца
 Все акты автоматически датируются последним днем месяца — стандартная практика для услуг с ежемесячной оплатой.

3. Фильтрация по типу услуг

if (mb_stripos($product['PRODUCT_NAME'], 'сопровождение') !== false) {
    // Создаем акт только для услуг сопровождения
}
 Не все услуги требуют актов. Разовые работы закрываются по факту оплаты, а регулярные услуги требуют ежемесячных актов.

Получение реквизитов: работа с API Битрикс24

 Одна из сложностей — получение корректных реквизитов компании. В Битрикс24 они могут храниться в разных местах:
// Приоритет получения ИНН:
1. API crm.requisite.list — официальные реквизиты
2. Поле RQ_INN — старый формат
3. Пользовательское поле UF_CRM_4_IF_INN — импорт из внешних систем
4. Парсинг текстового поля с реквизитами
 Наш скрипт проверяет все возможные источники и выбирает первый найденный ИНН.

Результаты внедрения

До автоматизации:

- 15 минут на создание одного счета

- 10 минут на создание акта

- 30% ошибок в реквизитах

- Постоянные напоминания о необходимости выставить документы

После автоматизации:

- 5 секунд — поставить галочку

- 0% ошибок в реквизитах (берутся из CRM)

- Автоматическое создание в течение 2-5 минут

- Полная история в логах

Экономия времени:

- **50 сделок в месяц × 25 минут = 20 часов экономии**

- Это 2.5 рабочих дня менеджера каждый месяц!

Мониторинг и контроль

 Система полностью прозрачна:
# Проверка последних операций
tail -f /home/bitrix/``www/yoursite.ru`<code class="lang-bash">/tochka-integration/cron-invoices.log

# Пример лога:
[2025-11-12 07:15:49] === ЗАПУСК CRON ПРОВЕРКИ ===
[2025-11-12 07:15:49] Найдено сделок для обработки: 1
[2025-11-12 07:15:49] Обрабатываем сделку #9071: Сопровождение - Софит экспо
[2025-11-12 07:15:50] ✅ Счет создан для сделки #9071: a88e09f2-4892-4b37-ae6a-259a996c12e3
[2025-11-12 07:15:52] ✅ Поле в Битрикс24 обновлено

Советы по внедрению

1. Начните с малого

 Сначала автоматизируйте только счета. Когда процесс отработан — добавляйте акты.

2. Настройте права доступа

 Убедитесь, что у вебхука есть права на чтение и изменение сделок, компаний и товаров.

3. Тестируйте на копии

 Создайте тестовую воронку продаж и отработайте процесс на ней.

4. Документируйте изменения

 Ведите файл DOCUMENTATION.txt с описанием всех полей и процессов.

5. Настройте уведомления

 Добавьте отправку email при критических ошибках в CRON скриптах.

Ограничения решения

 Важно понимать границы применимости:


- **Только для Точка Банка** — API других банков отличается

- **Требуется сервер с CRON** — облачные Битрикс24 не подойдут

- **Реквизиты должны быть заполнены** — без ИНН счет не создать

- **Один счет на сделку** — мультисчета требуют доработки

Планы развития

 В следующих версиях планируем добавить:


- **Автоматическое отслеживание оплат** — обновление статуса сделки при поступлении денег

- **Массовая выгрузка документов** — генерация пакета счетов одной кнопкой

- **Интеграция с 1С** — синхронизация документов с бухгалтерией

- **Уведомления в Telegram** — мгновенные алерты об ошибках

Выводы

 Автоматизация документооборота между CRM и банком — это не роскошь, а необходимость для растущего бизнеса услуг. Наше решение через CRON задачи показало себя как надежное, масштабируемое и простое в поддержке.


 Главное преимущество — **полная независимость от ограничений облачных сервисов**. Вы контролируете весь процесс, видите все логи, можете быстро внести изменения.


 Для компаний с регулярными услугами и ежемесячными актами такая система окупается за первый же месяц использования.

Если у вас есть вопросы по внедрению или нужна помощь с настройкой — пишите в комментарии. Делитесь своим опытом автоматизации документооборота!

Теги: #Битрикс24 #ТочкаБанк #Автоматизация #CRM #API #DocumentFlow #B2B