Ce que tu vas apprendre
Les 4 types résiduels
loyalty, gift_card, ewallet, next_order_coupons — quand choisir lequel, quels effets sur SO et POS.
Règle + récompense
Comment Odoo gagne des points à la commande et les convertit en remise via
le couple loyalty.rule / loyalty.reward.
La carte client en pratique
Le modèle loyalty.card qui matérialise le solde d'un partenaire —
points, montant préchargé, code unique.
1. Le retour attendu du meilleur client
Fin avril, Karim fait le point commercial avec Inès. Cabinet Architecture Alger a commandé 3 fois en un mois (le devis Matrix S00010 de 20 chaises, puis S00016 en pricelist Pro, plus 2 bons de mobilier). Total dépensé : 1 200 000 DZD HT sur l'année roulante.
« On les remercie comment ? », demande Inès. « Une remise supplémentaire à la prochaine commande ne suffit pas. Il faut qu'ils se sentent membres d'un club. Et pour ImportEquip qui demande un paiement par virement d'avance sur plusieurs mois, on pourrait aussi leur proposer un portefeuille électronique. »
« Et Réseau Plus qui veut offrir des chaises à leurs bureaux partenaires — il leur faut des cartes-cadeaux », complète Karim. « Trois besoins, trois mécaniques différentes. Et tout ça avec un seul modèle Odoo qu'on a déjà vu partiellement dans l'article sur les promotions. »
loyalty.program— le programme lui-même (type, canaux, devise, portail visible). 6 types possibles : 3 vus dans #98 (promotion, promo_code, buy_x_get_y), 3 ici (loyalty, gift_card, ewallet) + le dernier next_order_coupons.loyalty.rule— la règle d'attribution. Combien de points ou de montant par achat (champreward_point_amount) ? Sur quels produits ? Quelle quantité min ?loyalty.reward— la récompense. Type de réduction, nombre de points requis, montant discount.loyalty.card— le solde d'un partenaire. Points accumulés, code unique, date d'expiration.
2. Les 4 types en un coup d'œil
Avant d'ouvrir le premier formulaire, visualisons la carte complète. Le même modèle
loyalty.program se décline en 6 program_type, donc 6
comportements radicalement différents à la saisie sur un devis.
| Type | Mécanique | Déclenchement | Cas InfoSphere |
|---|---|---|---|
loyalty |
Club de fidélité — points cumulés à chaque commande | auto (sur SO validée) | Club InfoSphere : 1 point / 100 DZD |
gift_card |
Carte-cadeau préchargée à un montant | émission manuelle ou via produit cadeau | Bon de 25 000 DZD pour Réseau Plus |
ewallet |
Porte-monnaie client rechargeable | automatique (recharge via SO) | eWallet ImportEquip, 50 000 DZD de solde |
next_order_coupons |
Coupon émis après une commande remplissant un seuil | auto (émis à la validation d'une SO éligible) | -5 000 DZD pour toute SO > 100 000 DZD |
3. Club InfoSphere — Club de fidélité classique
On ouvre Ventes → Configuration → Remises & Fidélité et on clique sur Club InfoSphere (le programme avait été créé par défaut dès l'activation de la fonctionnalité, sans règle ni récompense). Il faut le compléter.
Règle : 1 point pour 100 DZD dépensés
- Quantité minimale = 1 (au moins 1 article par commande)
- Mode d'attribution = Points par DA dépensé
- Montant de points = 0,01 — ce qui signifie 0,01 point par DZD, soit 1 point par 100 DZD
Récompense : 500 DZD de remise pour 100 points
- Type de récompense = Remise
- Points requis = 100
- Montant de la remise = 500,00 DZD par commande
En clair : quand Cabinet Architecture dépense 10 000 DZD, ça leur rapporte 100 points, qu'ils peuvent immédiatement convertir en 500 DZD de remise sur leur prochain devis. Taux de fidélisation réel : 5%.
4. eWallet InfoSphere — Porte-monnaie client
L'e-wallet sert aux clients grossistes qui paient par virement bancaire en avance de phase. Au lieu d'émettre des avoirs temporaires, on charge un portefeuille électronique sur leur fiche. Ils consomment dessus au fur et à mesure de leurs devis. On crée le programme eWallet InfoSphere.
Fonctionnement
- Recharge automatique : créer un produit spécifique (type Service) lié au programme, vendu sans TVA. Quand le client commande Recharge eWallet 50 000 DZD, Odoo crée la carte e-wallet avec le solde correspondant.
- Recharge manuelle : bouton Générer un e-wallet en haut du formulaire. Utile pour provisionner le portefeuille d'un VIP sans SO intermédiaire.
- Consommation : sur tout nouveau devis du partenaire, une ligne de remise apparaît automatiquement, débitée du solde du wallet jusqu'à épuisement ou jusqu'au montant total de la commande.
Pour ImportEquip, Inès a provisionné 50 000 DZD suite à un
virement bancaire — la carte e-wallet a été créée manuellement avec code unique
044f-7e18-4fa1. Le grossiste pourra puiser dessus jusqu'à solde zéro.
5. Cartes-cadeaux — Bons préchargés à offrir
Les cartes-cadeaux diffèrent de l'eWallet par leur détenteur : l'eWallet est rattaché à un client (solde nominatif), la carte-cadeau est anonyme ou transférable. Réseau Plus veut offrir à 5 bureaux partenaires une carte de 25 000 DZD chacune — ils la remettent en main propre et le bénéficiaire pourra s'en servir sans avoir de compte chez InfoSphere.
Émission
Deux voies :
- Bouton Générer des cartes-cadeaux en haut du programme — assistant qui crée N cartes d'un montant donné, avec codes uniques, envoi e-mail optionnel aux destinataires.
- Via une SO : le client achète le produit Carte-cadeau lié au programme, à un montant choisi. La carte est générée à la confirmation de la commande avec le montant exact saisi en prix unitaire.
Consommation
Le porteur se présente au POS ou sur le devis avec son code à 12 caractères (format
044f-e330-4354). Le caissier ou le commercial saisit le code dans le
champ Code de réduction du devis, et Odoo applique la réduction équivalente
au solde disponible de la carte, en créant une ligne négative.
6. Coupons Prochaine Commande — fidélisation par seuil
Le dernier type next_order_coupons est fait pour créer un
réflexe de retour : émettre automatiquement un coupon à toute commande
franchissant un seuil, valable sur la prochaine commande. Karim configure : tout
devis validé > 100 000 DZD déclenche un coupon de -5 000 DZD
sur la prochaine commande.
Scénario
- Cabinet Architecture confirme un devis de 154 000 DZD (le devis Tarif Pro S00016 de l'article précédent).
- Odoo émet automatiquement un coupon de -5 000 DZD lié à Cabinet Architecture, avec un code unique envoyé par e-mail.
- La semaine suivante, nouveau devis de 80 000 DZD. Karim saisit le code du coupon dans le champ Code de réduction. Ligne négative -5 000 DZD. Total payé : 75 000 DZD HT.
7. La carte client (loyalty.card) en pratique
Le modèle loyalty.card matérialise le solde d'un partenaire
pour un programme donné. C'est là que se trouvent les 5 000 points
de Cabinet Architecture dans le Club, les 50 000 DZD
préchargés d'ImportEquip sur l'eWallet, ou les 25 000 DZD de la
gift card de Réseau Plus.
| Card ID | Partenaire | Programme | Type | Solde | Code |
|---|---|---|---|---|---|
| #3 | Cabinet Architecture Alger | Club InfoSphere | loyalty | 5 000 pts | 044f-e330-4354 |
| #4 | Réseau Plus | Cartes-cadeaux | gift_card | 25 000 DZD | 0446-485f-404f |
| #5 | ImportEquip | eWallet InfoSphere | ewallet | 50 000 DZD | 044f-7e18-4fa1 |
Les 3 cartes partagent la même table SQL mais se distinguent par leur
program_type. Les points et le montant
utilisent le même champ points — c'est l'interprétation fonctionnelle
qui change selon le type (unité abstraite pour loyalty, devise pour gift_card et
ewallet).
8. Pièges v19 et bonnes pratiques
active) —
les cartes restent visibles mais inactives. Utile pour solder une campagne
promotionnelle sans casser les rapports.
reward_point_amount est en points (unité abstraite), tandis
que sur l'eWallet c'est en DZD. Les deux utilisent le même champ
points sur loyalty.card, mais leur nature change. Ne
tente jamais de convertir les points en solde wallet via code custom —
c'est un écart comptable qui casse les exports de fin d'année.
Bonnes pratiques InfoSphere
- 1 programme = 1 mécanique. Ne mélange pas loyalty + promotion sur le même programme — crée plutôt 2 programmes parallèles. Plus simple à auditer, plus facile à désactiver.
- Plafonne les programmes lourds. Un eWallet qui monte à 10 000 000 DZD est une dette commerciale. Surveille les montants max via un filtre dans la liste des cartes (menu Ventes → Configuration → Cartes-cadeaux & eWallet → Voir cartes).
- Communique le solde au client. Sur le portail client (si activé), les cartes apparaissent automatiquement dans l'onglet Rewards. Plus le client voit son solde, plus il revient.
- Audite les programmes 1× par trimestre. Désactive ceux qui ne servent plus. Chaque programme actif allonge le calcul lors de la validation d'un devis ou d'un ticket POS.
- Prévois la fin. Quand tu stoppes une campagne de coupons, assure-toi que les coupons déjà émis ont une date d'expiration cohérente, sinon ils restent utilisables indéfiniment et plombent les comptes futurs.
À retenir
🏆 Club de fidélité (loyalty)
Points accumulés à chaque commande, convertibles en remise ligne. Chez InfoSphere : 1 point / 100 DZD, 100 points = 500 DZD. Pour les clients réguliers qu'on veut récompenser.
🎁 Cartes-cadeaux (gift_card)
Bons préchargés avec code unique, transférables entre détenteurs. Pour offrir, faire des cadeaux d'entreprise, lancer des campagnes d'acquisition. Chez InfoSphere : bon de 25 000 DZD pour Réseau Plus.
💳 eWallet (ewallet)
Porte-monnaie nominatif rechargeable, utilisable comme paiement sur tout devis/POS. Pour les grossistes avec acomptes, clients fidèles avec cashback. Chez InfoSphere : 50 000 DZD sur la fiche ImportEquip.
🎫 Coupons prochaine commande
Émission auto à chaque SO franchissant un seuil, valables sur la commande suivante. Pour créer le réflexe de retour. Chez InfoSphere : -5 000 DZD sur toute commande > 100 000 DZD.
Saison 10 bouclée
Tu sais maintenant lancer des promotions multicanal (Partie 1), segmenter tes clients par pricelists Pro/Revendeur/VIP (Partie 2) et fidéliser tes meilleurs clients avec points, cartes-cadeaux, eWallet et coupons (Partie 3). Ta boîte à outils Revenue Management est complète en Odoo 19 CE — sans Enterprise, sans module tiers.
Le Club InfoSphere et ses 5 000 points attendent leur premier échange. Et Karim a déjà l'idée du prochain chantier : intégrer le tout au site eCommerce pour que les clients saisissent leurs codes en self-service.
💼 Approfondir — Prospection & Ventes
Autres articles du même domaine :
Promotions multicanal (Partie 1)
Revenue Management
Pricelists & segmentation (Partie 2)
Revenue Management
Acheter & Vendre
Suite de la Saison 10 — Revenue Management
Articles complémentaires
Sur les mêmes thématiques : #intermediaire#cas-pratique
👥 Ressources humaines · Saison 4
👥 Ressources humaines · Saison 4
🛍 Site web & eCommerce · Saison 5