← Index des services · SI FGA · spécification de service

svc-debt-recovery

Catégorie : Métier  ·  Périmètre : Recouvrement  ·  Module : services/svc-debt-recovery (monorepo fga-services — ADR-0001)  ·  Stack : Java · Quarkus · Gradle · YAML  ·  Architecture : hexagonale

1. Rôle et responsabilités

Créances (contributions impayées, débours et frais de gestion), pénalités et majorations, mises en demeure, relances et échéanciers, saisines (Direction des Assurances, ASACI, avocat), suivi contentieux, quittances.

2. Modèle de domaine (agrégats)

ReceivableRecoveryCaseFormalNoticeReminderReferralLegalCaseDischargeReceipt

3. API exposée

/v1/receivables/v1/recovery-cases/v1/formal-notices/v1/referrals/v1/legal-cases

API REST versionnée, contrat OpenAPI généré et versionné avec le service. Authentification par jeton Keycloak (JWT RS256) validé par le service (Quarkus OIDC).

4. Événements publiés

5. Événements consommés

Topics sigfga.<service>.<aggregate> · enveloppe CloudEvents 1.0 · publication via outbox pattern · consommateurs idempotents (déduplication par event id).

6. Dépendances synchrones

7. Flux principal

svc-debt-recovery · flux principalconsommercontribution.overdueou naissance d'un débourscréer la Receivablepublierreceivable.createdouvrir le RecoveryCasepublierrecovery-case.openedappliquer la pénalité (10 %)émettre la mise en demeurepublierformal-notice.issuedrelancerpublierreminder.sentsaisir (DA · ASACI · avocat)publierreferral.sentpuislegal-case.openedsi contentieuxouirelances épuisées ?nonpaiement rapproché ?ouisolder · émettre la quittancepublierreceivable.settled·discharge-receipt.issued

8. Backlog Jira rattaché

260 tickets du backlog Jira se rattachent à ce service, via 15 épics :

ÉpicIntituléEnfants
FSD-84[RECOUV] Saisine de la Direction du Recouvrement13
FSD-85[RECOUV] Mise en demeure de payer16
FSD-86[RECOUV] Paiement avec pénalités14
FSD-87[RECOUV] Contestation des pénalités · clôturée en v2 (fusion)
FSD-88[RECOUV] Relances physiques et hiérarchiques14
FSD-89[RECOUV] Saisine de la Direction des Assurances19
FSD-90[RECOUV] Saisine de l’avocat (contentieux recouvrement)18
FSD-91[RECOUV] Procédures judiciaires et assignation21
FSD-92[RECOUV] Recouvrement des débours – Phase amiable21
FSD-93[RECOUV] Contestation et traitement des débours20
FSD-94[RECOUV] Paiement et règlement des débours12
FSD-95[RECOUV] Mise en demeure des débours9
FSD-96[RECOUV] Saisine ASACI22
FSD-97[RECOUV] Procédures judiciaires débours · clôturée en v2 (fusion)
FSD-143[RECOUV] Paiement sans penalités17
Le backlog le plus complet et le plus cohérent (produit en un seul jet). Restent 2 épics vides (FSD-87 contestation des pénalités, FSD-97 procédures judiciaires débours) et 2 stories à re-préfixer (FSD-98, FSD-103).

9. Implémentation

Structure hexagonale standard : domain (modèle, événements, services purs, sans dépendance framework), application (use cases, ports in/out, transactions), adapter (in/rest, in/messaging, out/persistence, out/messaging, out/client). Dépendances verrouillées par test ArchUnit. Base de données dédiée (schéma PostgreSQL propre), migrations Liquibase (changesets exclusivement en SQL formaté — ADR-0002). Code intégralement en anglais ; textes utilisateur en fichiers i18n français.

10. Schéma de données

svc-debt-recovery