Plateforme complète de gestion de devis, factures et paiements pour PME avec système de wallet intégré
- 🎯 Objectif du Projet
- ✨ Fonctionnalités Principales
- 🏗️ Architecture & Technologies
- 🚀 Installation & Démarrage
- 👥 Gestion des Utilisateurs
- 💰 Système de Wallet
- 📧 Notifications Automatiques
- 🔧 Administration
- 🛠️ Développement
- 👨💻 Équipe de Développement
FactuPro est une plateforme SaaS complète conçue pour les PME françaises souhaitant digitaliser leur processus de facturation et de gestion client. Elle offre un workflow complet de devis à paiement avec un système de wallet intégré pour gérer les gains des entreprises.
- Entreprises de services (événementiel, consulting, développement)
- Auto-entrepreneurs et freelances
- PME avec besoin de facturation récurrente
- Plateformes gérant les paiements pour leurs clients
- ✅ Création de devis avec templates personnalisables
- ✅ Conversion devis → facture automatique
- ✅ Gestion client complète avec historique
- ✅ Suivi des paiements Stripe intégré
- ✅ Rapports financiers par entreprise/période
- ✅ Multi-entreprises pour un utilisateur
- 💳 Portefeuille numérique par entreprise
- 🔄 Retraits bancaires avec validation admin
- 📈 Historique des transactions détaillé
- 🎯 Dashboard financier temps réel
- ⚡ Notifications automatiques à chaque étape
- 👑 Interface admin pour validation retraits
- 🛡️ Gestion des rôles (Personal/Company/Admin)
- ✉️ Emails transactionnels automatiques
- 📋 Logs complets de toutes les actions
- 🔄 Workflow strict de validation des paiements
- 📱 Responsive design (Desktop/Mobile/Tablet)
- 🌙 Interface moderne avec TailwindCSS
- ⚡ Navigation intuitive par type de compte
- 📊 Dashboards personnalisés par rôle
- 🔍 Filtres avancés et recherche
- Symfony 6.x - Framework PHP robuste
- Doctrine ORM - Gestion BDD avancée
- PostgreSQL - Base de données principale
- Stripe API - Paiements sécurisés
- SwiftMailer - Emails transactionnels
- Twig - Templates optimisés
- TailwindCSS - Design system moderne
- Webpack Encore - Build assets
- Alpine.js - Interactions légères
- Chart.js - Graphiques et stats
- Docker Compose - Environnement containerisé
- MailHog - Test emails en développement
- Nginx - Serveur web production
- PostgreSQL - Base de données scalable
- Docker & Docker Compose
- Git
# 1. Cloner le projet
git clone https://github.com/Sid-Ahmed7/Projet_IW4.git
cd Projet_IW4
# 2. Démarrer les services
docker-compose up -d
# 3. Installer les dépendances
docker exec -it projet_iw4-web-1 composer install
docker exec -it projet_iw4-web-1 npm install
# 4. Configurer la base de données
docker exec -it projet_iw4-web-1 php bin/console doctrine:migrations:migrate
# 5. Compiler les assets
docker exec -it projet_iw4-web-1 npm run build- Application : http://localhost:8000
- MailHog (emails) : http://localhost:8025
- Base de données : localhost:5432
- Gestion individuelle de devis/factures
- Interface simplifiée
- Facturation directe
- Multi-organisations
- Wallet system complet
- Gestion équipe
- Rapports avancés
- Validation des retraits
- Gestion globale utilisateurs
- Accès aux statistiques système
- Interface d'administration
# Via commande console
docker exec -it projet_iw4-web-1 php bin/console app:create-admin
# Ou promotion d'un utilisateur existant
docker exec -it projet_iw4-web-1 php bin/console app:promote-admin user@example.com- Demande → L'entreprise fait une demande de retrait
- Notification → L'admin reçoit un email automatique
- Validation → L'admin traite la demande via interface web
- Virement → Exécution du virement bancaire réel
- Confirmation → Débit automatique du wallet + notifications
- ✅ Soldes en temps réel
- ✅ Historique complet des transactions
- ✅ Validation IBAN/BIC automatique
- ✅ Montants minimum configurables
- ✅ Rapports mensuels/annuels
- Validation manuelle par admin
- Logs complets de toutes les opérations
- Vérification des coordonnées bancaires
- Notifications à chaque étape
- 📝 Nouveau devis créé
- 💰 Facture payée
- 🔔 Demande de retrait (admin)
- ✅ Retrait validé
- ❌ Retrait refusé
- 👤 Inscription confirmée
# Variables d'environnement
MAILER_DSN="smtp://localhost:1025" # Développement
MAILER_DSN="gmail+smtp://user:pass@default" # Production- URL :
/admin/payouts - Gestion retraits : Traiter/Compléter/Refuser
- Gestion utilisateurs :
/admin/users - Statistiques : Volumes, montants, tendances
# Gestion des retraits
docker exec -it projet_iw4-web-1 php bin/console app:payout:manage
# Créer un admin
docker exec -it projet_iw4-web-1 php bin/console app:create-admin
# Promouvoir un utilisateur
docker exec -it projet_iw4-web-1 php bin/console app:promote-admin email@domain.com├── src/
│ ├── Controller/ # Contrôleurs (routes + logique)
│ ├── Entity/ # Entités Doctrine (BDD)
│ ├── Service/ # Services métier
│ ├── Repository/ # Requêtes BDD
│ └── Command/ # Commandes console
├── templates/ # Templates Twig
├── assets/ # CSS/JS sources
├── public/ # Assets compilés
├── migrations/ # Migrations BDD
└── docker/ # Configuration Docker
# Accès conteneur web
docker exec -it projet_iw4-web-1 bash
# Logs
docker logs projet_iw4-web-1 --tail=50
# Base de données
docker exec -it projet_iw4-database-1 psql -U root -d stackT1
# Cache Symfony
docker exec -it projet_iw4-web-1 php bin/console cache:clear| Développeur | GitHub |
|---|---|
| Ibrahim Ouahabi | @Narutino10 |
| Leonce Yopa | @zaengetsu |
- Durée : Octobre 2023 - Mars 2024 (+ améliorations continues)
- Lignes de code : ~15,000+ lignes
- Technologies : 10+ frameworks/librairies
- Fonctionnalités : 50+ features implémentées
- Tests : Environnement Docker complet
- Issues : GitHub Issues
- Documentation : Voir
/docs(à venir) - Email : sidahmed.moussi@exemple.com
Ce projet est développé dans le cadre académique de l'ESGI Paris.
Développé avec ❤️ par l'équipe ESGI Paris - Promotion 2024