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

asaci-edge

Catégorie : Edge  ·  Périmètre : PR3 · connecteur ASACI et compagnies  ·  Module : edges/asaci-edge (monorepo fga-services — ADR-0001)  ·  Stack : Java · Quarkus · Gradle · YAML  ·  Architecture : hexagonale

1. Rôle et responsabilités

Connecteur entrant/sortant ASACI et compagnies : réception des bordereaux RC Auto (API, SFTP ou dépôt de fichiers), contrôle d'intégrité et de format, transformation vers le modèle interne, accusés de réception. Isole le SI du format réel de l'ASACI, encore inconnu.

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

InboundBatchFormatMappingAcknowledgement

3. API exposée

/edge/asaci/v1/batches (+ canaux SFTP · dépôt)

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

Aucun

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

asaci-edge · flux principalrecevoir le flux(API · SFTP · dépôt de fichiers)contrôler intégrité et formatnotifier le rejet à l'émetteurnonconforme ?transformer vers le modèle internepublierrc-auto-batch.receivedoustatement.submittedaccuser réceptionoui

8. Backlog Jira rattaché

Backlog v2 (16/07/2026) : toujours aucun ticket rattaché à ce service.

Zéro ticket dédié ; l'épic FSD-81 (importation des bordereaux RC Auto) décrit le besoin consommateur côté statistics. À instruire en parallèle : protocole d'accord ASACI (format, canal, fréquence), sans lequel ce connecteur ne peut pas être spécifié.

MAJ backlog v2 (16/07/2026) — L'épic programme TRANSVERSE « Intégrations Mobile Money / banque / SMS » (FSD-1172) existe — vide ; le protocole ASACI reste à contractualiser.

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.