Les composants
Application Next.js
App Router + React Server Components. Les actions serveur et les routes
/api/ contiennent la
logique métier.Base de données opérationnelle
PostgreSQL (Drizzle ORM) stocke les entités gérées par l’application : plans, règles, alertes,
étiquettes, paramètres, audit.
Analyse (Databricks)
Les couches gold/silver contiennent les données de détail nettoyées et prêtes à l’emploi métier pour l’analyse,
les prévisions et les décisions.
Deux magasins de données, deux rôles
- PostgreSQL (opérationnel) — tout ce que les utilisateurs créent dans Solya : plans d’inventaire et
articles, règles métier et jeux de règles, alertes, étiquettes et règles de tagging, workflows, paramètres,
modèles de navigation et le journal d’audit. Limité à l’organisation via
organizationId. - Databricks (analyse) — tout ce qui est ingéré et calculé : ventes, commandes, mouvements, stock, dimensions, résumés, prévisions et vecteurs de décision. Rempli par la plateforme données (ETL des systèmes POS) et lu par l’application pour les tableaux de bord, KPIs, la recherche, les alertes et les recommandations. Voir Modèle de données.
Flux de demande
- Un utilisateur (navigateur) ou une intégration (token API) appelle une action serveur ou une
route
/api/. - L’appel est authentifié et résolu en une organisation (voir Authentification & multi-tenancy).
- Les services exécutent la logique métier — lectures/écritures PostgreSQL et/ou requêtes Databricks — et les règles métier encadrent les mutations où applicable (voir Moteur de règles métier).
- Les réponses utilisent une enveloppe cohérente avec des codes d’erreur stables (voir Codes d’erreur).

