Introduction
🎯 Que fait ce module ?​
Le module Discounts vous permet de gérer et d'appliquer des remises sur les produits et les commandes - des promotions basées sur un pourcentage aux réductions à montant fixe - en prenant en charge les codes de coupon, les remises par catégorie et les offres spécifiques aux clients dans l'ensemble de votre boutique e-commerce.
Considérez-le comme votre moteur de promotions - définissez des règles de remise dans le panneau d'administration de OneEntry, appliquez-les aux produits ou à des commandes entières, validez les codes de coupon lors du passage à la caisse et automatisez les ajustements de prix pour vos clients.
📖 Explication Simple​
Chaque boutique e-commerce a besoin de remises flexibles :
- 🏷️ Remises en Pourcentage - 10 % de réduction sur les produits sélectionnés
- 💰 Remises Fixes - 5 $ de réduction sur les commandes de plus de 50 $
- 🎟️ Codes de Coupon - Codes promotionnels pour des campagnes spécifiques
- 📦 Remises par Catégorie - Remises sur des catégories de produits entières
- 👤 Remises Client - Tarification spéciale pour des clients ou groupes spécifiques
- 📅 Offres Limitées dans le Temps - Ventes avec des dates de début et de fin définies
Problèmes sans gestion des remises :
- 🔒 Tarification Inflexible - Nécessite des modifications de code pour chaque promotion
- 📊 Difficile à Suivre - Pas de gestion centralisée des remises
- 🔄 Pas d'Automatisation - Mises à jour manuelles des prix pour chaque vente
La solution Discounts :
Avantages :
- 🔒 Promotions Flexibles - Créez et gérez des remises dans le panneau d'administration
- 📊 Contrôle Centralisé - Toutes les remises au même endroit
- 🔄 Application Automatisée - Remises appliquées automatiquement lors du passage à la caisse
- 🎟️ Validation des Coupons - Vérification des codes de coupon en temps réel
✨ Concepts Clés​
Qu'est-ce qu'une Remise ?​
Une Remise est une règle de tarification qui réduit le coût des produits ou des commandes :
- Type de Remise - Pourcentage (par exemple, 20 %) ou montant fixe (par exemple, 10 $)
- Valeur de la Remise - Le montant ou le pourcentage à réduire
- Marqueur - Identifiant unique pour le filtrage et la référence
- Période de Validité - Dates de début et de fin optionnelles
- Code de Coupon - Code promotionnel optionnel pour les remises déclenchées par le client
Structure de la Remise​
Chaque remise a cette structure :
{
id: 1,
identifier: 'summer_sale',
localizeInfos: {
title: 'Summer Sale'
},
discountType: 'percentage',
discountValue: 20,
isActive: true,
validFrom: '2025-06-01T00:00:00.000Z',
validTo: '2025-08-31T23:59:59.999Z',
}
Types de Remises​
| Type | Description | Exemple |
|---|---|---|
| pourcentage | Réduire le prix d'un pourcentage | 20 % de réduction sur tous les articles d'été |
| fixe | Réduire le prix d'un montant fixe | 10 $ de réduction sur les commandes de plus de 50 $ |
Opérations Courantes sur les Remises​
| Opération | Description | Cas d'Utilisation Exemple |
|---|---|---|
| Obtenir Toutes les Remises | Lister toutes les remises disponibles | Gestion des remises par l'administrateur |
| Obtenir la Remise par Marqueur | Récupérer une remise spécifique | Afficher le badge de remise |
| Valider le Coupon | Vérifier si un code de coupon est valide | Champ de coupon lors du passage à la caisse |
Pourquoi Utiliser le Module Discounts ?​
| Avantage | Description |
|---|---|
| Promotions Automatisées | Pas d'édition manuelle des prix pour chaque vente |
| Gestion des Coupons | Créer, distribuer et valider des codes promotionnels |
| Règles Flexibles | Remises en pourcentage, fixes, par catégorie ou pour des clients |
| Offres Limitées dans le Temps | Planifier des campagnes avec des dates de début/fin |
| Support Multilingue | Noms de remises localisés par langue |
📋 Ce que Vous Devez Savoir​
Les Remises sont Créées dans le Panneau d'Administration​
Vous ne pouvez pas créer de remises via le SDK - elles sont créées dans le panneau d'administration de OneEntry.
Processus de Création :
- Fournir un Nom - Désignation de la remise (obligatoire)
- Fournir un Marqueur - Identifiant unique (obligatoire)
- Sélectionner le Type de Remise - Pourcentage ou montant fixe
- Définir la Valeur de la Remise - Le montant de la réduction
- Optionnellement définir la Période de Validité - Dates de début et de fin
Validation des Coupons​
Utilisez validateDiscountsCoupon() lors du passage à la caisse pour vérifier les codes de coupon en temps réel avant de les appliquer à une commande.
💡 Notes Importantes​
Les Remises sont Créées dans le Panneau d'Administration​
Le module Discounts gère :
- ✅ Récupération de toutes les remises actives
- ✅ Récupération d'une remise spécifique par marqueur
- âś… Validation des codes de coupon lors du passage Ă la caisse
- ❌ Ne crée ni ne modifie les remises (utilisez le panneau d'administration)
Votre responsabilité :
- Afficher les badges de remise sur les listes de produits
- Appliquer les champs de saisie de coupon lors du passage Ă la caisse
- Afficher les totaux de remise dans le résumé du panier/de la commande
📊 Tableau de Référence Rapide​
| Méthode | Description |
|---|---|
| getAllDiscounts() | Obtenir toutes les remises |
| getDiscountByMarker() | Obtenir une remise unique par marqueur |
| validateDiscountsCoupon() | Valider un code de coupon de remise |
❓ Questions Fréquemment Posées (FAQ)​
Comment appliquer une remise lors du passage à la caisse ?​
Récupérez la remise en utilisant getDiscountByMarker() ou validez un code de coupon avec validateDiscountsCoupon(). Utilisez la valeur de remise retournée pour calculer le prix réduit côté client avant de créer la commande.
Une remise peut-elle avoir une date d'expiration ?​
Oui ! Les remises peuvent avoir des champs validFrom et validTo optionnels. Vérifiez ces champs lors de l'affichage des remises pour vous assurer qu'elles sont actuellement actives.
Comment afficher des badges de remise sur les produits ?​
Récupérez toutes les remises avec getAllDiscounts(), puis associez les remises aux produits en fonction de votre logique commerciale. Rendu d'un badge en utilisant localizeInfos.title et discountValue de la remise.
Que se passe-t-il si un code de coupon est invalide ?​
validateDiscountsCoupon() retourne false si le coupon n'existe pas ou a expiré. Affichez un message d'erreur approprié au client.
🎓 Meilleures Pratiques​
- Mettre en cache les remises au chargement - Elles changent rarement ; évitez les appels API répétés
- Valider les coupons côté serveur - Vérifiez toujours avant de les appliquer à une commande
- Afficher la remise clairement - Affichez les prix d'origine et les prix remisés ensemble
- Gérer les remises expirées - Vérifiez
validToavant d'afficher une remise - Utiliser des marqueurs descriptifs -
summer_sale_2025, pasdiscount1 - Localiser les noms de remises - Utilisez
localizeInfospour le support multilingue
Plus d'informations sur l'interface utilisateur du module https://doc.oneentry.cloud/docs/category/discounts
Définition du module Discounts​
const { Discounts } = defineOneEntry( "your-project-url", { "token": "your-app-token" });
🔗 Documentation Connexe​
- Module Produits - Gérer les produits auxquels des remises sont appliquées
- Module Commandes - Créer des commandes avec des remises appliquées
- Module Paiements - Traiter les paiements pour les commandes remisées
- Module Locales - Noms de remises multilingues