SI FGA · diagrammes d'activité par service
Flux principal de chacun des 20 services développés, avec les événements publiés (contrat du catalogue des microservices) · sources PlantUML versionnables
Services métier
svc-reference-data svc-reference-data · flux principal réception d'une modification (administrateur) rejeter avec motif non données valides ? fusionner ou rejeter oui doublon détecté ? enregistrer la nouvelle version publier insurer.updated · medical-expert.accredited · regulatory-parameter.changed diffuser en lecture aux autres services oui non
svc-claims svc-claims · flux principal réception d'une ouverture (portail · agent) vérifier l'identité de la victime dossier existant ? oui non rattacher au dossier existant créer le Claim · n° unique publier claim.opened enregistrer le consentement publier consent.recorded mettre à jour le statut publier claim.status-changed oui volets PR1 / PR2 actifs ? non clôturer le dossier publier claim.closed
svc-medical-care svc-medical-care · flux principal consommer care-request.submitted demander les compléments non dossier complet ? oui publier care-request.rejected défavorable visa médical ? publier care-request.approved émettre les bons publier care-voucher.issued demander la lettre de garantie (documents · signatures) attendre signature.completed publier guarantee-letter.signed suivre la consommation des bons publier guarantee.renewal-due oui échéance proche ? oui garantie active ? non enregistrer la consolidation publier care.consolidated favorable
svc-medical-billing svc-medical-billing · flux principal consommer invoice.received rapprocher bons · ordonnances · fiches de suivi créer la Discrepancy publier invoice.rejected demander la correction non cohérent ? publier invoice.checked publier medical-visa.denied refusé visa médical ? publier medical-visa.granted assembler le BillingFile publier billing-file.approved publier payment.requested attendre payment.executed solder la facture oui accordé
svc-compensation svc-compensation · flux principal consommer compensation-claim.submitted publier compensation-claim.rejected non recevable ? publier compensation-claim.admitted désigner l'expert médical publier expertise.assigned recevoir le rapport d'expertise publier expertise-report.filed appeler compensation-engine recevoir award.calculated soumettre la fiche à validation fiche validée ? non publier offer.issued publier offer.declined publier compensation-case.referred-to-litigation non offre acceptée ? faire signer le PV (signatures) publier settlement.signed attendre payment.executed publier compensation-case.closed oui oui oui
svc-compensation-engine svc-compensation-engine · flux principal recevoir une demande de calcul (POST /v1/calculations) charger la version active du barème retourner l'erreur détaillée non entrées valides ? exécuter les règles de calcul tracer entrées · version de barème · résultat publier award.calculated retourner le résultat oui
svc-contributions svc-contributions · flux principal consommer statement.submitted exécuter les contrôles automatiques publier statement.correction-requested non bulletin conforme ? publier statement.validated consolider la période émettre les bordereaux publier production-slip.issued · collection-slip.issued transmettre à la comptabilité (erp-edge) publier contribution.overdue non paiement à l'échéance ? analyser l'assiette publier underreporting.detected oui sous-déclaration détectée ? oui
svc-field-inspections svc-field-inspections · flux principal approuver le programme annuel publier inspection-program.approved assigner la mission publier mission.assigned recevoir le lot mobile ( sync.mobile.batch-received ) contrôler les fiches publier violation.recorded oui infraction constatée ? clôturer la mission publier mission.completed oui missions à conduire ? non consolider le bilan du programme
svc-statistics svc-statistics · flux principal consommer rc-auto-batch.received publier rc-auto-batch.rejected notifier l'ASACI (asaci-edge) non format valide ? importer les données publier rc-auto-batch.imported consolider le dataset publier dataset.published exposer aux exports BI oui
svc-debt-recovery svc-debt-recovery · flux principal consommer contribution.overdue ou naissance d'un débours créer la Receivable publier receivable.created ouvrir le RecoveryCase publier recovery-case.opened appliquer la pénalité (10 %) émettre la mise en demeure publier formal-notice.issued relancer publier reminder.sent saisir (DA · ASACI · avocat) publier referral.sent puis legal-case.opened si contentieux oui relances épuisées ? non paiement rapproché ? oui solder · émettre la quittance publier receivable.settled · discharge-receipt.issued
svc-payments svc-payments · flux principal sens du flux ? sortant entrant consommer payment.requested ou settlement.signed créer le PaymentOrder publier payment-order.created faire approuver publier payment-order.approved exécuter via psp-edge publier payment.failed rejouer ou alerter non succès ? publier payment.executed comptabiliser via erp-edge recevoir le relevé (psp-edge) publier incoming-payment.recorded rapprocher avec les créances publier payment.reconciled publier payment-deadline.at-risk oui délai des 60 jours à risque ? oui
Services socle
svc-notifications svc-notifications · flux principal consommer un événement métier résoudre la règle de routage notification requise ? non charger préférences et template composer le message (français) envoyer (email · SMS · portail) échec et tentatives restantes ? oui envoyé ? oui non publier notification.dispatched publier notification.failed oui
svc-documents svc-documents · flux principal recevoir la demande de génération (API ou événement déclencheur) charger le template fusionner les données générer le document publier document.generated déposer en GED / SAE rejouer le dépôt publier document.archive-failed si échec persistant non archivage réussi ? publier document.archived oui
svc-signatures svc-signatures · flux principal consommer document.generated ou demande directe créer la SignatureRequest publier signature.requested transmettre au prestataire de confiance notifier les signataires signé ? oui non collecter preuve et horodatage publier signature.completed refus explicite ? oui délai expiré publier signature.declined publier signature.expired
svc-audit-trail svc-audit-trail · flux principal consommer un événement (sigfga.*) déjà enregistré ? oui normaliser l'entrée enrichir (acteur · dossier · corrélation) écrire l'entrée immuable indexer pour la consultation (par dossier · par acteur) non
Edge services
portal-bff portal-bff · flux principal recevoir la requête du portail dérouler l'authentification headless (Keycloak · MFA) refuser (401) non authentifié ? non session valide ? contrôler les habilitations interroger claims interroger medical-care interroger payments interroger documents agréger et adapter au front répondre oui
mobile-bff mobile-bff · flux principal authentifier l'agent (headless) préparer le lot descendant (missions · référentiels) transmettre à la tablette recevoir le lot montant (fiches de contrôle) résoudre ou rejeter ( sync.mobile.conflict-detected ) oui conflits détectés ? transmettre à field-inspections publier sync.mobile.batch-received accuser réception à la tablette
asaci-edge asaci-edge · flux principal recevoir le flux (API · SFTP · dépôt de fichiers) contrôler intégrité et format notifier le rejet à l'émetteur non conforme ? transformer vers le modèle interne publier rc-auto-batch.received ou statement.submitted accuser réception oui
psp-edge psp-edge · flux principal recevoir l'ordre (payments) sélectionner l'adaptateur (banque · Mobile Money) transformer au format du fournisseur soumettre au fournisseur suivre (callback · polling) non statut final reçu ? oui succès ? oui non notifier payments : exécuté notifier payments : échec et motif
erp-edge erp-edge · flux principal recevoir la demande de comptabilisation mapper vers le modèle Odoo (tiers · journal · écriture) créer le tiers dans Odoo non tiers existant ? poster via l'API Odoo placer en file de rejeu alerter si échec persistant non succès ? remonter le statut comptabilisé oui