Introduction
🎯 Que fait ce module ?​
Le module Discounts vous permet de gérer et d'appliquer des réductions 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 réductions 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 réduction 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 réductions flexibles :
- 🏷️ Réductions en Pourcentage - 10 % de réduction sur des produits sélectionnés
- 💰 Réductions Fixes - 5 $ de réduction sur les commandes de plus de 50 $
- 🎟️ Codes de Coupon - Codes promotionnels pour des campagnes spécifiques
- 📦 Réductions par Catégorie - Réductions sur des catégories de produits entières
- 👤 Réductions pour Clients - 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 réductions :
- 🔒 Tarification Inflexible - Nécessite des modifications de code pour chaque promotion
- 📊 Difficile à Suivre - Pas de gestion centralisée des réductions
- 🔄 Pas d'Automatisation - Mises à jour manuelles des prix pour chaque vente
La solution Discounts :
Avantages :
- 🔒 Promotions Flexibles - Créez et gérez des réductions dans le panneau d'administration
- 📊 Contrôle Centralisé - Toutes les réductions au même endroit
- 🔄 Application Automatisée - Réductions 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 Réduction ?​
Une Réduction est une règle de tarification qui réduit le coût des produits ou des commandes :
- Type de Réduction - Pourcentage (par exemple, 20 %) ou montant fixe (par exemple, 10 $)
- Valeur de Réduction - 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 réductions déclenchées par le client
Structure de la Réduction​
Chaque réduction 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 Réduction​
| 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 Réductions​
| Opération | Description | Cas d'Utilisation Exemple |
|---|---|---|
| Obtenir Toutes les Réductions | Lister toutes les réductions disponibles | Gestion des réductions par l'administrateur |
| Obtenir la Réduction par Marqueur | Récupérer une réduction spécifique | Afficher un badge de réduction |
| 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 | Réductions en pourcentage, fixes, par catégorie ou pour clients |
| Offres Limitées dans le Temps | Planifier des campagnes avec des dates de début/fin |
| Support Multilingue | Noms de réductions localisés par langue |
📋 Ce que Vous Devez Savoir​
Les Réductions sont Créées dans le Panneau d'Administration​
Vous ne pouvez pas créer de réductions 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 réduction (obligatoire)
- Fournir un Marqueur - Identifiant unique (obligatoire)
- Sélectionner le Type de Réduction - Pourcentage ou montant fixe
- Définir la Valeur de Réduction - 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 Réductions sont Créées dans le Panneau d'Administration​
Le module Discounts gère :
- ✅ Récupération de toutes les réductions actives
- ✅ Récupération d'une réduction spécifique par marqueur
- âś… Validation des codes de coupon lors du passage Ă la caisse
- ❌ Ne crée ni ne modifie les réductions (utilisez le panneau d'administration)
Votre responsabilité :
- Afficher les badges de réduction sur les listes de produits
- Appliquer les champs de saisie de coupon lors du passage Ă la caisse
- Afficher les totaux de réduction dans le résumé du panier/de la commande
📊 Tableau de Référence Rapide​
| Méthode | Description |
|---|---|
| getAllDiscounts() | Obtenir toutes les réductions |
| getDiscountByMarker() | Obtenir une seule réduction par marqueur |
| validateDiscountsCoupon() | Valider un code de coupon de réduction |
❓ Questions Fréquemment Posées (FAQ)​
Comment appliquer une réduction lors du passage à la caisse ?​
Récupérez la réduction en utilisant getDiscountByMarker() ou validez un code de coupon avec validateDiscountsCoupon(). Utilisez la valeur de réduction retournée pour calculer le prix réduit côté client avant de créer la commande.
Une réduction peut-elle avoir une date d'expiration ?​
Oui ! Les réductions peuvent avoir des champs validFrom et validTo optionnels. Vérifiez ces champs lors de l'affichage des réductions pour vous assurer qu'elles sont actuellement actives.
Comment afficher des badges de réduction sur les produits ?​
Récupérez toutes les réductions avec getAllDiscounts(), puis associez les réductions aux produits en fonction de votre logique commerciale. Rendu d'un badge en utilisant localizeInfos.title et discountValue de la réduction.
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 réductions 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 clairement la réduction - Affichez les prix d'origine et réduits ensemble
- Gérer les réductions expirées - Vérifiez
validToavant d'afficher une réduction - Utiliser des marqueurs descriptifs -
summer_sale_2025, pasdiscount1 - Localiser les noms de réduction - 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 les réductions sont appliquées
- Module Commandes - Créer des commandes avec des réductions appliquées
- Module Paiements - Traiter les paiements pour les commandes réduites
- Module Locales - Noms de réductions multilingues