Aller au contenu principal

Tous les guides

Alimenter le grand livre : export ERP, colonnes et appel API

Schéma stylisé : fichier CSV vers l’endpoint d’import, écritures rangées par entité et période.

Tout ERP capable d’exporter des lignes en table peut alimenter Ninon. Chaque ligne importée devient une écriture de grand livre rattachée à une entité du groupe et à une période : c’est la matière du rapprochement intercompagnie. Pour enchaîner avec le lancement du matching par API, reportez-vous au guide « Intégration REST » du même espace guides.

Parcours métier minimal

(1) Déclarer les entités juridiques du périmètre dans Ninon. (2) Ouvrir ou créer une session de réconciliation pour la période à traiter (souvent au format YYYY-MM, aligné avec votre calendrier de clôture). (3) Charger les écritures pertinentes via l’import CSV décrit ci-dessous (parcours recommandé pour Sage 1000 et autres ERP sans connecteur API Ninon). (4) Lancer le rapprochement depuis le tableau de bord ou via POST /api/reconciliation/[sessionId]/run une fois les lignes présentes.

Sens métier des champs

entityId : identifiant technique de l’entité dans Ninon (voir section suivante) — ce n’est pas automatiquement votre code société ERP exporté brut. period : période de rattachement de la ligne, en pratique alignée sur la session (ex. 2025-03). date : date de l’écriture ; utilisez de préférence une date-heure ISO 8601 pour éviter les ambiguïtés. amount : montant numérique signé (séparateur décimal point). currency : code devise de la ligne (ex. EUR). accountCode : compte ou segment tel que vous filtrez l’interco dans vos exports. description : libellé ou narration utile au rapprochement. reference : pièce, lettrage ou référence ERP (facultatif). source : libellé de traçabilité de la provenance ; si vous l’omettez, la valeur par défaut côté serveur est csv.

En-têtes du fichier CSV

La première ligne doit nommer les colonnes exactement comme suit (respect de la casse) : entityId, date, amount, currency, description, accountCode, period — tous obligatoires sur chaque ligne de données. Colonnes facultatives : reference ; source. Séparateur : virgule ou point-virgule ; la détection repose sur la ligne d’en-tête (si le point-virgule y apparaît sans virgule, le séparateur est le point-virgule). Encodage recommandé : UTF-8 ; un caractère BOM en début de fichier est toléré sur la première clé.

Obtenir les entityId (API)

Les lignes dont l’entityId ne correspond pas à une entité de votre organisation sont ignorées à l’insertion. Liste : GET /api/entities avec une session utilisateur autorisée (rôles admin, member ou viewer pour la lecture). Chaque élément renvoyé contient id (à recopier dans le CSV), name, country, currency. Création d’entité : POST /api/entities (admin), corps JSON avec name, country, currency ; erpSystem et erpSecrets sont optionnels pour votre traçabilité interne.

Endpoint import CSV

Méthode POST. Chemin /api/integrations/csv. Authentification : session applicative (cookie de navigateur ou client HTTP qui réutilise le même mécanisme que votre navigateur connecté). Rôles autorisés : admin ou member (pas viewer). Corps JSON : un objet avec une seule propriété csvText — une chaîne dont la valeur est l’intégralité du fichier CSV, première ligne d’en-tête incluse.

Réponse JSON

inserted : nombre d’écritures réellement créées. scanned : nombre de lignes de données reconnues après parsing du CSV (en-tête exclu des lignes de données, mais une ligne mal formée peut être écartée du décompte inserted). Les dates non interprétables et les entityId hors périmètre ne donnent pas d’écriture ; elles peuvent néanmoins influencer scanned selon ce qui a été parsé.