Étude de cas · Motobro
Un logiciel de gestion d’atelier et un site pour un garage moto indépendant.
De la réception du véhicule à la facturation, tout le fonctionnement repose désormais sur un système développé sur mesure et un site public assorti. L’objectif : que le mécanicien passe plus de temps sur les motos et moins dans la paperasse, et que le client sache toujours où en est sa moto.
- Client
- Motobro, garage moto indépendant
- Mission
- Application web de gestion d’atelier et site public
- Technologie
- Laravel 12, MySQL, API Billingo V3
- Site
- motobro.hu
En bref
Motobro est un garage moto indépendant dont nous avons organisé tout le fonctionnement, de la réception à la facturation, dans un système sur mesure et un site public assorti.
Le projet comprend deux parties liées : l’application de gestion d’atelier rendszer.motobro.hu et le site vitrine motobro.hu.
Le client et le défi
Le mécanicien de Motobro travaille depuis 2019 dans son propre atelier, avec ses propres outils, principalement sur des motos japonaises et allemandes de plus de 125 cm³. Un garage indépendant doit accomplir les mêmes tâches qu’un grand atelier, mais avec le temps d’une seule personne :
- enregistrer la moto et la panne à la réception, puis suivre le travail par client et par moto ;
- devis, calcul des pièces et de la main-d’œuvre, demande de validation ;
- informer le client et restituer la moto terminée ;
- facturer et suivre ce qui a été payé ;
- avoir une vision business de ce que chaque intervention a rapporté.
Jusque-là, ces étapes vivaient dans des outils séparés et dans sa tête. Il fallait les réunir en un seul endroit, adapté au travail quotidien du mécanicien, plutôt que de travailler autour d’un logiciel de gestion générique.
La solution : deux interfaces pour deux publics
Nous avons construit deux interfaces distinctes, car elles s’adressent à deux publics différents :
| motobro.hu | rendszer.motobro.hu | |
|---|---|---|
| Pour qui | Les futurs clients | Le mécanicien, l’accueil, le comptable et les clients existants |
| Rôle | Inspirer confiance, présenter les services, prise de contact | Tout le processus de l’atelier, de la fiche de travail à la facture |
| Conception | Site statique multipage | Application web Laravel avec base de données SQL |
Les deux sont reliés : le bouton « Espace client » du site mène directement à la page de connexion du système. Nous n’avons volontairement pas développé d’application mobile : le système est une application web responsive, qui fonctionne de la même façon sur téléphone, tablette et ordinateur, sans installation.
Le logiciel de gestion d’atelier
Au cœur du système se trouve la fiche de travail numérique. Chaque intervention suit un parcours en 19 étapes, du protocole de réception au diagnostic, au devis et à la réparation, jusqu’à la restitution et la facturation, et chaque changement d’état est journalisé.
Réception rapide
Enregistrement du client et du véhicule avec numéro de châssis, numéro moteur, cylindrée et échéance du contrôle technique, protocole de réception avec signature numérique.
Devis versionnés
Le client peut accepter ou refuser chaque ligne, et la validation peut se faire via un lien sécurisé par jeton, sans connexion.
Stock et agenda
Catalogue de pièces, stock, fournisseurs, dépenses et agenda avec contrôle des conflits.
Notifications automatiques
E-mails au client basés sur des modèles et liés à 24 événements, par exemple devis prêt, réparation terminée, rappel de paiement.
Facturation en un clic
La facture ou la demande d’acompte est générée depuis la fiche terminée via l’API Billingo V3, avec rapprochement des partenaires et gestion des avoirs.
Portail client
Le client voit ses motos et ses interventions, lance des demandes, valide des devis et échange avec l’atelier dans le système. Les réponses par e-mail rejoignent la bonne conversation via IMAP ou webhook.
Rôles et rapports
Chacun ne voit et ne fait que ce dont il a besoin. L’inscription des clients est validée par l’atelier, et le système signale les doublons.
| Rôle | Ce qu’il voit et fait |
|---|---|
| Propriétaire | Tout, y compris les prix d’achat, les rapports et la rentabilité |
| Accueil | Réception, fiches de travail, agenda, communication client |
| Mécanicien | Ses interventions, temps passé, diagnostic, pièces utilisées |
| Comptable | Factures, dépenses, rapports |
| Client | Uniquement ses propres données et interventions |
Le propriétaire voit en un seul endroit le chiffre d’affaires, la répartition pièces/main-d’œuvre, la marge par intervention, les meilleurs clients et services, l’ancienneté des factures impayées, la performance des mécaniciens et la saisonnalité.
Le site public
motobro.hu est un site sombre et haut de gamme aux accents orange, qui transmet l’ambiance de l’atelier et l’expertise du mécanicien. Il comporte cinq pages :
- Services : neuf services présentés séparément, de l’entretien général à la réfection moteur et au rayonnage de roues, jusqu’aux demandes sur mesure, rédigés à partir des textes de l’atelier et adaptés au ton du site.
- À propos : la vraie histoire du mécanicien, de sa première moto sportive enfant jusqu’à son propre atelier, car pour un garage la confiance est l’argument principal.
- Vidéos : le fil de la page Facebook intégré en direct, avec des vidéos mises en avant dans un design de cartes sur mesure.
- Contact : coordonnées, carte et formulaire traité côté serveur, avec protection anti-spam et validation des saisies. Il n’ouvre pas de client mail, et la confirmation s’affiche sur la page.
Le site est en HTML, CSS et JavaScript purs, sans étape de build. Il fonctionne sur ordinateur, tablette et téléphone, avec des meta descriptions et des données structurées AutoRepair pour le SEO.
Technologie et hébergement
La technologie a été dictée par l’hébergement : le système tourne sur un hébergement mutualisé standard (cPanel), sans besoin de VPS, Redis, Docker ou Node en production.
| Couche | Solution |
|---|---|
| Application | Laravel 12, PHP 8.2+ |
| Base de données | MySQL / MariaDB |
| Interface | Templates Blade, CSS et JavaScript sur mesure |
| Authentification | Deux espaces de connexion et de droits distincts (équipe, clients), double authentification |
| Facturation | API Billingo V3 |
| Génération de PDF côté serveur (devis, fiche de réception) | |
| Notifications basées sur des modèles, réponses entrantes via IMAP | |
| Tâches planifiées | cron : rappels de paiement et d’entretien, sauvegarde quotidienne |
| Tests | Suite PHPUnit couvrant les droits, le cycle de vie des fiches, la facturation et la séparation des données clients |
Un guide de mise en production pas à pas a également été livré, ainsi que quatre manuels utilisateur par rôle : propriétaire et accueil, mécanicien, comptable et portail client.
Sécurité et confidentialité
Le système traite des données personnelles et financières : la protection a donc été intégrée à la structure, et non ajoutée après coup.
- Contrôle des droits centralisé : chaque action passe par une couche d’autorisation commune, et rôles et permissions se configurent en base de données.
- Séparation des données clients : un client ne peut pas accéder aux données d’un autre, même en modifiant un identifiant ou une URL, ce que vérifie un test automatisé.
- Protection du prix d’achat : le champ
cost_pricen’est même pas récupéré par les requêtes de facturation : il ne peut donc structurellement ni apparaître sur une facture, ni être visible par un autre rôle que le propriétaire. - Double authentification pour l’équipe, journal d’audit des actions sensibles : qui, quoi, quand, depuis quelle IP.
- Sauvegarde automatique quotidienne via le planificateur de l’hébergement.
- Consentement explicite à l’inscription client, avec validation du compte par l’atelier.
Enseignements
Quatre leçons de ce projet que j’applique à chaque développement similaire.
L’hébergement détermine la technologie
Les limites de l’hébergement mutualisé (pas de file d’attente, pas de websockets) et la planification par cron ont été prises en compte dès le départ : rien n’a dû être repensé à la mise en ligne.
Une matrice des rôles dès le départ évite bien des corrections
Grâce à une gestion centralisée des droits en base de données, un nouveau rôle ou une nouvelle permission s’ajoute sans modifier le code.
Le vrai contenu vaut mieux que le spectaculaire
Le point fort du site est l’histoire du mécanicien et la description réelle des services. Les photos et vidéos sont à compléter avec les propres images de l’atelier.
La fraîcheur des dépendances compte
À la mise en production, il est apparu que toutes les versions disponibles de Laravel 11 faisaient l’objet d’une alerte de sécurité connue, et Composer les a bloquées. Le système repose donc sur Laravel 12, une version supportée.
Prochaines étapes
- Prise de rendez-vous en ligne et vue agenda hebdomadaire graphique.
- Notifications SMS, QR code sur les fiches, codes-barres pour les pièces.
- Import automatique des vidéos Facebook.
- Export Excel pour le comptable, sauvegarde vers un stockage distant.
Votre activité repose encore sur des outils séparés et votre mémoire ?
Si vos processus quotidiens sont éparpillés entre tableurs, e-mails et votre tête, voyons comment en faire un seul système adapté à votre façon de travailler, et non l’inverse.