Marhire est une marketplace marocaine de location, lancée pour réunir trois marchés que personne ne couvrait sous un même toit : la location de voitures, l'affrètement de bateaux, et la réservation d'activités touristiques. La cible : voyageurs internationaux qui atterrissent à Casablanca, Marrakech ou Agadir, et résidents marocains qui réservent un week-end depuis leur téléphone. Le périmètre fonctionnel touche 6 villes et plus de 130 prestataires partenaires. L'enjeu de départ était clair : transformer un catalogue d'offres dispersées en une plateforme où la réservation se fait en moins de trois minutes, du choix de la voiture jusqu'à la confirmation de paiement.
Trois cas d'usage très différents partagent le même tunnel de réservation : louer un 4x4 à la semaine, affréter un bateau à l'heure, ou réserver une activité familiale à la demi-journée. Chacun a sa propre logique de tarification, ses créneaux, ses règles d'annulation. Côté backoffice, plus de 130 partenaires devaient pouvoir gérer eux-mêmes leur catalogue, leurs disponibilités et leur calendrier sans qu'on ait à intervenir. Le tout en multilingue (FR, EN, ES, DE, IT, NL, PL, PT, RU), avec un SEO local exploitable sur des requêtes du type « location 4x4 Marrakech » ou « bateau Agadir ».
Backend Laravel pour la robustesse métier : Eloquent pour les modèles de réservation, jobs en files d'attente pour les notifications, Cashier pour Stripe. Frontend React côté visiteur, sur une architecture pensée pour le SEO multilingue dès la première ligne de code : URLs traduites, balises hreflang, schema.org AutoRental. Stripe Checkout pour les paiements, en mode hosted pour éliminer la conformité PCI côté plateforme. MySQL en base, avec un index FULLTEXT sur les recherches géographiques et une stratégie de cache Redis pour les pages les plus visitées. Le panel partenaires est servi en backoffice Filament, ce qui a permis de livrer une administration complète sans réécrire un dashboard from scratch.
La plateforme est en production. Les partenaires gèrent leurs catalogues, disponibilités et réservations depuis leur espace. Le projet livre un parcours de réservation et une administration centralisée ; les volumes d’activité et performances commerciales ne sont pas présentés comme des résultats mesurés ici.
Une décision qu'on assume : avoir refusé d'utiliser un builder no-code de marketplace au profit d'un développement custom Laravel. Les builders du marché auraient permis un MVP en 4 semaines, mais aucun ne couvrait les trois verticales (auto, marin, expériences) avec la même logique de tunnel. Six mois plus tard, cette décision a payé : chaque ajout de fonctionnalité tient en quelques jours, sans dépendre d'une roadmap externe.