Cette intégration permet aux amicales de configurer leurs comptes Stripe Express pour accepter les paiements par carte bancaire avec 0% de commission plateforme. ## 🎯 Fonctionnalités implémentées ### API PHP (Backend) - **POST /api/stripe/accounts**: Création comptes Stripe Express - **GET /api/stripe/accounts/:id/status**: Vérification statut compte - **POST /api/stripe/accounts/:id/onboarding-link**: Liens onboarding - **POST /api/stripe/locations**: Création locations Terminal - **POST /api/stripe/terminal/connection-token**: Tokens connexion - **POST /api/stripe/webhook**: Réception événements Stripe ### Interface Flutter (Frontend) - Widget configuration Stripe dans amicale_form.dart - Service StripeConnectService pour communication API - États visuels dynamiques avec codes couleur - Messages utilisateur "100% des paiements pour votre amicale" ## 🔧 Corrections techniques ### StripeController.php - Fix Database::getInstance() → $this->db - Fix $db->prepare() → $this->db->prepare() - Suppression colonne details_submitted inexistante - Ajout exit après réponses JSON (évite 502) ### StripeService.php - Ajout imports Stripe SDK (use Stripe\Account) - Fix Account::retrieve() → $this->stripe->accounts->retrieve() - **CRUCIAL**: Déchiffrement données encrypted_email/encrypted_name - Suppression calcul commission (0% plateforme) ### Router.php - Suppression logs debug excessifs (fix nginx 502 "header too big") ### AppConfig.php - application_fee_percent: 0 (était 2.5) - application_fee_minimum: 0 (était 50) - **POLITIQUE**: 100% des paiements vers amicales ## ✅ Tests validés - Compte pilote créé: acct_1S2YfNP63A07c33Y - Location Terminal: tml_GLJ21w7KCYX4Wj - Onboarding Stripe complété avec succès - Toutes les APIs retournent 200 OK ## 📚 Documentation - Plannings mis à jour avec accomplissements - Architecture technique documentée - Erreurs résolues listées avec solutions ## 🚀 Prêt pour production V1 Stripe Connect opérationnelle - Prochaine étape: Terminal Payments V2 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
249 lines
7.7 KiB
Markdown
249 lines
7.7 KiB
Markdown
# PLANNING STRIPE - TÂCHES ADMINISTRATIVES
|
|
## Intégration Stripe Connect + Terminal pour Calendriers Pompiers
|
|
### Période : 25/08/2024 - 05/09/2024
|
|
|
|
---
|
|
|
|
## 📅 LUNDI 25/08 - Préparation (4h)
|
|
|
|
### ✅ Compte Stripe Platform
|
|
- [x] Créer compte Stripe sur https://dashboard.stripe.com/register
|
|
- [x] Remplir informations entreprise (SIRET, adresse, etc.)
|
|
- [x] Vérifier email de confirmation
|
|
- [x] Activer l'authentification 2FA
|
|
|
|
### ✅ Activation des produits
|
|
- [x] Activer Stripe Connect dans Dashboard → Products
|
|
- [x] Choisir type "Express accounts" pour les amicales
|
|
- [x] Activer Stripe Terminal dans Dashboard
|
|
- [x] Demander accès "Tap to Pay on iPhone" via formulaire support
|
|
|
|
### ✅ Configuration initiale
|
|
- [x] Définir les frais de plateforme (DECISION: 0% commission plateforme - 100% pour les amicales)
|
|
- [x] Configurer les paramètres de virement (J+2 recommandé)
|
|
- [x] Ajouter logo et branding pour les pages Stripe
|
|
|
|
---
|
|
|
|
## 📅 MARDI 26/08 - Setup environnements (2h)
|
|
|
|
### ✅ Clés API et Webhooks
|
|
- [x] Récupérer clés TEST (pk_test_... et sk_test_...)
|
|
- [x] Créer endpoint webhook : https://dapp.geosector.fr/api/stripe/webhook
|
|
- [x] Sélectionner événements webhook :
|
|
- `account.updated`
|
|
- `account.application.authorized`
|
|
- `payment_intent.succeeded`
|
|
- `payment_intent.payment_failed`
|
|
- `charge.dispute.created`
|
|
- [x] Noter le Webhook signing secret (whsec_...)
|
|
|
|
### ✅ Documentation amicales
|
|
- [x] Préparer template email pour amicales
|
|
- [x] Créer guide PDF "Activer les paiements CB"
|
|
- [x] Lister documents requis :
|
|
- Statuts association
|
|
- RIB avec IBAN/BIC
|
|
- Pièce identité responsable
|
|
- Justificatif adresse siège
|
|
|
|
---
|
|
|
|
## 📅 MERCREDI 27/08 - Amicale pilote (3h)
|
|
|
|
### ✅ Onboarding première amicale
|
|
- [x] Contacter amicale pilote (Amicale ID: 5)
|
|
- [x] Créer compte Connect Express via API
|
|
- [x] Envoyer lien onboarding à l'amicale
|
|
- [x] Suivre progression dans Dashboard → Connect → Accounts
|
|
- [x] Vérifier statut "Charges enabled"
|
|
|
|
### ✅ Configuration compte amicale
|
|
- [x] Vérifier informations bancaires (IBAN)
|
|
- [x] Configurer email notifications
|
|
- [x] Tester micro-virement de vérification
|
|
- [x] Noter le compte ID : acct_1S2YfNP63A07c33Y
|
|
|
|
---
|
|
|
|
## 📅 JEUDI 28/08 - Tests paiements (2h)
|
|
|
|
### ✅ Configuration Terminal Test
|
|
- [x] Créer "Location" test dans Dashboard → Terminal (Location ID: tml_GLJ21w7KCYX4Wj)
|
|
- [x] Générer reader test virtuel pour Simulator
|
|
- [x] Configurer les montants de test (10€, 20€, 30€)
|
|
|
|
### ✅ Cartes de test
|
|
- [x] Préparer liste cartes test :
|
|
- 4242 4242 4242 4242 : Succès
|
|
- 4000 0000 0000 9995 : Refus
|
|
- 4000 0025 0000 3155 : Authentification requise
|
|
- [x] Documenter processus de test pour développeurs
|
|
|
|
---
|
|
|
|
## 📅 VENDREDI 29/08 - Compliance et sécurité (2h)
|
|
|
|
### ✅ Conformité légale
|
|
- [ ] Vérifier statut PCI DSS (auto-évaluation SAQ A)
|
|
- [ ] Préparer mentions légales paiement
|
|
- [ ] Créer template CGV pour paiements
|
|
- [ ] Documenter process RGPD
|
|
|
|
### ✅ Limites et sécurité
|
|
- [ ] Configurer limites de paiement (max 500€/transaction ?)
|
|
- [ ] Activer Radar (protection fraude) rules
|
|
- [ ] Configurer alertes email pour transactions > 100€
|
|
- [ ] Définir politique remboursements
|
|
|
|
---
|
|
|
|
## 📅 SAMEDI 30/08 - Monitoring (1h)
|
|
|
|
### ✅ Dashboard et alertes
|
|
- [ ] Créer vues personnalisées Dashboard
|
|
- [ ] Configurer alertes :
|
|
- Taux d'échec > 10%
|
|
- Nouveau litige (chargeback)
|
|
- Compte amicale suspendu
|
|
- [ ] Installer app mobile Stripe (iOS/Android)
|
|
|
|
---
|
|
|
|
## 📅 LUNDI 02/09 - Préparation production (3h)
|
|
|
|
### ✅ Amicales supplémentaires
|
|
- [ ] Onboarder 2-3 amicales test supplémentaires
|
|
- [ ] Vérifier leurs statuts de compte
|
|
- [ ] Former les responsables à l'interface Stripe
|
|
|
|
### ✅ Documentation finale
|
|
- [ ] Guide administrateur plateforme
|
|
- [ ] FAQ amicales (comment voir mes ventes ?)
|
|
- [ ] Process de support niveau 1
|
|
|
|
---
|
|
|
|
## 📅 MARDI 03/09 - Tests grandeur nature (2h)
|
|
|
|
### ✅ Simulation production
|
|
- [ ] Paiement test avec vraie carte (sera remboursé)
|
|
- [ ] Vérifier apparition dans Dashboard amicale
|
|
- [ ] Tester virement vers compte bancaire
|
|
- [ ] Vérifier commissions plateforme
|
|
|
|
---
|
|
|
|
## 📅 MERCREDI 04/09 - Go/No-Go Production (2h)
|
|
|
|
### ✅ Checklist production
|
|
- [ ] Obtenir clés PRODUCTION (pk_live_... et sk_live_...)
|
|
- [ ] ⚠️ JAMAIS les commiter dans le code
|
|
- [ ] Configurer webhook production
|
|
- [ ] Vérifier tous les comptes amicales "enabled"
|
|
- [ ] Backup des configurations
|
|
|
|
### ✅ Plan de bascule
|
|
- [ ] Planifier fenêtre de maintenance
|
|
- [ ] Préparer rollback si besoin
|
|
- [ ] Numéro hotline Stripe : +33 1 88 45 05 35
|
|
|
|
---
|
|
|
|
## 📅 JEUDI 05/09 - Support jour J (4h)
|
|
|
|
### ✅ Surveillance active
|
|
- [ ] Monitoring Dashboard en temps réel
|
|
- [ ] Vérifier premiers paiements réels
|
|
- [ ] Support hotline pour amicales
|
|
- [ ] Documenter issues rencontrées
|
|
|
|
---
|
|
|
|
## 📊 RÉCAPITULATIF TEMPS ADMIN
|
|
- **Préparation** : 4h
|
|
- **Configuration** : 7h
|
|
- **Tests** : 4h
|
|
- **Production** : 6h
|
|
- **TOTAL** : 21h sur 11 jours
|
|
|
|
## 🔐 INFORMATIONS SENSIBLES À STOCKER
|
|
|
|
```env
|
|
# JAMAIS dans le code source !
|
|
STRIPE_PUBLIC_KEY_TEST=pk_test_...
|
|
STRIPE_SECRET_KEY_TEST=sk_test_...
|
|
STRIPE_WEBHOOK_SECRET_TEST=whsec_...
|
|
|
|
STRIPE_PUBLIC_KEY_LIVE=pk_live_...
|
|
STRIPE_SECRET_KEY_LIVE=sk_live_...
|
|
STRIPE_WEBHOOK_SECRET_LIVE=whsec_...
|
|
|
|
STRIPE_PLATFORM_ACCOUNT_ID=acct_...
|
|
```
|
|
|
|
## 📞 CONTACTS UTILES
|
|
|
|
- **Support Stripe France** : +33 1 88 45 05 35
|
|
- **Email support** : support@stripe.com
|
|
- **Dashboard** : https://dashboard.stripe.com
|
|
- **Statut système** : https://status.stripe.com
|
|
|
|
## ⚠️ POINTS D'ATTENTION CRITIQUES
|
|
|
|
1. **NE JAMAIS** partager les clés secrètes (sk_)
|
|
2. **TOUJOURS** commencer en mode TEST
|
|
3. **VÉRIFIER** 2x avant passage en LIVE
|
|
4. Les virements vers comptes amicales prennent 2-7 jours
|
|
5. Garder 1 personne dispo pour support le jour J
|
|
6. **Android Tap to Pay** : Vérifier certification SoftPOS des appareils
|
|
7. **Maintenir** liste des modèles Android certifiés à jour
|
|
|
|
---
|
|
|
|
## 🎯 BILAN DES ACCOMPLISSEMENTS (01/09/2024)
|
|
|
|
### ✅ RÉALISATIONS CLÉS
|
|
1. **Intégration Stripe Connect complète**
|
|
- API PHP 8.3 fonctionnelle avec tous les endpoints
|
|
- Interface Flutter pour gestion Stripe dans l'amicale
|
|
- Webhooks configurés et testés
|
|
|
|
2. **Compte amicale pilote opérationnel**
|
|
- Amicale ID: 5 avec compte Stripe : acct_1S2YfNP63A07c33Y
|
|
- Location Terminal créée : tml_GLJ21w7KCYX4Wj
|
|
- Onboarding Stripe complété avec succès
|
|
|
|
3. **Configuration 0% commission plateforme**
|
|
- 100% des paiements vont aux amicales
|
|
- Seuls les frais Stripe standard s'appliquent (~1.4% + 0.25€)
|
|
- Interface UI mise à jour pour refléter cette politique
|
|
|
|
4. **Corrections techniques majeures**
|
|
- Problèmes de déchiffrement des données résolus
|
|
- Erreurs 502 nginx corrigées (logs debug supprimés)
|
|
- Base de données et API entièrement fonctionnelles
|
|
|
|
### 🔧 PROBLÈMES RÉSOLUS
|
|
- **Erreur 500** : "Database not found" → Fixed
|
|
- **Erreur 400** : "Invalid email address" → Fixed (déchiffrement ajouté)
|
|
- **Erreur 502** : "upstream sent too big header" → Fixed (logs supprimés)
|
|
- **Commission plateforme** : Supprimée comme demandé (0%)
|
|
- **UI messaging** : Corrigé pour refléter "100% pour votre amicale"
|
|
|
|
### 📊 APIs FONCTIONNELLES
|
|
- ✅ POST /api/stripe/accounts - Création compte
|
|
- ✅ GET /api/stripe/accounts/:id/status - Statut compte
|
|
- ✅ POST /api/stripe/accounts/:id/onboarding-link - Lien onboarding
|
|
- ✅ POST /api/stripe/locations - Création location Terminal
|
|
- ✅ POST /api/stripe/webhook - Réception événements
|
|
|
|
### 🎯 PROCHAINES ÉTAPES
|
|
1. Tests de paiements réels avec Terminal
|
|
2. Déploiement en environnement de recette
|
|
3. Formation des amicales pilotes
|
|
4. Monitoring des premiers paiements
|
|
|
|
---
|
|
|
|
*Document créé le 24/08/2024 - Dernière mise à jour : 01/09/2024* |