CRM / Bitrix24 · собствен tooling · composer пакет
Преизползваема библиотека за интеграции с Bitrix24
Клиент:
Личен проект
Категория: CRM / Bitrix24
Стек: PHP 8.1+ (независим от framework), PSR-4, GitHub Actions
Срок: вътрешен инструмент, развива се при нужда
Проблем
Всяка нова интеграция с Bitrix24 и външни услуги (електронен подпис, склад) се пишеше наново — заявките, обработката на грешки и логването се дублираха между проектите.
Ограничения
Беше нужен инструмент, независим от конкретен framework — за да се използва както в Bitrix24 модули, така и в самостоятелни PHP скриптове.
Какво направих
- REST клиент за Bitrix24 (сделки, контакти, компании, генериране на документи от шаблони)
- Интеграции с услуга за електронен подпис и складова услуга зад единен интерфейс
- Retry механизъм с настройваем брой опити и разделяне на транспортни/domain изключения
- Единна система за логване с нива, ротация и автоматично изчистване по retention
- Composer пакет с CI (статичен анализ, проверка на стила)
Архитектура
Bitrix24 REST
→ Услуга за електронен подпис
→ Складова услуга
→ Единен logger
→ Retry слой
Резултат
Новите интеграции с Bitrix24 и свързани услуги започнаха да се сглобяват от готов преизползваем слой за транспорт и логване, вместо да се пишат от нулата всеки път.
Какво може да се преизползва
Bitrix24 REST клиент с retry
Единна система за логване с ротация
Модел за разделяне на транспортни и domain изключения