Niveaux de fidélité
Le système de niveaux de fidélité récompense les clients réguliers avec des remises automatiques basées sur leur activité accumulée. À mesure que les membres utilisent le café (en dépensant de l'argent, en se connectant, en achetant des forfaits ou en passant des commandes), ils gagnent des points de fidélité. Lorsque le total de leurs points dépasse le seuil d'un niveau, ils passent au niveau supérieur et bénéficient d'une remise plus importante sur la tarification des sessions.
Structure des niveaux
Chaque niveau de fidélité est défini par quatre champs :
| Champ | Description |
|---|---|
code |
Un code court unique pour le niveau (par exemple silver, gold, vip). Utilisé en interne pour l'identification et dans les réponses API. |
name |
Un nom d'affichage lisible (par exemple "Membre Argent", "Membre Or"). Affiché dans le profil du membre et sur l'écran de verrouillage du client. |
threshold_points |
Le nombre minimum de points de fidélité qu'un membre doit accumuler pour accéder à ce niveau. |
discount_bps |
La remise appliquée à la tarification de session, exprimée en points de base. 100 BPS équivaut à 1 %. Une valeur de 500 signifie une remise de 5 %. |
Les niveaux sont ordonnés par leur valeur threshold_points. Un membre appartient au niveau le plus élevé pour lequel il atteint le seuil de points.
Remises en points de base (BPS)
Les remises sont exprimées en points de base (BPS) plutôt qu'en pourcentages afin d'éviter les erreurs d'arrondi lies aux nombres à virgule flottante dans les calculs financiers. Un point de base équivaut à 0,01 %, soit un centième de pour cent.
Valeurs de remise courantes :
| Valeur BPS | Pourcentage | Exemple sur un tarif de 1000 unités/heure |
|---|---|---|
| 250 | 2,5 % | Le membre paie 975 par heure |
| 500 | 5 % | Le membre paie 950 par heure |
| 1000 | 10 % | Le membre paie 900 par heure |
| 1500 | 15 % | Le membre paie 850 par heure |
| 2000 | 20 % | Le membre paie 800 par heure |
Lorsqu'un membre avec une remise de niveau démarre une session, le moteur de tarification réduit le tarif horaire de base par la valeur discount_bps du niveau avant de calculer les coûts des segments.
Événements de fidélité
Les membres gagnent des points via des événements de fidélité. Chaque événement enregistre un changement de points et l'activité qui l'a déclenché :
| Type d'événement | Description | Points type |
|---|---|---|
spend |
Le membre a payé une session (postpayée ou déduction de portefeuille). Les points sont proportionnels au montant dépensé. | Variable selon le montant dépensé |
usage |
Le membre a utilisé un PC ou une console pour une session, quel que soit le paiement. Les points sont basés sur la durée d'utilisation. | Variable selon les minutes utilisées |
visit |
Le membre s'est connecté depuis un PC client. Un bonus fixe par visite, encourageant la fréquentation régulière. | Fixe par visite |
topup |
Le membre a ajouté des fonds à son portefeuille. Les points reflètent le montant du rechargement. | Variable selon le montant du rechargement |
order |
Le membre a passé une commande de produit (nourriture, boissons, etc.). Les points sont proportionnels au total de la commande. | Variable selon le total de la commande |
adjustment |
Un ajustement manuel de points effectué par un administrateur. Utilisé pour les corrections, promotions ou récompenses spéciales. | Toute valeur (positive ou négative) |
Chaque enregistrement d'événement de fidélité inclut :
- points_delta : le nombre de points gagnés (positif) ou perdus (négatif) suite à cet événement.
- amount_minor : le montant monétaire associé à l'événement (en unités monétaires mineures), le cas échéant.
- minutes_delta : le nombre de minutes associées à l'événement, le cas échéant.
- source_entity / source_entity_id : une référence vers la session, la commande ou la transaction qui a généré l'événement.
- event_at : l'horodatage de l'événement.
Progression des niveaux
La progression des niveaux fonctionne comme suit :
- Un membre effectue une activité (session, achat, connexion, etc.).
- Le système crée un événement de fidélité avec le
points_deltacorrespondant. - Le total de points du membre est recalculé comme la somme de toutes les valeurs
points_deltade ses événements de fidélité. - Le système vérifie si le nouveau total atteint le seuil d'un niveau supérieur.
- Si le membre est éligible pour un nouveau niveau, son champ
tierest mis à jour et la nouvelle remise prend effet dès sa prochaine session.
L'attribution de niveau peut également être définie manuellement par un administrateur, outrepassant le calcul automatique.
Application des remises de niveau à la tarification de session
Lorsque le moteur de tarification calcule le coût d'un segment de session pour un membre :
- Le prix horaire de base est déterminé par le créneau tarifaire actif.
- Si le membre possède un niveau avec une valeur
discount_bps, le prix de base est réduit :prix_remise = prix_base * (10000 - discount_bps) / 10000. - De plus, les remises individuelles au niveau du membre (
member_discount_bpssur l'enregistrement du membre) sont appliquées si présentes. - Le tarif final après remise est utilisé pour calculer le coût du segment.
Les remises de niveau et les remises individuelles peuvent se cumuler, offrant au membre le bénéfice combiné des deux.
Création et gestion des niveaux
Pour créer un nouveau niveau :
- Rendez-vous dans Paramètres et ouvrez la section Tarification (ou la zone dédiée à la gestion des niveaux).
- Cliquez sur Ajouter un niveau.
- Saisissez le code (unique, en minuscules), le nom (libellé d'affichage), les points de seuil et la remise BPS.
- Enregistrez le niveau.
Pour modifier un niveau existant, sélectionnez-le dans la liste et modifiez ses champs. Les modifications de la valeur discount_bps d'un niveau prennent effet pour tous les membres actuellement assignés à ce niveau, à partir de leur prochaine session.
Pour supprimer un niveau, retirez-le de la liste. Les membres qui étaient assignés au niveau supprimé seront rétrogradés au niveau immédiatement inférieur pour lequel ils sont éligibles en fonction de leurs points.
Exemple de configuration de niveaux
Une configuration typique à trois niveaux pourrait ressembler à ceci :
| Code | Nom | Points de seuil | Remise BPS |
|---|---|---|---|
bronze |
Bronze | 0 | 0 |
silver |
Argent | 500 | 500 |
gold |
Or | 2000 | 1000 |
vip |
VIP | 5000 | 1500 |
Dans cette configuration, un nouveau membre commence au niveau Bronze (aucune remise). Après avoir accumulé 500 points grâce aux visites, dépenses et commandes, il passe automatiquement au niveau Argent avec une remise de 5 %. À 2000 points, il atteint le niveau Or (10 %) et à 5000 points, il obtient le statut VIP (15 %).