Automatyzacja i powiadomienia
Pierwszy dzień miesiąca w jednym przebiegu
Generowanie faktur, wysyłka do KSeF, tworzenie PDF i e-mail do klienta to jedna akcja z listy faktur. Kolejka zadań robi resztę w tle.
- Akcja „Pełny proces” z KSeF lub bez
- Windykacja e-mail per faktura, per klient lub masowo dla sald ujemnych
- Auto-prolongacja umów z powiadomieniami 30 i 5 dni przed końcem
Przebieg pełnego procesu
- Generowanie. Dla każdej aktywnej umowy powstaje faktura z abonamentów, nieopłaconych usług jednorazowych i połączeń VoIP. Umowy w łańcuchu (poprzednia/następna) nie są fakturowane podwójnie.
- KSeF. Faktury z NIP nabywcy trafiają do sesji wsadowych, wracają z numerem KSeF i skrótem.
- PDF. Faktura z kwotą słownie, podsumowaniem VAT, saldem i kodem QR. Dla numerów VoIP osobny PDF z wykazem połączeń.
- E-mail. Według ustawienia na umowie: do nabywcy, odbiorcy lub obu. Faktury „pocztą” idą jako lista do działu obsługi. Wysyłka tworzy wpis rozchodu w księdze sald.
Każdy krok ma flagę stanu (kompletna, PDF, gotowa do wysyłki, wysłana), więc proces można wznowić od miejsca, w którym się zatrzymał.
Powiadomienia i cykl życia umowy
-
E-mail przez AWS SES
Szablony edytowalne w panelu, CSS wstrzykiwany do treści, limit wysyłki na sekundę, załączniki, wiadomości masowe do wybranych klientów.
-
SMS przez SMSAPI
Powiadomienia SMS o fakturze, przypomnieniu i blokadzie.
-
Windykacja
Przypomnienie o zaległości z listy faktur, karty klienta lub masowo z listy sald. Alert regulacyjny PKE z załącznikiem: w roadmapie.
-
Auto-prolongacja
E-mail 30 i 5 dni przed końcem umowy, potem nowa umowa z rabatem lub bez i potwierdzenie do klienta. Akcja ręczna lub zadanie cykliczne.
-
Powiadomienia wewnętrzne
Zmiana umowy wysyła e-mail z linkiem do historii do grupy odpowiedzialnej za umowy.
-
W roadmapie
Automatyczna blokada za zaległość
Reguła: saldo ujemne i termin przekroczony o N dni, to przypomnienie, potem blokada miękka lub twarda hosta. W roadmapie.
Kolejki zadań zamiast czekania na ekran ładowania
Długie operacje (faktury, import wyciągu, raport SIIS, wysyłka e-maili) trafiają do kolejki Redis i wykonują się w tle. Zadania okresowe (odświeżanie sesji co 60 s, deaktywacja wygasłych hostów co godzinę) chodzą przez Celery beat. Panel kolejek jest w administracji, błędy trafiają do Sentry.
- django-rq dla zadań jednorazowych, Celery dla cyklicznych
- Kompozycja Docker: web, worker, celery-worker, celery-beat, PostgreSQL, Redis
- Wdrożenie Ansible dla chmury i on-premise