Sommaire
L'essentiel
- Une marketplace B2B pour quatre publics : cédants, repreneurs, partenaires et équipe interne.
- La liasse fiscale est lue par OCR pour préremplir l'annonce et calculer une valorisation.
- La valorisation croise actif net corrigé, multiple d'EBE et DCF, avec rapport PDF et annexes.
- Les paiements passent par Stripe sur le web et par l'achat intégré dans les apps, avec les mêmes droits en base.
- Site, API, applications iOS et Android et back-office forment un seul système.
Vendre une entreprise ne se fait pas comme on vend une voiture. Il faut rester discret, trouver un repreneur qui a le bon budget et le bon projet, donner un prix crédible et être accompagné par des professionnels. Entreprises à Vendre, édité par SWING FINANCES, réunit tout cela sur une seule plateforme : un site web, une API et des applications iOS et Android. J'en ai mené le développement complet, en tant que développeur fullstack principal.
Une marketplace B2B à quatre publics
La plateforme met en relation des personnes qui n'ont pas les mêmes attentes :
- Le cédant publie gratuitement son annonce, suit ses statistiques et choisit à qui il répond.
- Le repreneur recherche une entreprise, publie sa propre annonce d'achat avec ses critères et paie l'accès aux coordonnées, à l'unité avec des crédits ou par abonnement.
- Le partenaire (expert-comptable, avocat, courtier, agent immobilier, assureur) a une vitrine dans l'annuaire et reçoit des demandes.
- L'équipe modère, suit l'activité et gère les commerciaux depuis un back-office complet.
Chaque rôle a son propre espace, sur le web comme dans l'application, avec ses écrans, ses paiements et ses notifications.
Le parcours, de l'annonce à la vente
- Le cédant dépose son annonce en plusieurs étapes. Il peut la préremplir à partir de sa liasse fiscale.
- Une assistante, Emma, relit l'annonce avant publication : elle note ce qui manque, repère les informations qui trahiraient l'identité de l'entreprise et propose un titre et une description.
- Le repreneur trouve l'annonce grâce aux filtres (région, secteur, prix, chiffre d'affaires) ou reçoit une alerte grâce à une recherche sauvegardée.
- Il obtient les coordonnées du cédant avec un crédit ou son abonnement. Une conversation s'ouvre automatiquement.
- Les deux parties échangent dans la messagerie, jusqu'à la visite.
- Le cédant conclut la vente depuis la conversation : l'annonce passe au statut « vendue », avec l'acheteur retenu, et sort des résultats.

Les fonctions notables
Côté cédant
- Tableau de bord des annonces : actives, en attente, vues totales et contacts reçus.
- Assistante Emma : score de complétude, détection des emails, numéros de téléphone, SIRET et adresses web glissés dans le texte, estimation indicative à partir des prix des annonces du même secteur.
- Liste des repreneurs correspondants, filtrable par département, région, secteur et budget, avec un accès dédié.
- Fermeture, réactivation et renouvellement des annonces.
- Valorisation de l'entreprise à partir de la liasse fiscale, avec rapport PDF.
Côté repreneur
- Annonce d'achat visible des cédants : budget, chiffre d'affaires recherché, départements, secteurs.
- Favoris, recherches sauvegardées avec alertes, historique des contacts et factures.
- Crédits à l'unité ou abonnement Premium, qui débloque trois régions au choix.
- Badge « Pépite d'Or » attribué par l'équipe sur les annonces les plus intéressantes, avec une page dédiée.
Côté partenaires et équipe
- Annuaire des partenaires avec vitrine, avis, likes, QR code et statistiques (vues, clics sur les coordonnées, courbe des 7 derniers jours).
- Demandes d'évaluation et de financement transmises aux bons interlocuteurs.
- Back-office : tableau de bord chiffré, modération, SEO par page, newsletter, modèles d'emails, publicités, historique des actions, articles de blog générés avec l'IA.
- Espace commercial avec calcul automatique des commissions.
- Widget à intégrer dans le site ou le CRM d'une agence pour publier ses annonces sur la plateforme sans les ressaisir.



Les difficultés techniques et leurs solutions
Lire une liasse fiscale de façon fiable
Une liasse fiscale arrive sous toutes les formes : PDF texte, PDF scanné, photo. La plateforme l'envoie à un serveur OCR commun, qui la lit page par page et renvoie chaque exercice avec des rubriques normalisées, les cases Cerfa et des contrôles (SIREN, bilan équilibré). Ce traitement est asynchrone : l'API interroge le serveur jusqu'au résultat, dans une limite de temps. Si le serveur est indisponible, un second chemin extrait le texte du PDF et le structure avec OpenAI, en le signalant comme tel. L'utilisateur vérifie toujours les valeurs proposées : aucune annonce n'est publiée automatiquement.
Une valorisation qui s'explique
Le moteur de valorisation ne donne pas un chiffre sorti de nulle part. Il croise trois méthodes :
- Actif net corrigé (ANC), à partir du dernier bilan ;
- Multiple d'EBE normalisé, avec des multiples choisis selon le code NAF et un contrôle par le chiffre d'affaires ;
- Flux de trésorerie actualisés (DCF), sur un horizon et avec un taux réglables depuis l'administration, plus une prime selon la taille et la qualité des données.
Il analyse la qualité des données, réconcilie les méthodes en une fourchette basse et haute avec une valeur retenue, émet des alertes quand un résultat paraît fragile et calcule un plan de financement. Les informations de l'entreprise sont complétées par son SIRET grâce à l'API publique Recherche Entreprises. Le résultat est livré en PDF : un rapport global et trois annexes techniques.

Deux circuits de paiement qui doivent dire la même chose
Sur le web, Stripe gère les paiements uniques et les abonnements mensuels ou annuels, avec un webhook dont la signature est vérifiée et des factures PDF générées automatiquement. Dans les applications, les règles d'Apple et de Google imposent l'achat intégré pour les contenus numériques. Les achats passent donc par RevenueCat, dont le webhook, protégé par un secret, met à jour les mêmes droits en base : crédits, Premium repreneur, accès aux acheteurs côté cédant. Chaque transaction est enregistrée avec son identifiant pour ne jamais créditer deux fois le même achat.
Confidentialité et sécurité
- Connexion par email, Google, Apple ou Facebook, avec validation de l'email par code.
- Limitation des tentatives de connexion : au-delà de 7 essais, il faut attendre 15 minutes.
- Messagerie avec archivage, signalement d'une conversation et blocage d'un utilisateur.
- Widget CRM authentifié par une clé publique limitée à des domaines autorisés, ou par une clé secrète conservée uniquement sous forme d'empreinte.
Une application qui reste à jour sans repasser par les stores
L'application utilise les mises à jour à distance d'Expo : une correction peut arriver sur les téléphones sans nouvelle version sur les stores. Elle gère aussi un écran de mise à jour obligatoire, un écran de maintenance et un écran hors connexion. La messagerie se rafraîchit toutes les 5 secondes quand une conversation est ouverte, et les notifications push sont réglables par l'utilisateur.
La pile technique
- Site et back-office : PHP 7.4 sans framework, MySQL, Tailwind CSS, JavaScript natif, sélecteur de 4 langues (français, anglais, espagnol, allemand).
- API mobile : endpoints PHP en JSON, partagés par l'application iOS et Android.
- Applications : React Native et Expo, React Navigation, Stripe, RevenueCat, notifications Expo et Firebase, interface en français et en anglais.
- Services : Stripe, RevenueCat, OpenAI, serveur OCR, API Recherche Entreprises, PHPMailer, mPDF.
Ce que ce projet montre
Entreprises à Vendre rassemble ce qu'un projet sérieux peut demander : plusieurs rôles avec des droits différents, de l'argent qui circule sur le web et dans deux stores, des documents comptables à lire, des calculs financiers à justifier et une exigence forte de confidentialité. Le site, l'API, les applications iOS et Android, le back-office et les intégrations avec les services externes forment un seul système cohérent, et les applications sont disponibles sur l'App Store et Google Play.
Vous avez un projet de marketplace, de plateforme métier ou d'application avec paiements et documents ? Me contacter pour en parler. Vous pouvez aussi voir toutes les captures du projet.
Questions fréquentes
Peut-on intégrer une valorisation automatique d'entreprise dans une plateforme ?
Oui. Sur Entreprises à Vendre, la liasse fiscale est lue par OCR, puis un moteur calcule une fourchette avec trois méthodes (actif net corrigé, multiple d'EBE, DCF) et produit un rapport PDF avec ses annexes.
Comment gérer les paiements à la fois sur le web et dans les applications iOS et Android ?
Stripe gère le web, et l'achat intégré imposé par Apple et Google passe par RevenueCat. Les deux circuits mettent à jour les mêmes droits en base, et chaque transaction est enregistrée pour éviter les doublons.
Une seule personne peut-elle livrer le site, l'API et les applications ?
Sur ce projet, le site, l'API mobile, les applications iOS et Android et le back-office ont été développés ensemble, avec une API commune qui garde les mêmes règles partout.