Delyo livre les repas et les colissans jamais perdre une commande.
Un dispatch qui n'oublie aucune commande, des notifications qui arrivent vraiment sur les téléphones, et des retraits Wave qui partent pour de bon. Ce prototype donne à voir les quatre interfaces de la plateforme.
4 interfaces, une application
Choisissez votre rôle pour explorer le prototype.
Application client
Commande de repas ou d'envoi de colis, paiement mobile money, suivi du livreur en temps réel sur la carte.
Ouvrir l'interfaceApplication livreur
Réception des courses avec compte à rebours, acceptation ou refus, navigation, portefeuille et retrait Wave.
Ouvrir l'interfaceApplication restaurant
File des commandes entrantes, temps de préparation, passage en prêt et remise au livreur.
Ouvrir l'interfaceSupervision back-office
Carte live de la flotte, journal de dispatch tentative par tentative, retraits Wave à arbitrer, tenue de charge.
Ouvrir l'interfaceCe que la reprise garantit
Quatre chantiers de fiabilisation sur la base de code existante React, Capacitor et Supabase.
Dispatch sans commande orpheline
Le livreur le plus proche est sollicité en premier. Refus, expiration et indisponibilité enchaînent automatiquement sur le suivant, avec verrouillage de ligne côté PostgreSQL pour interdire la double attribution.
Notifications push vérifiées
Chaque envoi APNs et FCM est tracé : accusé de réception, jeton expiré, autorisation refusée, application fermée. Les échecs déclenchent une réinscription du terminal.
Retraits Wave réels
Le portefeuille livreur passe du retrait simulé au virement sortant : idempotence, reprise sur échec, statut de transaction et validation humaine au back-office.
Tenue de charge jusqu'à 500 livreurs
Scénarios rejoués à 15 et 20 commandes simultanées, puis à volume simulé, avec analyse des plans d'exécution sur les requêtes chaudes du dispatch.
Scénarios de charge rejoués
Chaque exécution laisse une trace consultable et valide les critères d'acceptation un par un.
| Scénario | Dispatch p95 | Orphelines | Doubles attributions | Verdict |
|---|---|---|---|---|
| 15 commandes / 6 livreurs | 480 ms | 0 | 0 | Conforme |
| 20 commandes / 8 livreurs | 610 ms | 0 | 0 | Conforme |
| 20 commandes / 4 livreurs (refus en chaîne) | 1840 ms | 0 | 0 | Conforme |
| 50 commandes / 20 livreurs (projection) | 920 ms | 0 | 0 | Conforme |
| 200 commandes / 100 livreurs (simulé) | 1310 ms | 0 | 0 | À surveiller |
| 500 livreurs connectés (tenue de charge) | 1720 ms | 0 | 0 | À surveiller |