Plateforme opérationnelle · v1.4

Contrôle total de votre flotte, en temps réel

Carsalia est le système central de gestion opérationnelle pour les entreprises de location de véhicules. États, contrats, facturation et supervision en un seul endroit.

azizi fleet · dashboard
Disponibles
47 veh.
Loués
68 veh.
En atelier
12 veh.
Bloqués
13 veh.
VéhiculeCommercialOpérationnelJours
17-A-8841
Dacia Logan · Blanco
Loué
Livré
Client
04-B-2219
Renault Clio · Gris
Disponible
READY
32-C-5507
Peugeot 208 · Rojo
RESERVED
En nettoyage
+2
09-D-1138
Hyundai i10 · Azul
BLOCKED
En réparation
Revenus / 7j · MAD
Occupation flotte · %
68%
Traçabilité complète
Chaque changement enregistré · utilisateur · horodatage · GPS
140+
Véhicules en flotte
11+
États opérationnels
<300ms
Temps de réponse
99%
Disponibilité cible

Véhicules prêts à la location

Consultez l'état réel de chaque véhicule en temps réel. Les agents voient la disponibilité, le tarif et l'état opérationnel depuis n'importe quel appareil.

Dacia Logan DISPONIBLE
foto del vehículo
Económico · A
Dacia Logan
5 places
Manual
Climatizador
Diesel
Renault Clio DISPONIBLE
foto del vehículo
Compacto · B
Renault Clio
5 places
Automático
Aire acond.
Gasolina
Peugeot 208 RÉSERVÉ
foto del vehículo
Compacto · B
Peugeot 208
5 places
Manual
Climatizador
Gasolina
Dacia Duster DISPONIBLE
foto del vehículo
SUV · D
Dacia Duster
5 places
Manual
Climatizador
Diesel 4×4
Volkswagen Polo EN COURS
foto del vehículo
Berlina · C
Volkswagen Polo
5 places
Automático
Climatizador
Gasolina
Hyundai Tucson DISPONIBLE
foto del vehículo
SUV · D
Hyundai Tucson
5 places
Automático
Climatizador
Diesel
Hyundai i10 DISPONIBLE
foto del vehículo
Económico · A
Hyundai i10
4 places
Manual
Aire acond.
Gasolina
Toyota Yaris DISPONIBLE
foto del vehículo
Berlina · C
Toyota Yaris
5 places
Automático
Climatizador
Híbrido
Toyota RAV4 DISPONIBLE
foto del vehículo
SUV Premium · E
Toyota RAV4
5 places
Automático
Climatizador
Híbrido 4×4

Une plateforme, tout le métier

De la gestion de flotte à la facturation et supervision. Sans logiciel externe pour le cœur de métier.

Gestion de Flotte
Contrôle complet de chaque véhicule : immatriculation, châssis, catégorie, attributs commerciaux et états en trois dimensions indépendantes.
États commerciaux États opérationnels Localisation
Réservations & Contrats
Gestion des contrats de courte, moyenne et longue durée. Différenciation entre particuliers, entreprises et tiers avec historique complet.
Courte durée Entreprises Conducteurs additionnels
Facturation & Paiements
Émission de factures en MAD avec TVA 20% configurable. Enregistrement des encaissements, dépôts, remboursements et soldes.
carsalia.com Depósitos Saldos
Contrôle des États
Machine à états avec 11 transitions validées en backend. Traçabilité complète avec timestamp UTC, utilisateur, coordonnées GPS et appareil.
Audit append-only GPS RBAC
Tableau de Bord
Dashboard en temps réel avec SSE. Situation actuelle de la flotte, indicateurs d'exploitation, revenus et occupation. Mise à jour sans rechargement.
Temps réel · SSE KPIs Filtres
App Mobile Employés
React Native + Expo pour iOS et Android. Mode hors ligne avec synchronisation, checklist numérique livraison/retour, OCR immatriculations et compression photos.
iOS + Android Hors ligne OCR immat.

Le véhicule au cœur du système

Pas seulement la réservation. Chaque véhicule a son cycle complet maîtrisé, de la livraison jusqu'à être prêt pour le prochain client.

01
Parking · Disponible
Le véhicule est en parking, révisé et prêt à être proposé.
02
Réservation confirmée
El cliente reserva. El vehículo pasa a RESERVED para la franja acordada.
03
Livraison avec checklist
L'employé enregistre la livraison depuis l'app. Checklist numérique avec photos et signature.
04
En cours · LOUÉ
Véhicule en possession du client. Contrat actif, localisation : Client.
05
Restitution
Enregistrement du retour, dommages géolocalisés et encaissement du dépôt si applicable.
06
Nettoyage · Révision
Le véhicule passe par les processus internes avant de réintégrer le circuit.
07
PRÊT
Solo cuando esté revisado y marcado como listo vuelve a estar disponible.

Trois dimensions de contrôle indépendantes

Cada vehículo tiene en todo momento un estado comercial, un estado operativo y una ubicación. Las reglas de coherencia se validan automáticamente en el backend.

Commercial
Opérationnel
Disponible
Peut être proposé et réservé sans restrictions pour la période consultée.
47
Réservé
Réservation future confirmée pour une date ou plage concrète.
18
Loué
Actuellement livré à un client et en usage actif.
68
Bloqué
Ne peut pas être proposé pour raison interne, technique ou administrative.
7

Règles de cohérence automatiques

Le système valide chaque transition et rejette les combinaisons incohérentes avec HTTP 422. Aucun véhicule ne redevient disponible sans passer par les processus internes.

Si l'état opérationnel n'est pas READY, l'état commercial ne peut pas être AVAILABLE.
Si l'état commercial est RENTED, l'opérationnel doit être DELIVERED et la localisation, Client.
Si la localisation est Atelier, l'état commercial est forcément BLOCKED.
Après retour, le véhicule ne revient jamais automatiquement à disponible — processus interne obligatoire.
Toute transition non listée dans la matrice est automatiquement rejetée avec HTTP 422.

Chaque personne, exactement ce dont elle a besoin

Cinq profils avec permissions granulaires. Traçabilité de chaque action par utilisateur, appareil et horodatage.

🔧
Travailleur
Opérations terrain
  • Créer et gérer des réservations
  • Enregistrer livraisons et retours
  • Modifier les états opérationnels
  • Enregistrer nettoyages et incidents
👤
Client
Accès consultation
  • Voir ses réservations et contrats
  • Consulter ses factures
  • Suivre sa location en cours
  • Portabilité et suppression de données
🏢
Entreprise cliente
Gestion corporative
  • Contrats et facturation groupée
  • Historique de sa flotte assignée
  • Gestion des conducteurs autorisés
  • Rapports de consommation
📋
Réviseur
Supervision et validation
  • Valider les changements d'état
  • Contrôler la situation de la flotte
  • Gérer les incidents ouverts
  • Consulter les statistiques complètes
⚙️
Administrateur
Configuration totale + MFA TOTP
  • Gérer utilisateurs et permissions
  • Configurer les référentiels et catalogues
  • Paramétrer les prix et règles
  • Accès à l'audit complet

TypeScript de bout en bout

Un stack unifié qui partage types, validations et logique métier entre backend, frontend et application mobile.

Backend
NestJS 11
API REST avec Prisma 6 + PostgreSQL 16. Rate limiting par endpoint, SSE pour dashboard en temps réel.
TypeScript BullMQ
Frontend web
Next.js 15
App Router + React Server Components. TailwindCSS + shadcn/ui. Support RTL complet pour l'arabe.
RSC RTL
App mobile
React Native
Expo SDK 52 + EAS Build. Distribué sur Google Play et App Store. Mode hors ligne avec vector clocks.
iOS Android
Infrastructure
Docker + Traefik
Docker Compose v2 + Traefik v3. Redis 7 pour cache et files. GitHub Actions pour CI/CD continu.
Ubuntu Redis 7
Sécurité
✓ MFA TOTP (Admin/Réviseur)
✓ Chiffrement PII (AES-256-GCM)
✓ WAF Cloudflare + OWASP CRS
✓ Protection brute-force au login
✓ Audit append-only avec createdBy
✓ Conformité Loi 09-08 (CNDP)

Pipeline tarifaire en 8 étapes, conforme à la norme marocaine

Chaque calcul de prix est immuable, tracé et stocké comme snapshot JSON dans la réservation. Toute intervention manuelle est enregistrée avec utilisateur, montant d'origine et motif.

{[ ['01','Tarif de base','Par véhicule ou catégorie'], ['02','Saisonnalité','Majoration haute saison'], ['03','Durée','Remise longue durée'], ['04','Type client','Tarif entreprise, particulier'], ['05','Canal / promo','Partner, code promo'], ['06','Extras','Assurance, GPS, siège enfant'], ['07','Taxes','TVA 20% configurable (10%/14%)'], ['08','Snapshot','JSON immuable enregistré'], ]}
01
Tarif de base
Par véhicule ou catégorie
02
Saisonnalité
Majoration haute saison (juil-août +25%)
03
Durée
Remise longue durée (-10% à partir de 7j)
04
Type client
Tarif entreprise, particulier, partner
05
Canal / promotion
Code promo, promo Ramadan, partenaire
06
Extras & assurances
GPS, siège enfant, conducteur additionnel
07
Taxes & arrondi
TVA 20% (10%/14% configurable), ROUND_HALF_UP
08
Snapshot immuable
Champ JSON dans réservation — non modifiable
FACTURE
AZIZI/2026/000247
azizi.carsalia.com
ICE: 002345678000012
Fès, Maroc · Avril 2026
Client
Mohamed Benali
CIN: AB234567
Véhicule
Dacia Logan
17-A-8841
DésignationJoursMontant
Location Dacia Logan3960,00
Assurance Premium3240,00
GPS embarqué390,00
Sous-total HT1 075,00 DH
TVA 20%215,00 DH
Total TTC1 290,00 DH
Dépôt versé: 480 DH · Solde à régler: 810 DH
Devise
MAD · Dirham
TVA
20% (10/14% opt.)
Mention légale
ICE obligatoire
Numérotation
SÉR/AAAA/NNNNNN
Langue facture
Bilingue FR/AR
PDF
BullMQ async

iOS & Android — officiellement en store

React Native + Expo SDK 52. Distribuée via Google Play Store et Apple App Store. Conçue pour les zones à couverture intermittente avec mode offline complet.

📋
Checklist digital
Livraison & retour avec signature tactile client + employé
📸
Photos dommages
Géolocalisées, compressées 1080p JPEG 80%
🔍
OCR matrículas MA
Lecture caméra + regex formats maroc. (12345-A-6, أ 12345)
📡
Offline-first
CQRS + vector clocks, sync auto au retour réseau
🔒
Biométrie
FaceID / TouchID obligatoire. Mode kiosk pour livraisons
🔄
OTA Updates
EAS Update — correctifs sans passer par les stores
Google Play
App Store
9:41●●●● WiFi
Livraison · 17-A-8841
Carrosserie avant
Carburant (3/4)
Kilométrage: 42.341
Signature client…
📍GPS: 34.0332° N, -5.0000° W
Confirmer la livraison
3 actions en attente sync


De la Phase 0 à la maturité opérationnelle

Estimation avec 2 développeurs fullstack TypeScript senior + 0,75 FTE DevOps. Sprints de 2 semaines.

PhaseSprintsContenu principalRésultat
0
3 sprints Analyse, monorepo, schema Prisma, tramitación CNDP, comptes Apple/Google, infra Docker, MFA, RBAC Infra prête · CNDP initié
0.5
1 sprint Pilote interne — 10 véhicules, 5 employés. Feedback opérationnel réel, ajustements UX mobile Validation terrain
1
5 sprints Auth, flotte, états, réservations basiques, app mobile v1 publiée (TestFlight / Internal Testing) Contrôle opérationnel
2
2 sprints Nettoyage, maintenance préventive, dashboard SSE temps réel, checklist livraison/retour complet Opérations complètes
3
3 sprints Contrats, facturation MAD/TVA, paiements, PDF, conducteurs additionnels, assurances Cycle admin complet
4
3 sprints Pricing avancé, partners, commissions, portail client, PWA Expansion commerciale
5
2 sprints GPS véhicule, SMS, paiements en ligne, observabilité avancée, évaluation HA Maturité opérationnelle
19
Sprints total
~9,5
Mois estimés
2
Devs fullstack TS
0,75
FTE DevOps
La Phase 0 et le pilote 0.5 s'amortissent en évitant les arrêts de production pour non-conformité légale ou erreurs opérationnelles réelles.

Prêt à transformer la gestion de votre flotte

Un système pensé pour la réalité du métier : rapide, traçable et conçu pour grandir avec vous dès les 140 premiers véhicules.