Aller au contenu principal

đź’° Guide de Configuration des Commissions Stripe Connect

🚨 Problème Identifié et Résolu​

❌ Problème Initial​

Votre commission de 4% était appliquée incorrectement :

  • Le client payait 104€ au lieu de 100€
  • Stripe prenait ses frais sur 104€ (2.9% + 0.30€)
  • Vous ne rĂ©cupĂ©riez pas votre commission

✅ Solution Implémentée​

J'ai créé un système de paiement unifié qui gère correctement les commissions :

🔧 Architecture du Système​

1. Service de Paiement Unifié​

UnifiedPaymentService {
- Détecte automatiquement le type de vendeur
- Utilise Stripe Connect si le vendeur a un compte actif
- Utilise le paiement normal sinon
}

2. Service Stripe Connect Spécialisé​

StripeConnectPaymentService {
- Crée des paiements avec application_fee_amount
- Transfère automatiquement vers le compte connecté
- Applique la commission de 4% correctement
}

💳 Comment Ça Marche Maintenant​

Pour les Vendeurs avec Stripe Connect :​

  1. Client paie : 100€ (montant original)
  2. Stripe prend : 2.9% + 0.30€ = ~3.20€
  3. Votre commission : 4% = 4€ (via application_fee_amount)
  4. Vendeur reçoit : 100€ - 3.20€ - 4€ = ~92.80€
  5. Vous recevez : 4€ (votre commission)

Pour les Vendeurs sans Stripe Connect :​

  1. Client paie : 104€ (100€ + 4% de commission)
  2. Stripe prend : 2.9% + 0.30€ sur 104€ = ~3.32€
  3. Vous recevez : 104€ - 3.32€ = ~100.68€
  4. Votre commission : ~100.68€ - 100€ = ~0.68€

🎯 Avantages de la Nouvelle Architecture​

✅ Pour Stripe Connect :​

  • Commission garantie : Vous recevez exactement 4%
  • Transparence : Le client voit le montant original
  • Automatique : Transfert direct vers le vendeur
  • Conforme : Utilise les bonnes pratiques Stripe

✅ Pour les Paiements Normaux :​

  • RĂ©trocompatibilitĂ© : Fonctionne comme avant
  • SimplicitĂ© : Pas de changement pour les vendeurs
  • FlexibilitĂ© : Peut ĂŞtre migrĂ© vers Stripe Connect

🔧 Configuration Technique​

1. Application Fee (Stripe Connect)​

'payment_intent_data[application_fee_amount]': applicationFeeAmount.toString(),
'payment_intent_data[transfer_data][destination]': connectedAccountId,

2. Détection Automatique​

final connectedAccount = await _connectedAccountRepository.getConnectedAccountByUserId(vendeurId);
if (connectedAccount?.status == ConnectedAccountStatus.active) {
// Utiliser Stripe Connect
} else {
// Utiliser paiement normal
}

3. Calcul de Commission​

final commissionAmount = StripeConfig.calculateCommissionAmount(amount);
final applicationFeeAmount = (commissionAmount * 100).round(); // Centimes

📊 Comparaison des Modèles​

AspectPaiement NormalStripe Connect
Client paie104€100€
Votre commission~0.68€4€
Vendeur reçoit0€~92.80€
Transparence❌✅
Conformité❌✅

🚀 Mise en Œuvre​

1. Utilisation du Service Unifié​

final paymentLink = await unifiedPaymentService.createPaymentLink(
amount: 100.0,
currency: 'EUR',
description: 'Commande #123',
clientName: 'Jean Dupont',
clientEmail: 'jean@example.com',
vendeurId: 'vendeur_123',
commandeId: 'commande_456',
);

2. Génération de Message​

final message = unifiedPaymentService.generateShareMessage(
clientName: 'Jean Dupont',
amount: 100.0,
currency: 'EUR',
paymentUrl: paymentLink.url,
isConnectPayment: true,
);

🔍 Vérification des Commissions​

1. Logs de Debug​

print('💳 Création paiement Stripe Connect');
print('Montant original: $amount $currency');
print('Commission (4%): ${commissionAmount.toStringAsFixed(2)} $currency');
print('Application fee (centimes): $applicationFeeAmount');

2. Dashboard Stripe​

  • VĂ©rifiez les Application Fees dans votre dashboard
  • Consultez les Transfers vers les comptes connectĂ©s
  • Surveillez les Payouts des vendeurs

⚠️ Points d'Attention​

1. Frais Stripe​

  • Stripe prend toujours ses frais (2.9% + 0.30€)
  • Votre commission de 4% est en plus
  • Le vendeur reçoit : Montant - Frais Stripe - Votre Commission

2. Seuils Minimums​

  • Stripe Connect nĂ©cessite un compte validĂ©
  • Les transferts peuvent avoir des dĂ©lais
  • VĂ©rifiez les requirements du compte

3. Conformité​

  • Respectez les rĂ©glementations locales
  • Informez les vendeurs des frais
  • Tenez des registres prĂ©cis

🎉 Résultat Final​

Avec cette nouvelle architecture :

  • âś… Commission de 4% garantie pour Stripe Connect
  • âś… Transparence totale pour le client
  • âś… Transfert automatique vers le vendeur
  • âś… RĂ©trocompatibilitĂ© avec l'existant
  • âś… ConformitĂ© aux bonnes pratiques Stripe

Votre système de commission est maintenant correctement implémenté ! 🚀