PS PrestaShop Średnio zaawansowany

DataFirefly Dunning: windykacja należności B2B

Instalacja, konfiguracja i obsługa monitów za niezapłacone zamówienia B2B: scenariusze 3-poziomowe, naliczanie odsetek za opóźnienie i ryczałtu windykacyjnego, pisma PDF, cron oraz pulpit należności.

Zaktualizowano Wersja modułu 1.0.0

Prezentacja

DataFirefly Dunning automatyzuje polubowne odzyskiwanie należności z zamówień B2B opłacanych przelewem, które pozostały niezapłacone. Po zatwierdzeniu kwalifikującego się zamówienia moduł otwiera należność, pilnuje terminu płatności, wysyła stopniowane monity według zdefiniowanego przez Ciebie kalendarza oraz nalicza odsetki za opóźnienie i ryczałtową rekompensatę za koszty odzyskiwania należności.

Trzy poziomy monitów są dostarczane przy instalacji (uprzejme przypomnienie, stanowczy monit z odsetkami i pismem PDF, wezwanie do zapłaty) i pozostają w pełni konfigurowalne. Dedykowany pulpit gromadzi w jednym miejscu saldo należności, strukturę wiekową i historię wysyłek.

Dostarczone modele monitów, domyślne stawki i podstawy prawne cytowane w pismach odzwierciedlają francuskie ramy prawne (Code de commerce, art. L441-10 i D441-5, oraz art. 1231-6 Code civil). Prawo polskie reguluje tę materię odmiennie: inna jest struktura rekompensaty ryczałtowej i inna stopa referencyjna. Wszystkie kwoty, stawki i treści pism są konfigurowalne, dlatego przed użyciem produkcyjnym w Polsce zleć ich dostosowanie i weryfikację lokalnemu doradcy prawnemu. DataFirefly nie świadczy doradztwa prawnego.

Instalacja

  1. Umieść katalog dfdunning w katalogu /modules/ Twojego sklepu lub zainstaluj archiwum ZIP z poziomu Moduły > Menedżer modułów.
  2. Kliknij Zainstaluj. Moduł tworzy swoje tabele, trzy domyślne poziomy monitów, konfigurację początkową, token bezpieczeństwa dla crona oraz zakładkę administracyjną w Zamówienia > Monity za niezapłacone (DF Dunning).
  3. W razie potrzeby wyczyść pamięć podręczną PrestaShop w Zaawansowane > Wydajność.

Konfiguracja

Konfiguracja jest dostępna z poziomu Moduły > Menedżer modułów > dfdunning > Konfiguruj. Główne ustawienia:

  • Śledzone moduły płatności: moduły, których zamówienia otwierają należność. Domyślnie przelew bankowy (ps_wirepayment).
  • Śledzone statusy zamówień: statusy traktowane jako „oczekiwanie na płatność”. Domyślnie status oczekiwania na przelew.
  • Termin płatności: liczba dni przyznanych przed upływem terminu. Domyślnie 30 dni.
  • Stopa odsetek za opóźnienie: stosowana stopa roczna. Wartość domyślna 12,15 % odpowiada francuskiej praktyce (stopa refinansowa EBC powiększona o 10 punktów); w Polsce ustaw stopę właściwą dla transakcji handlowych po konsultacji z doradcą.
  • Rekompensata ryczałtowa: stała kwota za każdą przeterminowaną fakturę. Domyślnie 40 €, wartość w pełni edytowalna.
  • Minimalny odstęp między dwoma monitami: zabezpieczenie antyspamowe, domyślnie 3 dni.
  • Wysyłka automatyczna: włącza wysyłanie monitów przy przebiegu crona.
  • Ukryta kopia (BCC): adres otrzymujący kopię każdego monitu, dla śladu księgowego.

Stopa domyślna odzwierciedla francuski wzorzec: stopa refinansowa EBC plus 10 punktów. Stopy referencyjne zmieniają się w czasie, dlatego weryfikuj ustawioną wartość co pół roku (styczeń i lipiec) w konfiguracji.

Trzy poziomy monitów

Poziom monitu określa, kiedy i w jaki sposób klient jest ponaglany. Każdy poziom konfiguruje się z poziomu ustawień: pozycja w sekwencji, opóźnienie wyzwolenia (w dniach po terminie płatności), szablon e-maila, doliczanie odsetek lub nie, załącznik PDF oraz aktywacja.

Poziom 1: uprzejme przypomnienie (T+7)

Proste przypomnienie, bez odsetek i bez załącznika, wysyłane 7 dni po terminie. Cel: zasygnalizować przeoczenie bez pogarszania relacji handlowej.

Poziom 2: stanowczy monit (T+15)

Bardziej stanowczy monit ze szczegółowym wyliczeniem odsetek za opóźnienie i rekompensaty ryczałtowej, z dołączonym pismem PDF. Wysyłany 15 dni po terminie.

Poziom 3: wezwanie do zapłaty (T+30)

Formalne wezwanie do zapłaty przypominające należne kwoty i odsetki, z pismem PDF i terminem uregulowania w ciągu 8 dni. Wysyłane 30 dni po terminie. Dostarczony wzór powołuje się na art. 1231-6 francuskiego Code civil: przed użyciem w Polsce zastąp tę podstawę odpowiednią referencją wskazaną przez Twojego doradcę prawnego.

Terminy i treść każdego poziomu mają charakter przykładowy: dostosuj je do własnej polityki windykacyjnej i do swoich ogólnych warunków sprzedaży.

Naliczanie odsetek

Dla każdej przeterminowanej należności moduł oblicza:

  • Odsetki za opóźnienie: kwota należna × (stopa / 100) × (dni opóźnienia / 365).
  • Rekompensatę ryczałtową za koszty odzyskiwania należności: stałą kwotę za fakturę (domyślnie 40 €), należną od pierwszego dnia opóźnienia.

Kwota należna jest ustalana na podstawie sumy do zapłaty i sumy faktycznie zaksięgowanej na zamówieniu, co obsługuje płatności częściowe. Podstawę prawną dostarczonych wzorów stanowią przepisy francuskie: art. L441-10 i D441-5 Code de commerce dla rekompensaty i odsetek oraz art. 1231-6 Code civil dla wezwania do zapłaty.

Wzory pism odzwierciedlają obowiązujące francuskie ramy prawne. Zleć ich weryfikację swojemu doradcy prawnemu i dostosuj je do własnej działalności oraz do prawa właściwego dla Twoich transakcji przed etapem wezwania do zapłaty. DataFirefly nie świadczy doradztwa prawnego.

Automatyzacja przez cron

Synchronizacja należności i automatyczna wysyłka monitów opierają się na kontrolerze front zabezpieczonym tokenem. Pełny adres URL, z tokenem wygenerowanym przy instalacji, jest wyświetlany na ekranie konfiguracji, gotowy do skopiowania. Ma następującą postać:

https://twojsklep.tld/index.php?fc=module&module=dfdunning&controller=cron&token=TWOJ_TOKEN

Zaplanuj codzienne wywołanie, na przykład o 7 rano, przez harmonogram zadań (crontab) Twojego serwera:

0 7 * * * curl -s "https://twojsklep.tld/index.php?fc=module&module=dfdunning&controller=cron&token=TWOJ_TOKEN"

Przy każdym przebiegu moduł aktualizuje należności (terminy, zamknięcia, wykluczenia), a następnie, jeśli wysyłka automatyczna jest włączona, wysyła monity, których termin nadszedł, z zachowaniem skonfigurowanego minimalnego odstępu.

Token chroni dostęp do crona: bez niego adres URL zwraca błąd. Wygeneruj go ponownie, jeśli podejrzewasz, że został ujawniony.

Pulpit należności

Pulpit, dostępny w Zamówienia > Monity za niezapłacone (DF Dunning), prezentuje:

  • Sześć kluczowych wskaźników: łączne saldo należności, kwotę wymagalną, należności przeterminowane, otwarte sprawy, odsetki teoretyczne i monity z bieżącego miesiąca.
  • Strukturę wiekową rozkładającą saldo na przedziały: niewymagalne, 1-30, 31-60, 61-90 i ponad 90 dni.
  • Filtrowalną listę należności (otwarte, przeterminowane, zapłacone, wykluczone), z akcjami dla każdej pozycji: wysłanie wybranego poziomu monitu, oznaczenie jako zapłacone, wykluczenie lub ponowne włączenie, pobranie pisma PDF.

Sprawa zamyka się automatycznie, gdy zamówienie przechodzi do statusu opłaconego, a jest wykluczana, gdy zamówienie zostaje anulowane, zwrócone lub zakończone błędem płatności.

Pisma PDF i e-maile

Monity są wysyłane e-mailem (wersja HTML i tekstowa) oraz, zależnie od poziomu, z dołączonym pismem PDF. Korespondencja jest generowana po francusku lub po angielsku, zgodnie z językiem zamówienia. Szablony używają zmiennych podstawianych przy wysyłce: imię, nazwisko, numer zamówienia, kwota należna, termin płatności, dni opóźnienia, odsetki, rekompensata ryczałtowa, suma do zapłaty, zastosowana stopa i nazwa sklepu.

E-maile można edytować w Wygląd > Tłumaczenia > Tłumaczenia e-maili, język po języku, jak każdy e-mail PrestaShop.

FAQ

Które zamówienia są objęte monitami?

Wyłącznie te, które odpowiadają modułom płatności i statusom wybranym w konfiguracji. Domyślnie zamówienia opłacane przelewem i oczekujące na uregulowanie.

Czy zamówienie opłacone częściowo jest obsługiwane?

Tak. Kwota należna uwzględnia sumy już zaksięgowane; monitowana jest tylko pozostała część, a sprawa zamyka się po uregulowaniu salda.

Czy moduł jest zgodny z PrestaShop 9 i multisklepem?

Tak. Kontrolery administracyjne opierają się na ModuleAdminController dla zgodności z PrestaShop 8 i 9, bez Composera, a moduł obsługuje kontekst multisklepu.

Czy mogę wysłać monit ręcznie?

Tak. Z poziomu pulpitu możesz natychmiast wysłać wybrany poziom monitu dla danej należności, niezależnie od crona.

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia