Kinnashy (كناشي)
Une plateforme de commerce en marque blanche pour les vendeurs de biens numériques en Mauritanie. Chaque vendeur a sa propre boutique à sa marque, une application installable et des paiements contrôlés contre la fraude, construite autour d'une conviction : ne pas concurrencer les vendeurs, les équiper.
Des milliers de vendeurs. Une boîte WhatsApp chacun. Zéro infrastructure.
Le marché mauritanien des biens numériques (crédits de jeu, Netflix, cartes cadeaux) tourne presque entièrement sur WhatsApp. Les vendeurs jonglent avec des captures de paiement, perdent des commandes dans les fils de discussion, et n'ont ni statistiques, ni gestion de stock, ni image professionnelle. Les plateformes existantes (Chenguity, Ech7anly) ne les aident pas : ce sont des places de marché qui disent « venez acheter chez nous », et qui concurrencent les vendeurs au lieu de les servir. Le nom dit l'intention : un كنّاش est le carnet papier que tient chaque commerçant. Kinnashy, c'est ce carnet, reconstruit en infrastructure.
Kinnashy ne vend pas de cartes.
Kinnashy équipe les vendeurs.
Une plateforme, plusieurs marques : une boutique au nom du vendeur
J'ai conçu et construit une plateforme multi-tenant où le vendeur obtient une boutique à sa marque (nom, logo, couleurs), un tableau de bord PWA installable avec notifications push, un catalogue pré-rempli de 40 produits du marché, et un filtre OCR qui écarte les captures de paiement avant même qu'elles ne lui parviennent. Créer la boutique d'un nouveau vendeur prend trois minutes : je le fais en direct, devant le prospect, pendant le rendez-vous commercial.
Recherche terrain et démontage de trois concurrents
Avant de faire grandir quoi que ce soit, je me suis assis avec de vrais vendeurs et j'ai audité les trois acteurs qui façonnent les attentes des utilisateurs : اشحنلي (application mobile, plus de 40 produits, variantes par région), Ech7anly (Algérie, WooCommerce) et Chenguity (API Bankily, livraison automatique). Ce démontage a fixé le niveau : navigation par catégories, packs de variantes, badges de livraison instantanée. Et il a révélé le manque qu'aucun ne comble : les vendeurs qui veulent leur propre marque, pas celle d'une place de marché.
D'une boutique à une plateforme : sans casser le premier client
Le MVP servait un seul vendeur. Passer en multi-tenant voulait dire migrer chaque table vers une portée par vendeur, isoler les tableaux de bord, générer un manifeste PWA par vendeur, et le faire sans rien détruire sur une base de données en production. L'audit a mis au jour une vraie fuite de données entre vendeurs dans l'API de relève des commandes, avant même qu'un deuxième vendeur ne se connecte. La marque blanche a suivi : nom de marque, couleur et logo deviennent des champs en base, et une nouvelle boutique à la marque du vendeur se crée depuis un panneau d'administration en trois minutes.
Concevoir pour des vendeurs qui ne sont pas des techniciens
Regarder un vrai vendeur créer ses produits a révélé la vérité : il a nommé un produit « Netflix 1 mois » puis a ajouté une variante « 3 mois » en dessous, parce que le texte d'exemple du formulaire le lui avait appris. J'ai reconstruit la création de produit en assistant piloté par catégorie (les abonnements reçoivent des durées prédéfinies, les crédits de jeu un champ Player ID, les cartes cadeaux une mention de région), livré un catalogue de référence de 40 produits pour que les vendeurs activent au lieu de créer, et rendu chaque texte d'exemple contextuel.
Un portier OCR pour les captures de paiement
Ici, les paiements sont des virements par application bancaire prouvés par capture d'écran, et les captures se falsifient ou se réutilisent. J'ai construit un filtre Google Vision qui note chaque envoi sur des signaux locaux réels (noms de banques, montants en MRU, identifiants de transaction, fraîcheur de l'horodatage), rejette les preuves périmées ou dupliquées par empreinte de texte, et affiche au vendeur un badge de verdict. Le vendeur garde toujours le dernier mot : le filtre écarte le bruit, il ne valide jamais l'argent.
La plateforme ne touche jamais à l'argent
Les paiements vont directement sur le compte bancaire du vendeur ; Kinnashy ne fait que vérifier. Centraliser les fonds aurait voulu dire devenir un agrégateur de paiement régulé : un autre métier, une autre licence, et exactement ce que craint un vendeur méfiant. De l'infrastructure, pas de la fintech.
Marque blanche dès le premier jour : « vos clients restent les vôtres »
La peur la plus profonde d'un vendeur face aux plateformes, c'est de leur perdre ses clients. Chaque boutique porte sa marque ; la mienne n'apparaît que dans un discret « powered by ». Ce qui emporte la décision, ce n'est pas une liste de fonctionnalités : c'est de voir son propre nom sur une application qui marche, trois minutes après l'avoir demandé.
Le filtre OCR est un portier, pas un juge
Une capture rejetée déclenche une UX qui propose d'abord de réessayer ; un lien de contournement n'apparaît qu'après le troisième échec, et signale la commande pour vérification manuelle. Bloquer sur une incertitude machine fait perdre de vraies ventes ; signaler transforme le filtrage de la fraude en temps gagné pour le vendeur.
Activer, pas créer
Les vendeurs font des fautes de frappe, oublient les icônes et structurent mal leurs produits : le catalogue de référence livre donc 40 produits prêts à l'emploi, avec icônes, variantes et champs obligatoires. Le vendeur active et fixe ses prix ; il ne part de zéro que pour le produit rare que le catalogue ne connaît pas.
Un concept, une source de vérité
L'ancien interrupteur produit « instantané ou manuel » contredisait le champ de type de livraison plus récent, ce qui laissait les vendeurs configurer des produits impossibles. J'ai supprimé l'interrupteur et tout dérivé d'un seul champ. Quand deux réglages peuvent se contredire, l'un des deux est un bug qui attend son utilisateur.
Ce produit a été construit en solo avec une méthode augmentée par l'IA : stratégie, code et analytics, chacun avec le bon outil :
Cette discipline a rattrapé ce que la vitesse aurait livré : une fuite de données entre vendeurs, un échec silencieux de build du service worker, et une commande de réinitialisation de base à une touche d'effacer la production.
Chaque décision produit ci-dessus est la mienne. L'IA a accéléré l'exécution ; elle n'a jamais décidé.
