Architecture du système
Cette page présente Nadigit IMS composant par composant : ce que fait chacun et comment ils collaborent. Elle s'adresse aux administrateurs système et aux intégrateurs qui préparent une installation ou une intégration. Le détail de l'installation se trouve dans Installation.
Vue d'ensemble
Tous les composants s'exécutent dans des conteneurs Docker, sur un seul serveur. Un seul point d'entrée reçoit le trafic : le reste n'est pas exposé directement.
Composants
| Composant | Rôle | Technologie |
|---|---|---|
| Console web | L'interface utilisée dans le navigateur, en français, anglais, arabe et espagnol | Angular |
| Services applicatifs (API) | Toute la logique métier : stock, ventes, achats, caisse, finance, rapports, documents financiers, NadiPilot, intégrations | Java, Spring Boot |
| Authentification | Comptes, connexion, mots de passe, rôles ; page de connexion aux couleurs de Nadigit IMS | Keycloak (OpenID Connect) |
| Données de gestion | Articles, stocks, commandes, paiements, clients, fournisseurs, paramètres | PostgreSQL |
| Identités | Utilisateurs et rôles, séparés des données de gestion | PostgreSQL |
| Point d'entrée HTTPS | Reçoit tout le trafic, chiffre les échanges, oriente chaque requête vers le bon composant | Nginx, certificats Let's Encrypt ou fournis |
| Documents et licence | Factures et documents générés, fichiers téléversés, licence active | Stockage persistant du serveur |
Comment une requête circule
- L'utilisateur ouvre la console web : le navigateur la charge depuis le point d'entrée HTTPS.
- À la connexion, la console redirige vers le service d'authentification, qui vérifie l'identifiant et le mot de passe puis délivre un jeton d'accès de courte durée.
- Chaque appel de la console aux services applicatifs porte ce jeton. Les services vérifient sa signature, puis les rôles de l'utilisateur et l'organisation active avant de répondre.
- Les services lisent et écrivent les données de gestion. Les documents générés (factures, reçus, rapports) sont conservés dans le stockage persistant.
Services externes
Aucun n'est obligatoire. Chacun s'active dans les paramètres et ne reçoit que ce qui est nécessaire à sa fonction.
| Service | Quand il est utilisé |
|---|---|
| Serveur de licences Nadigit | Activation par clé d'enregistrement et vérification en ligne. Une licence fichier fonctionne sans lui. |
| Fournisseur d'IA | NadiPilot et l'extraction des factures, si l'IA est activée ; un modèle local (Ollama) garde les données sur votre réseau. Voir Configuration. |
| Recherche web | Tendances de marché de NadiPilot (Enterprise). |
| E-mail, Telegram, WhatsApp | Notifications et alertes. |
| Boutiques en ligne | Intégration e-commerce (Enterprise). Voir Intégration e-commerce. |
Données et organisations
- Une installation, une base de données de gestion. Les données restent sur le serveur où Nadigit IMS est installé.
- Organisations (Enterprise). Une installation peut gérer plusieurs sociétés. Chaque organisation a ses propres entrepôts, magasins, catalogue, clients, fournisseurs, stocks, ventes, achats et finances ; les utilisateurs sont communs à l'installation et accèdent aux organisations dont ils sont membres. Voir Sécurité et protection des données.
- Évolution du schéma. À chaque mise à jour, la base est migrée automatiquement au démarrage ; une migration qui échoue arrête le démarrage au lieu de laisser tourner l'application sur une base incohérente.
Multilingue
L'interface est disponible en français, anglais, arabe et espagnol, avec l'écriture de droite à gauche pour l'arabe. La langue des documents générés (factures, reçus, e-mails) se règle séparément, pour l'organisation. Voir Langue des documents.
Évolutivité
La même architecture sert du commerce avec un seul point de vente jusqu'à l'entreprise qui gère plusieurs sociétés, entrepôts et magasins. Ce qui change d'une formule à l'autre, ce sont les fonctions et les limites (utilisateurs, entrepôts, magasins), pas l'installation. Voir Licences et formules.