Technologie et IA
Intelligence gouvernée sur un modèle financier canonique.
Six couches, chacune avec une seule tâche et des limites rigides entre elles. Le résultat est un système où une question en langage courant devient un plan validé, une réponse calculée et une ligne traçable — et où rien d’irréversible n’arrive sans une personne.
La pile
Six couches. Une seule tâche chacune.
Du bas vers le haut : d’où les données proviennent, où elles vivent, où elles sont publiées, comment elles sont gouvernées, comment elles sont interprétées et comment elles sont contrôlées.
1 · Connecteurs
Un service sans état par source, qui ne conserve que ses propres identifiants. Extraction et normalisation; jamais de persistance. Synchronisation nocturne, webhooks, reprises — tout est idempotent.
8 services en direct2 · Magasin canonique
Un modèle financier normalisé dans Postgres : comptes, opérations, factures, parties, produits, expéditions, versements. Sécurité au niveau des lignes sur chaque table de locataire.
RLS · secrets AES-GCM3 · Grand livre de référence
Les écritures en partie double vivent dans ERPNext derrière un connecteur. Finanly prépare, une personne approuve, un export idempotent comptabilise une seule fois; les états sont recalculés et vérifiés pour la parité toutes les heures.
19k+ écritures en parité4 · Couche sémantique
Des cubes, mesures et dimensions gouvernés sur le magasin canonique. Les états, Report Studio, les tableaux de bord et le modèle s’appuient tous sur les mêmes définitions.
26 cubes · 124 mesures · 756 dimensions5 · Couche de modèle
Un modèle privé derrière une passerelle réservée à l’interne propose des plans sémantiques et des catégorisations. core-api valide; le moteur exécute; le modèle ne touche jamais à un connecteur.
Passerelle réservée à l'interne6 · Contrôles
Approbations et lots d’exportation, clés d’idempotence sur chaque appel à effet secondaire, événements d’audit en ajout seulement imposés par un déclencheur de base de données, limites de débit, annulation.
Piste d’audit append-onlyLa plupart des IA financières sont un modèle avec accès à une base de données. Finanly est un modèle gouverné avec un validateur devant lui, un moteur derrière lui et une personne à la fin.
Intelligence gouvernée
Comment une question devient un chiffre que vous pouvez auditer.
Faites défiler les quatre étapes. Chaque cadre montre la forme réelle des données à cette étape, avec des chiffres de démonstration.
1 · La demande
Une question en anglais simple tirée de la page Intelligence d’affaires. Les puces de suggestion couvrent les questions que les fondateurs posent le plus souvent; tout le reste est permis.
2 · Le modèle propose un plan
Le modèle privé reçoit la demande et le vocabulaire gouverné — noms des mesures, dimensions, plan comptable — et renvoie un plan sémantique. Trois outils l’empêchent d’inventer des comptes, des champs ou des dates.
3 · core-api valide
Chaque mesure, dimension et période est vérifiée par rapport au registre sémantique : 26 cubes, 124 mesures, 756 dimensions. Les champs inconnus échouent en mode fermé. Le locataire est lié à partir de la session, jamais à partir du modèle.
4 · Le moteur répond
Cube exécute le plan validé sur le magasin canonique et renvoie les lignes, les totaux et le plan. Enregistrez-le, programmez-le, épinglez-le à un tableau de bord — ou descendez jusqu’aux lignes du grand livre.
Séparation des pouvoirs
Ce qui propose, ce qui valide, ce qui calcule, qui approuve.
Le modèle propose
Lit la demande et le vocabulaire gouverné; retourne un plan sémantique ou une suggestion de catégorisation avec un niveau de confiance.
Ne lit jamais les lignes brutes du grand livre. N’appelle jamais un connecteur.
La plateforme valide
Vérifie chaque mesure, dimension et période par rapport au registre; lie le locataire à partir de la session; échoue à fermeture sur tout ce qui est inconnu.
Ne fait jamais confiance à un champ inventé par le modèle. N’élargit jamais une frontière de locataire.
Le moteur calcule
Exécute le plan validé sur la source canonique et renvoie les lignes, les totaux et le plan qui les a produits.
Ne calcule jamais à l’extérieur des mesures gouvernées. Ne renvoie jamais un chiffre sans ses lignes.
Une personne approuve
Accepte, modifie, scinde ou rejette; approuve les lots d’exportation vers le grand livre. Chaque décision est réversible et consignée.
Rien d’irréversible n’arrive sans cette étape.
Classification à trois niveaux
Le modèle est le dernier recours , pas la première supposition.
La catégorisation commence par l’historique exact, puis la similarité, et demande au modèle seulement de lever l’ambiguïté — avec le plan comptable comme outil pour qu’il ne puisse pas inventer un compte. Chaque ligne acceptée devient de l’historique pour les deux niveaux suivants.
La description normalisée correspond à une ligne que vous avez classée auparavant. Sensible au montant : si deux historiques correspondent, le montant le plus proche l’emporte.
Comparaison pondérée des termes avec l’historique de votre espace de travail, avec départage selon le montant lorsque deux candidats sont presque équivalents.
Seulement lorsque les paliers 1–2 ne sont pas sûrs : la description et les 5 meilleurs candidats sont envoyés au modèle Finanly pour lever l’ambiguïté. Il choisit; il n’invente pas de comptes.
Architecture des données
Un modèle canonique, un seul grand livre de référence.
Finanly conserve son propre magasin normalisé pour chaque source et chaque flux de travail, et publie les résultats en partie double dans un grand livre de référence par l’entremise d’un connecteur. Les deux côtés sont vérifiés l’un par rapport à l’autre.
Dépôt Postgres canonique
Comptes, transactions, factures et lignes, parties prenantes, produits, expéditions, versements, litiges, écritures au grand livre. Sécurité au niveau des lignes sur chaque table de locataire; l’application filtre aussi par locataire — deux couches, pas une.
ERPNext comme grand livre de référence
Les écritures, les factures, les parties prenantes et le stock vivent dans un vrai grand livre à partie double. Finanly est la surface et le cerveau; il ne prétend pas encore être un grand livre indépendant.
Parité, pas confiance
Le bilan, l’état des résultats et la balance de vérification sont redérivés du dépôt canonique et comparés au grand livre de référence à chaque heure. La dérive est visible, pas une hypothèse silencieuse.
Couche sémantique (Cube)
Les mesures et les dimensions sont définies une fois et utilisées par les états, Report Studio, les tableaux de bord et le modèle. Le nombre est identique partout parce qu’il est calculé à un seul endroit.
Tâches et horaires
Travailleurs Celery et planification beat : synchronisation nocturne, webhooks, reprises avec plages explicites, exportations, exécutions de rapports, vérifications de parité, suivi des litiges.
Audit en ajout seulement
Un déclencheur de base de données rejette les mises à jour et les suppressions sur audit_events. Chaque action irréversible inscrit l’auteur, l’événement, la référence et sa clé d’idempotence.
La couche du modèle, franchement
Ce qui est offert aujourd’hui. Ce qui est en développement.
L’infonuagique de production exécute en privé, sur votre matériel, un modèle de langage à poids ouverts derrière la passerelle interne. Le propre modèle adapté à la finance de Finanly est en développement et viendra s’insérer dans la même passerelle — le contrat plan-valide-exécute qui l’entoure ne change pas.
- En service aujourd’hui
- Un modèle de langage à poids ouverts, hébergé en privé sur votre matériel derrière la passerelle interne
- En développement
- Le propre modèle de Finanly, spécialisé pour les finances (grands livres, vocabulaire du plan comptable, modèles de rapprochement, états); s’insère dans la même passerelle
- Entrée
- Langage naturel — posez la question comme vous le feriez à votre contrôleur — plus le vocabulaire gouverné comme outils
- Sortie
- Plans sémantiques (validés par core-api), suggestions de catégorisation, narration au-dessus des chiffres calculés
- Exécution
- Votre propre matériel; réseau interne seulement
- Accessibilité
- Appelé par core-api avec un JWT à durée de vie courte, limité au locataire
- Outils
- get_chart_of_accounts · get_cube_measures · resolve_period
- Web
- Recherche auto-hébergée pour les recherches d’enrichissement des fournisseurs — recherche, pas inférence
Contrôles de sécurité
Contrôles concrets, pas des badges.
La courte liste. Le traitement complet — modèle de déploiement, traitement des données, état de certification — se trouve sur la page Sécurité.
Isolation des locataires
Sécurité au niveau des lignes de Postgres sur chaque table de locataire, imposée pour le rôle d’application; le contexte du locataire est défini par requête à partir de la session.
Secrets
Les identifiants des connecteurs sont chiffrés avec AES-GCM; les données associées lient chaque texte chiffré à son locataire et à sa clé afin qu’il ne puisse pas être interverti.
Audit et idempotence
Événements d’audit en ajout seulement; Idempotency-Key obligatoire sur les points de terminaison à effet secondaire; les rejouements renvoient la réponse stockée, les charges utiles modifiées sont rejetées.
Réseau privé
Seul l’edge, l’interface utilisateur et core-api sont exposés. Les connecteurs, la passerelle du modèle, les travailleurs et le moteur de conformité n’ont aucun port hôte.
Rôles et droits
Les adhésions comportent un rôle par entreprise; chaque fonctionnalité est une clé inscrite vérifiée au point de terminaison et dans l’interface utilisateur; les forfaits les attribuent.
État de certification
Non certifié SOC 2. Les contrôles sont en place et documentés; la certification est à l’horizon. Nous l’indiquons clairement.
FAQ
Réponses directes
Que se passe-t-il quand une question ne peut pas être répondue?
Les demandes non prises en charge ou ambiguës reçoivent une explication ou une autre solution prise en charge, clairement circonscrite. Les réponses offertes dépendent des mesures actuelles, de la couverture des sources et des définitions examinées; les données manquantes ne sont pas remplacées par un zéro supposé.
Où le modèle s’exécute-t-il?
Sur le même hôte que la pile, derrière une passerelle interne sans port hôte. core-api l’appelle avec un jeton de courte durée lié à un locataire. Rien n’est envoyé à une API d’IA publique.
De quel modèle s’agit-il?
Aujourd’hui, un modèle polyvalent à poids ouverts; le modèle financier propre à Finanly est en développement. Nous nommons le modèle exact en conversation plutôt que dans le texte marketing.
La couche sémantique est-elle la même pour chaque surface?
Oui. Les états, Report Studio, les tableaux de bord et le modèle planifient tous à partir des mêmes cubes et mesures, de sorte qu’un nombre ne change pas selon l’endroit où vous le consultez.
Comment une entreprise est-elle tenue à l’écart d’une autre?
La sécurité au niveau des lignes dans Postgres impose l’isolation des locataires sous l’application; l’application filtre aussi explicitement. Les secrets sont chiffrés par locataire. Le modèle voit un seul locataire par appel.
Qu’est-ce qui est idempotent, exactement?
Chaque point de terminaison à effet secondaire — catégoriser, exporter, synchroniser, réévaluer — exige une Idempotency-Key. Un rejet reproduit la réponse stockée; le connecteur du grand livre utilise la même clé afin qu’une écriture soit créée une seule fois; une charge utile modifiée sous la même clé est rejetée.
Quelles sont les limites connues?
Les sens financiers dépendent des définitions examinées et de la couverture des sources. L’absence de coût ou d’historique peut rendre les marges et les mesures de durée indisponibles. Les questions IA complexes peuvent prendre des dizaines de secondes; un exemple réussi ne garantit pas le résultat pour chaque question.
