Skip to content

CDG-01 — Short report mensuel

FonctionNatureFrameworkScoreStatut
Contrôle de gestionWorkflow (le plus lourd du portefeuille)n8n (orchestration multi-source)19🔴 Bloqué (API Nibelis + format Marine da Rocha)

Source : atelier CDG 28/07/2026 (Sonia Gantou DAF, Anne Guerry, Marine da Rocha) — synthèse enrichie + transcript verbatim.


  • Short report = vitrine CDG livrée à J+5 après clôture
  • 10-12 onglets consolidant données de Nibelis + Progessi + CEDGE + Sage + Amelkis
  • Chaque entité produit un fichier propre → copier-coller manuel dans fichier maître (risque décalage de lignes)
  • Retraitements manuels :
    • Alternants / stagiaires (liste à jour nécessaire)
    • Provisions (règles CDG spécifiques)
    • Cotisations
  • Temps réel : 15-30 min à 1h par entité × 10-12 onglets + retraitements + consolidation
  • Écart méthodo : 3h pour l’un vs 15 min pour l’autre — pratiques hétérogènes entre entités
  • Contrôle humain gardé sur qualité (validation Anne/Marine avant publication)
  • Marine da Rocha = nouvelle interlocutrice clé qui reprend le short report — validation des formats critique
  • Reporting Groupe alimenté par “Marie” — question ouverte sur articulation
  • Amelkis = SaaS de consolidation (compta+budget+forecast+historiques) → exports Excel
  • CEDGE = source à identifier (probable outil compta groupe ou variante Sage)

« On a fait un fichier de conso où on remet chaque entité à son onglet et on fait vraiment un copier-coller en dur. » (Anne Guerry, verbatim 28/07)

« J’avais des short reports qui me sont envoyés et qui ont parfois quelqu’un [qui a] rajouté des lignes… et du coup ça me fausse tout. Parce qu’en réalité, quand je vais le recoller, ça va décaler. » (Marine da Rocha, verbatim 28/07)

« Pour le temps des shorts, ça dépend des filiales. Sur KCOP ou sur AXSEN, je mets un peu plus de temps… sur Cassiopée et sur Axel, je vais mettre beaucoup plus de temps pour analyser, faire les retraitements à la main. » (Marine da Rocha, verbatim 28/07)

« Pour ce retraitement-là, il faut prendre en compte une liste de stagiaires qu’on va renseigner et une fois qu’on connaît la liste des personnes qui sont des stagiaires, voilà ce qu’il y a à faire — et ça peut être fait automatiquement. » (Anne Guerry, verbatim 28/07)

« En lien avec les reportings : sortir les balances automatiquement de la compta. » (Marine da Rocha, verbatim 28/07 — demande explicite Sage)

« Le short report mensuel […] regroupe environ 10-12 onglets consolidant données issues de Nibelis, Progessi et CEDGE […] la préparation prend jusqu’à 15-30 minutes selon les entités, avec plus de temps pour des retraitements spécifiques. » (synthèse CDG 28/07, § 30:31)

Transcripts sources : CDG atelier 28/07/2026 (synthèse + verbatim ~178 KB), restitution DG consolidée vagues 1-2 Proxiad (CDG-01 identifié comme irritant n°1 du domaine, 8 cas d’usage cartographiés).

Automatiser toute la chaîne d’extraction → retraitement → consolidation → mise en forme du short report mensuel, tout en gardant le contrôle qualité humain final. Passer de “1 semaine CDG mobilisée” à “1h de validation”.

Ce qui est faisable en READ-only Progessi (spec OpenAPI 2026-08-25)

Section titled “Ce qui est faisable en READ-only Progessi (spec OpenAPI 2026-08-25)”
  • CA du mois par BU : POST /salesInvoices avec FilterModel sur invoiceDate (range mois M) + agrégation locale par businessUnit / legalEntity. Champs disponibles : consolidatedAmount, accountingAmount, outstandingAmount, paidAmount, dunningLevel, isFactoring, electronicInvoiceStatusCode (e-invoicing 2026 natif).
  • Marge sold vs purchased par BU : POST /timesheets avec period=M + agrégation par businessUnit. Champs disponibles : nbDays, potentialDays, ecart, intercontract, amountSold, amountPurchased — la séparation sous-traitance est native.
  • DSO / encours client par BU : dérivé de outstandingAmount × invoiceDate sur salesInvoices.
  • Missions actives et volumes CRA validés : POST /projects, POST /timesheets filtrés.
  • Comptes clients / prospects / opportunités : POST /customers, POST /prospects, POST /opportunities.

Ce qui reste hors périmètre de l’API Progessi (nécessite sources externes)

Section titled “Ce qui reste hors périmètre de l’API Progessi (nécessite sources externes)”
  • Comparatifs vs budget / forecast : le budget vit dans Amelkis (SaaS conso) et n’est pas dans Progessi → extraction Amelkis obligatoire.
  • Balances comptables détaillées, provisions Sage : Sage 1000 FRP V11 on-prem, pas d’API — export CSV planifié sur share réseau (cf. verbatim Marine : « sortir les balances automatiquement de la compta »).
  • Effectifs / masse salariale / absences : Nibelis (paye) — pas dans Progessi, API Nibelis non ouverte à date → BLOQUANT #1.
  • Retraitements alternants / stagiaires : la liste des profils à exclure/réintégrer est maintenue par CDG dans SharePoint, pas dans Progessi.
  • CEDGE : source non identifiée à date.
  • Toute écriture (créer/modifier une facture, envoyer sur Chorus Pro, créer une écriture, trigger BPM) : Progessi actuellement READ-only côté API — Write API demandée à Progessi (clalanne@progessi.com), bloquant ouvert.
  1. Trigger : J+3 après clôture comptable OU déclenchement manuel Anne/Marine.
  2. Extractions parallèles :
    • Nibelis API : effectifs, masse salariale, absences par entité
    • Progessi API : facturation, missions, volumes CRA validés
    • Sage : balances + provisions via export planifié (share réseau, pas d’API)
    • Amelkis API : données consolidées (compta + budget + forecast + historiques)
    • CEDGE : à qualifier (API ? export ?)
  3. Retraitements par entité :
    • Charger liste alternants/stagiaires (maintenue par équipe CDG dans SharePoint) et exclure/réintégrer selon règles
    • Calculer provisions selon règles CDG documentées
    • Jointure paie × compta pour cotisations
    • Harmoniser formats (préalable → cf. CDG-02)
  4. Détection anomalies :
    • Masse salariale = 0 → alerte
    • Écart > 20% vs M-1 sur un KPI → alerte
    • Entité manquante (aucune donnée reçue) → alerte
  5. Consolidation : moteur produit 1 onglet par entité + 1 onglet global consolidé.
  6. Mise en forme : application du template Excel standard Proxiad (couleurs, colonnes, sous-totaux, commentaires standards M-1 M-12).
  7. Envoi validation : fichier généré → Anne + Marine + Sonia par mail avec liste des anomalies détectées.
  8. Override sheet : si Marine corrige une valeur, elle le fait via un fichier versionné (SharePoint) → prochaine génération lit ces overrides.
  9. Publication finale après validation Marine → SharePoint CDG + notif directions.
  10. Traçabilité : chaque cellule a une source traçable (quelle API/export/ligne).
flowchart TD
    Trigger[J+3 clôture OU déclenchement Anne/Marine] --> Parallel{Extractions parallèles}

    Parallel --> ProgInv[Progessi<br/>POST /salesInvoices<br/>filter invoiceDate range mois M<br/>fields: consolidatedAmount, outstandingAmount,<br/>paidAmount, party, customer, businessUnit,<br/>legalEntity, electronicInvoiceStatusCode]
    Parallel --> ProgTs[Progessi<br/>POST /timesheets<br/>filter period=M<br/>fields: nbDays, potentialDays, ecart,<br/>intercontract, amountSold, amountPurchased,<br/>producer, businessUnit, legalEntity]
    Parallel --> ProgProj[Progessi<br/>POST /projects<br/>filter status=active<br/>relations customer, businessUnit]
    Parallel --> ProgProd[Progessi<br/>POST /productionAcctgItems<br/>filter period=M]

    Parallel --> Nib[Nibelis API<br/>GET /employees + /payroll + /leaves<br/>BLOQUANT — API non ouverte]
    Parallel --> Sage[Sage 1000 FRP V11<br/>Read CSV share réseau<br/>balances + provisions]
    Parallel --> Amel[Amelkis SaaS<br/>Export Excel budget + forecast<br/>API à qualifier]
    Parallel --> Cedge[CEDGE ?<br/>Source à identifier]

    ProgInv --> AggBU[Agrégation n8n par businessUnit<br/>CA, encours, DSO, e-invoicing status]
    ProgTs --> AggBU
    ProgProj --> AggBU
    ProgProd --> AggBU
    Nib --> Merge[Merge multi-source par entité]
    Sage --> Merge
    Amel --> Merge
    Cedge --> Merge
    AggBU --> Merge

    Merge --> AltList[Lire liste alternants stagiaires<br/>SharePoint Graph API]
    AltList --> Retrait[Retraitements n8n<br/>exclusion alternants<br/>provisions règles CDG<br/>cotisations paie x compta]
    Retrait --> Detect{Anomalies ?<br/>MS=0 / écart >20% M-1 /<br/>entité manquante}
    Detect -->|Oui| AlertList[Liste anomalies]
    Detect -->|Non| Conso[Consolidation<br/>1 onglet par entité + global]
    AlertList --> Conso
    Conso --> Template[Application template Excel Proxiad]
    Template --> Override[Lire override sheet<br/>SharePoint versionné]
    Override --> Send[Microsoft Graph<br/>POST /me/sendMail<br/>Anne + Marine + Sonia<br/>+ fichier + anomalies]
    Send --> Wait[Validation Marine]
    Wait --> Publish[Graph API PUT<br/>/sites id /drives id /root<br/>short-report period.xlsx]

Vérification faite contre la spec OpenAPI progessi-read-api.json reçue 2026-08-25 (base URL https://proxiad.progessi.com/api/control/rest, BasicAuth, 20 resources exposées en lecture).

Besoin fonctionnelEndpoint ProgessiDisponible ?Commentaire
CA du mois par BUPOST /salesInvoices filter invoiceDate range M + agrégation par businessUnit58 fields dont consolidatedAmount, accountingAmount
Encours client par BU (DSO)POST /salesInvoices fields outstandingAmount, paidAmount, dunningLevelRelance client native (dunningLevel)
Marge sold vs purchased par BUPOST /timesheets fields amountSold, amountPurchased, agrégation businessUnitSéparation sous-traitance native
Intercontrat par BUPOST /timesheets field intercontract, ecart (nb jours)Champ dédié
E-invoicing 2026 / Chorus Pro (statut)POST /salesInvoices field electronicInvoiceStatusCodeLecture seule du statut
Missions activesPOST /projects FilterModel + relations customer, businessUnit
Prod comptablePOST /productionAcctgItems filter périodeUtile pour rapprochement
Prospects / opportunités du moisPOST /prospects, POST /opportunitiesComplément vue commerciale
Effectifs / masse salariale / absencesPas dans Progessi (paie = Nibelis)
Balances comptables détaillées, provisionsPas dans Progessi (compta = Sage 1000 on-prem)
Budget / forecast / historiques consolidésPas dans Progessi (conso = Amelkis SaaS)
Créer une facture / envoyer sur Chorus ProWrite API demandée, bloquant ouvert
Créer une écriture comptableIdem — READ-only spec actuelle
Trigger BPM (workflow interne Progessi)Idem — hors périmètre READ

Bloquants API identifiés :

  1. Nibelis — pas d’API ouverte à date. La masse salariale, effectifs et absences ne peuvent pas alimenter le short report en flux. Bloquant #1 (Sonia + David).
  2. Sage 1000 FRP V11 — pas d’API, on-prem. Balances et provisions passent par export CSV planifié sur share réseau (Marine a explicitement demandé cette automatisation, verbatim 28/07 : « sortir les balances automatiquement de la compta »).
  3. Amelkis — SaaS de consolidation, périmètre API à qualifier. Sinon export Excel manuel systématique.
  4. CEDGE — source non identifiée (non nommée dans la spec Progessi, non documentée par le CDG). À qualifier avant tout dev.
  5. Progessi Write API — non disponible dans la spec 2026-08-25. Aucun blocage pour CDG-01 (lecture pure), mais à surveiller pour CDG-02/03 et pour toute action retour (ex. lever un flag sur une facture).

Contournements retenus :

  • Côté Progessi : construire un connecteur n8n générique POST /{resource} avec FilterModel AND/OR récursif (utile aussi pour ADV, RH, Compta). Cache Redis facultatif (limit/offset pagination). Un shortcut « Progessi Facturation Mois » et un shortcut « Progessi Timesheets Mois » masquent la complexité du FilterModel.
  • Côté Nibelis : mode dégradé export Excel manuel posé sur SharePoint tant que l’API n’est pas ouverte — le workflow détecte le fichier et l’ingère (pattern déjà retenu pour Amelkis).
  • Côté Sage : export CSV planifié par David sur un share réseau — n8n lit le fichier posé (fallback : dépôt manuel mensuel).
  • Côté Amelkis : fallback export Excel sur SharePoint si API non contractualisée.
  • Côté CEDGE : investigation urgente (Q1 ci-dessous) — mode dégradé identique aux autres si outil sans API.
  • Le contrôle qualité humain (Anne + Marine) reste ancré : le workflow prépare le short report, l’humain valide avant publication.
#ÉtapeFonction / endpointApplicationExiste ?Accès dispo ?Notes
1Effectifs / masse salarialeGET /employees + GET /payrollNibelisÀ confirmer🔴 API demandéeBloquant #1 — validation Sonia
2AbsencesGET /leavesNibelis🔴Idem
3Facturation par entitéPOST /salesInvoices FilterModelProgessiShortcut à créer
4Missions activesPOST /projects FilterModelProgessi
5Volumes CRAPOST /timesheets FilterModelProgessi
6Balances comptablesExport CSV planifié → shareSage 1000 FRP V11On-prem⚠️ Confirmer avec David : share, planification, formatPas d’API — exports fichier obligatoires
7Données conso AmelkisGET /consolidation/{period}Amelkis SaaS⚠️ Accès direct confirmé, périmètre API à validerOu export Excel manuel en fallback
8Source CEDGE?CEDGEÀ identifierInvestigation : Sage variante ? Autre outil ?
9Liste alternants/stagiairesFichier SharePointM365⚠️Maintenue par CDG
10Envoi mail validationPOST /me/sendMail avec attachmentMicrosoft Graph⚠️ Extension droitsFichier joint Excel
11Publication SharePointPUT /sites/{id}/drives/{id}/root/short-report-{period}.xlsxMicrosoft Graph⚠️Publication
12Override sheetFichier SharePoint versionnéM365⚠️Marine édite, workflow relit
  • API Nibelis BLOQUANT #1 — pas de dev possible sans
  • Comptes démo Progessi × Nibelis corrélés (mêmes collaborateurs)
  • Share réseau Sage (accès David)
  • Amelkis credentials + périmètre API
  • Identification et accès CEDGE
  • Site SharePoint CDG (test + prod)
  • Template Excel maître (fichier de référence fourni par Marine)

Priorité 1 — Bloquant :

  • Validation API Nibelis (Sonia + David)
  • Diagramme complet du short report actuel — atelier 60 min avec Marine + Anne : onglet par onglet, source par source, retraitement par retraitement
  • Liste des alternants et stagiaires à jour + règle de retraitement
  • Règles de provisions documentées
  • Identification CEDGE : quel outil, où vivent les données, comment y accéder

Priorité 2 :

  • Formats validés avec Marine da Rocha
  • Périmètre exact des entités couvertes par les 10-12 onglets
  • Template Excel maître (fichier de référence complet)
  • Question “Marie” (reporting Groupe) : articulation avec short report
  • Liste reportings d’agences standardisables (préalable CDG-02)

Priorité 3 — Pour la production :

  • Cycle de recette : Anne + Marine valident sur 3 mois consécutifs avant bascule prod
  • Décision override sheet : où (SharePoint versionné ?), qui a le droit d’y écrire

Effort dev : 10 jours-n8n (le cas le plus lourd).

Jalons :

  • S+0 : cartographie 60 min avec Marine + Anne (préalable)
  • S+0 : réception livrables Proxiad (liste alternants, règles provisions, template Excel)
  • S+0 : BLOQUANT : validation API Nibelis
  • S+1 (dès API) : dev connecteur Nibelis n8n (~3 j) — shortcuts effectifs + masse salariale + absences
  • S+2 : dev export Sage + Amelkis + CEDGE (~2 j)
  • S+2-3 : dev workflow orchestration + moteur retraitements (~3 j)
  • S+3 : consolidation + template Excel + override (~1 j)
  • S+4 : tests + démo Anne/Marine/Sonia
  • S+5 à S+8 : pilote 3 mois consécutifs (M+0, M+1, M+2) — comparaison auto vs manuel
  • S+9 (nov-déc 2026) : bascule production après validation
  • Sur 3 mois consécutifs : short report auto ≡ short report manuel avec écart ≤ 0,5% par ligne
  • Livraison en ≤ 30 min de temps CDG (préparation + validation) au lieu de 3h+ actuellement
  • Traçabilité chaque valeur : “cette cellule vient de [source X] > [ligne Y] au [date Z]”
  • Retraitements alternants/stagiaires appliqués correctement
  • Provisions calculées selon règles CDG documentées
  • Consolidation multi-entités sans erreur de collage
  • Override sheet fonctionnelle (Marine peut corriger une valeur avant publication)
  • Anomalies détectées auto (MS=0, écart >20% M-1, entité manquante)
RisqueImpactMitigation
API Nibelis retardéeBlocage pilote paye ET short reportPiste A avance en parallèle, escalade DSI hebdo Nibelis
Sage share réseau inaccessibleBalance manquanteFallback : export manuel mensuel par David, agent lit fichier posé
CEDGE inconnu / sans APISource manquanteInvestigation urgente ; fallback export manuel
Amelkis SaaS API limitéePerte sources reportingFallback : export Excel chargé sur SharePoint
Retraitements alternants trop spécifiques par entitéComplexité exploseRègles COMMUNES d’abord, exceptions manuelles
Écart détecté au pilote → défiance CDGRetour manuelValidation collaborative 3 mois, corrections itératives
Marine da Rocha indisponibleBloque décisions formatBackup Anne Guerry pour co-décision
  • Q1 : CEDGE — quel outil ? Où vivent les données ? Comment y accéder ? (Non identifié dans les transcripts)
  • Q2 : Format d’export Sage — CSV ? XLS ? Chemin exact du share réseau ? Fréquence de rafraîchissement ?
  • Q3 : Amelkis — quel niveau d’API dans le contrat Proxiad ? Ou export Excel manuel systématique ?
  • Q4 : Marie / reporting Groupe — quelle articulation ? Le short report alimente son reporting ? Ou l’inverse ?
  • Q5 : Anomalies — seuils exacts (écart 20% ou 10% ? sur quels KPI ?)
  • Q6 : Override sheet — quel format ? Excel versionné SharePoint ? Google Sheets ? Base de données ?
  • Q7 : Retraitements provisions — règles documentées quelque part ? Ou à formaliser ex-nihilo avec Marine ?
  • Q8 : Cycle de recette — 3 mois consécutifs de comparaison en parallèle du process manuel — accepté par Marine ?
  • Q9 : Publication finale — quel canal ? SharePoint CDG + mail directions ? Teams ? Amelkis ?