Архитектура боевого сервера, прогон абонплаты, оплата через ЮKassa, состояния абонента по балансу и выгрузка СОРМ — шестнадцать интерактивных схем со светлой и тёмной темой, поиском по узлам, трассировкой связей и экспортом.
Каналы абонентов и сотрудников, ядро в Docker Compose — Nginx, Django, Celery, PostgreSQL, Redis, FreeRADIUS — и внешние сервисы.
Как process_billing выбирает услуги, считает сумму по каскаду цен и в каких случаях списание пропускается.
От создания платежа с комиссией до проверки webhook, зачисления на счёт, чека по 54-ФЗ и снятия блокировки за долг.
Списание, уход в минус, блокировка b_negbal, отсрочка юрлицу, обещанный платёж и возврат доступа.
От данных биллинга и расписания до скоупа организации, файла CSV, передачи на FTP пункта управления и записи в журнал.
Авторизация через кэш, учёт сессии через очередь и место, где возникают таймауты на узлах доступа.
Порог по лимиту счёта, отсрочка юрлицу, разрыв сессии на всех узлах и включение после оплаты.
Должник получает адрес из отдельного пула и попадает на страницу оплаты вместо отказа в доступе.
Сообщение из любого канала: выбор ящика, опознание клиента, тикет, ответ ассистента и эскалация на оператора.
Определение организации, вызов модели через шлюз лицензий, инструменты с данными клиента и эскалация в поддержку.
Стадии воронки от заявки до подключения, причина отказа и создание абонента из выигранной сделки.
Письмо банка, разбор файла, поиск клиента по реквизитам, зачисление, чек и закрывающие документы.
Когда чек пробивается, когда нет, и что происходит при сбое кассы.
Порядок шагов на боевом сервере и места, где обычно теряются чужие правки.
Три очереди с отдельными воркерами: учёт сессий, отключения и всё остальное по расписанию.
Как выбор в шапке, право доступа и ключ кэша определяют, чьи данные увидит сотрудник.