diff --git a/pom.xml b/pom.xml
index 1451815..3cbd4bf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
dev.lions.unionflow
unionflow-server-api
- 1.0.8
+ 1.0.9
jar
UnionFlow Server API
diff --git a/src/main/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponse.java b/src/main/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponse.java
index 9d95704..e2594a0 100644
--- a/src/main/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponse.java
+++ b/src/main/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponse.java
@@ -91,4 +91,11 @@ public class OrganisationResponse extends BaseResponse {
// ── Paramètres ─────────────────────────────
private Boolean organisationPublique;
private Boolean accepteNouveauxMembres;
+
+ // ── Conformité (Sprint 1 — Instr. BCEAO + OHADA) ─────────────────────
+ /** Référentiel comptable applicable : SYSCOHADA, SYCEBNL, PCSFD_UMOA. */
+ private String referentielComptable;
+
+ /** UUID du Compliance Officer désigné (Instr. BCEAO 001-03-2025). */
+ private UUID complianceOfficerId;
}
diff --git a/src/test/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponseTest.java b/src/test/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponseTest.java
index ab6c069..e2803c4 100644
--- a/src/test/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponseTest.java
+++ b/src/test/java/dev/lions/unionflow/server/api/dto/organisation/response/OrganisationResponseTest.java
@@ -52,4 +52,38 @@ class OrganisationResponseTest {
r.setOrganisationParenteNom("Parent Org");
assertThat(r.getOrganisationParenteNom()).isEqualTo("Parent Org");
}
+
+ // ── Sprint 13 — Conformité (referentielComptable + complianceOfficerId) ─────
+
+ @Test
+ @DisplayName("referentielComptable null par défaut, builder + setter fonctionnent")
+ void referentielComptable_nullDefaultAndBuilderSetter() {
+ OrganisationResponse empty = OrganisationResponse.builder().build();
+ assertThat(empty.getReferentielComptable()).isNull();
+
+ OrganisationResponse builderSet = OrganisationResponse.builder()
+ .referentielComptable("SYCEBNL").build();
+ assertThat(builderSet.getReferentielComptable()).isEqualTo("SYCEBNL");
+
+ OrganisationResponse setterSet = OrganisationResponse.builder().build();
+ setterSet.setReferentielComptable("PCSFD_UMOA");
+ assertThat(setterSet.getReferentielComptable()).isEqualTo("PCSFD_UMOA");
+ }
+
+ @Test
+ @DisplayName("complianceOfficerId null par défaut, builder + setter fonctionnent")
+ void complianceOfficerId_nullDefaultAndBuilderSetter() {
+ OrganisationResponse empty = OrganisationResponse.builder().build();
+ assertThat(empty.getComplianceOfficerId()).isNull();
+
+ java.util.UUID id1 = java.util.UUID.randomUUID();
+ OrganisationResponse builderSet = OrganisationResponse.builder()
+ .complianceOfficerId(id1).build();
+ assertThat(builderSet.getComplianceOfficerId()).isEqualTo(id1);
+
+ java.util.UUID id2 = java.util.UUID.randomUUID();
+ OrganisationResponse setterSet = OrganisationResponse.builder().build();
+ setterSet.setComplianceOfficerId(id2);
+ assertThat(setterSet.getComplianceOfficerId()).isEqualTo(id2);
+ }
}