Aller au contenu principal

Description Personnalisée dans Stripe

🎯 Fonctionnalité Ajoutée

Maintenant, la page de paiement Stripe affiche une description complète et personnalisée de la commande au lieu du texte générique "Commande #ID".

📋 Informations Affichées

Dans la Page de Paiement Stripe

La description inclut maintenant :

  1. Titre de la commande (ex: "Gâteau d'anniversaire")
  2. Description détaillée (si disponible)
  3. Nom du client (si disponible)
  4. Date de la commande (format: dd/MM/yyyy à HH:mm)

Exemple de Description

Gâteau d'anniversaire

Gâteau au chocolat avec des framboises, décoration personnalisée pour 20 personnes

Client: Marie Dupont
Date: 15/12/2024 à 14:30

🔧 Implémentation Technique

1. Modification du Repository

// Nouveau paramètre description
Future<PaymentLink> createPaymentLink({
required String commandeId,
required double amount,
required String currency,
String? clientName,
String? clientEmail,
String? description, // ✅ Nouveau paramètre
DateTime? expiresAt,
});

2. Construction de la Description

String _buildPaymentDescription() {
final buffer = StringBuffer();

// Titre de la commande
buffer.write(_currentCommande.titre);

// Description si elle existe
if (_currentCommande.description.isNotEmpty) {
buffer.write('\n\n${_currentCommande.description}');
}

// Informations client si disponibles
if (_client != null) {
buffer.write('\n\nClient: ${_client!.prenom} ${_client!.nom}');
}

// Date de la commande
final dateFormat = DateFormat('dd/MM/yyyy à HH:mm');
buffer.write('\nDate: ${dateFormat.format(_currentCommande.date)}');

return buffer.toString();
}

3. Utilisation dans Stripe

// Dans le service Stripe
final stripePaymentLink = await _paymentService.createStripePaymentLink(
amount: amount,
currency: currency,
description: description ?? 'Commande #$commandeId', // ✅ Description personnalisée
clientName: clientName,
clientEmail: clientEmail,
expiresAt: expiresAt,
);

🧪 Test de la Fonctionnalité

1. Créez une Commande de Test

  1. Ajoutez une commande avec :
    • Titre : "Gâteau d'anniversaire"
    • Description : "Gâteau au chocolat avec des framboises"
    • Prix : 65€
    • Client : Marie Dupont

2. Générez le Lien de Paiement

  1. Passez au statut "Payée"
  2. Sélectionnez "Carte bancaire"
  3. Cliquez sur "Créer et partager"

3. Vérifiez la Page Stripe

  1. Cliquez sur le lien généré
  2. Vous devriez voir :
    Gâteau d'anniversaire

    Gâteau au chocolat avec des framboises

    Client: Marie Dupont
    Date: 15/12/2024 à 14:30

📱 Interface Utilisateur

Avant

  • Description générique : "Commande #abc123"
  • Informations limitées
  • Expérience client basique

Après

  • Description personnalisée complète
  • Informations détaillées de la commande
  • Expérience client professionnelle

🎨 Personnalisation

Modifier le Format de Date

// Dans _buildPaymentDescription()
final dateFormat = DateFormat('dd/MM/yyyy à HH:mm'); // Format actuel
// Ou
final dateFormat = DateFormat('EEEE dd MMMM yyyy'); // Format long

Ajouter des Informations Supplémentaires

// Ajouter le statut de la commande
buffer.write('\nStatut: ${_currentCommande.status.label}');

// Ajouter le type de paiement
if (_currentCommande.paymentType != null) {
buffer.write('\nMode de paiement: ${_currentCommande.paymentType!.label}');
}

Personnaliser le Message Client

// Message personnalisé selon le type de commande
if (_currentCommande.titre.toLowerCase().contains('gâteau')) {
buffer.write('\n\nMerci pour votre commande de pâtisserie !');
} else if (_currentCommande.titre.toLowerCase().contains('cours')) {
buffer.write('\n\nÀ bientôt pour votre cours !');
}

🔍 Avantages

Pour l'Artisan

  • Identification claire de la commande
  • Informations complètes en un coup d'œil
  • Professionnalisme de la page de paiement

Pour le Client

  • Reconnaissance de sa commande
  • Confiance dans le processus
  • Transparence des informations

Pour Stripe

  • Contexte de la transaction
  • Traçabilité des paiements
  • Support client facilité

🚀 Prochaines Améliorations

Possibles Ajouts

  1. Logo de l'entreprise dans Stripe
  2. Couleurs personnalisées de la page
  3. Messages de remerciement personnalisés
  4. Informations de contact de l'artisan
  5. Instructions spéciales pour la commande

Intégration Webhook

Les descriptions personnalisées sont également disponibles dans les webhooks Stripe pour un traitement automatisé.

📊 Exemple Complet

Commande

  • Titre : "Cours de pâtisserie - Gâteau au chocolat"
  • Description : "Cours privé de 2h pour apprendre à faire un gâteau au chocolat professionnel"
  • Prix : 120€
  • Client : Sophie Martin
  • Date : 20/12/2024 à 10:00

Description Stripe

Cours de pâtisserie - Gâteau au chocolat

Cours privé de 2h pour apprendre à faire un gâteau au chocolat professionnel

Client: Sophie Martin
Date: 20/12/2024 à 10:00

Cette amélioration rend l'expérience de paiement beaucoup plus professionnelle et informative pour vos clients !