HandyCafe Docs
owner cashier

Portefeuille des membres

Le portefeuille des membres est un systeme de solde monetaire qui permet aux membres de prepayer les services du cafe. Au lieu de payer en especes pour chaque session individuelle, un membre peut charger des fonds dans son portefeuille et le systeme deduit automatiquement de ce solde lorsqu'il utilise des PC, des consoles ou commande des produits.

Architecture basée sur les crédits

Le portefeuille utilise un systeme de credits plutot qu'un simple solde courant. Chaque fois que des fonds sont ajoutes au portefeuille d'un membre, le systeme cree un nouveau credit de portefeuille. Chaque entree de credit est un enregistrement individuel avec son propre solde, sa source, sa date d'expiration et ses restrictions d'appareil. Cette conception offre :

  • Une tracabilite complete de l'origine de chaque unite de solde.
  • Des dates d'expiration independantes par entree de credit.
  • Des restrictions specifiques par appareil (certains credits ne peuvent etre utilises que sur PC, d'autres uniquement sur console).
  • Une separation nette entre les fonds payes et les bonus promotionnels.

Le solde total du portefeuille du membre est la somme de toutes les valeurs restantes de ses entrees de credit actives.

Types de credit

Chaque credit de portefeuille possede un type de credit qui identifie la maniere dont les fonds sont entres dans le systeme :

Type de credit Description
Paye Le membre a paye ces fonds (especes, carte ou autre mode de paiement). Cree lors de l'achat d'un forfait de campagne base sur l'argent.
Bonus Fonds promotionnels accordes dans le cadre d'un achat de forfait. Par exemple : "payez pour 100 minutes, obtenez 20 minutes bonus en credit."
Manuel Charge manuellement par un caissier ou un administrateur. Utilise pour les credits de bonne volonte ou les arrangements speciaux.
Correction Un ajustement administratif pour corriger une erreur dans le solde du membre.
Migration Fonds importes depuis un systeme existant lors de la migration des donnees.
Remboursement annule Fonds restaures lorsqu'un remboursement precedemment emis est annule.

Le type de credit est defini lors de la creation du credit et ne peut pas etre modifie par la suite. Il sert de piste d'audit permanente.

Statut du credit

Chaque credit de portefeuille passe par un cycle de vie suivi par son statut :

  • Actif : le credit dispose de fonds restants et n'a pas expire. Les fonds peuvent etre consommes a partir de ce credit.
  • Expire : la date d'expiration du credit est passee. Les fonds restants ne sont plus utilisables.
  • Consomme : le solde restant du credit a atteint zero par consommation normale.
  • Annule : le credit a ete annule manuellement par un administrateur, invalidant tout solde restant.

Consommation du portefeuille

Lorsque le portefeuille d'un membre est debite (pour du temps de session, une commande ou un autre evenement facturable), le systeme cree un enregistrement de consommation de portefeuille qui est lie a une entree de credit specifique et enregistre le montant exact deduit.

Chaque enregistrement de consommation inclut un contexte identifiant ce qui a declenche la deduction :

Contexte Description
Utilisation de session Fonds consommés pour payer le temps d'utilisation de la session. Le système réduit du portefeuille pendant la session.
Paiement par portefeuille Un paiement direct depuis le portefeuille (par exemple lorsque le membre paie une commande de produit avec le solde de son portefeuille).
Commande Fonds consommes pour payer une commande de produit au comptoir ou livree au PC du membre.
Remboursement Un ajustement negatif cree lors du traitement d'un remboursement, reduisant la consommation pour restituer les fonds a l'entree de credit.

Chaque enregistrement de consommation est relie a la session, la commande ou la transaction specifique qui l'a provoque, permettant une tracabilite d'audit complete.

Journal de solde

En plus des enregistrements de consommation au niveau du credit, le systeme maintient un journal de solde du membre qui enregistre chaque evenement modifiant le solde global du portefeuille du membre :

Type d'evenement Description
load Des fonds ont ete ajoutes au portefeuille (nouvelle entree de credit creee ou rechargement d'une entree existante).
spend Des fonds ont ete consommes depuis le portefeuille (paiement de session, paiement de commande).
refund Des fonds ont ete restitues au portefeuille (remboursement de commande, remboursement de session).
adjustment Un changement administratif a ete effectue sur le solde (correction, radiation).

Chaque entree du journal de solde enregistre le montant du changement et le solde resultant, permettant de reconstituer le solde du membre a tout moment en lisant le journal chronologiquement.

Restriction d'appareil

Chaque credit de portefeuille possede une restriction d'appareil qui controle quels types d'appareils peuvent le consommer :

Restriction Signification
Client Utilisable sur les PC clients. Egalement utilisable sur les consoles, sauf restriction explicite.
Console Utilisable sur les consoles de jeux. Egalement utilisable sur les PC, sauf restriction explicite.
PC uniquement Utilisable exclusivement sur les PC clients. Ne peut pas etre consomme par les sessions console.
Consoles uniquement Utilisable exclusivement sur les consoles de jeux. Ne peut pas etre consomme par les sessions PC.
Les deux Utilisable sur tout type d'appareil sans restriction. C'est la valeur par defaut.

Lorsque le systeme doit debiter le portefeuille d'un membre, il filtre les credits disponibles par restriction d'appareil pour s'assurer que seuls les credits eligibles sont debites.

Categorie de portefeuille et depenses inter-categories

Les credits de portefeuille peuvent etre etiquetes avec une categorie de portefeuille (par exemple "jeux" ou "general"). Cela permet au cafe de creer des reserves de solde isolees qui ne peuvent etre depensees que dans certains contextes.

L'option de depenses inter-categories sur chaque credit controle si ses fonds peuvent etre utilises en dehors de la categorie designee :

  • Lorsque desactivee (par defaut), le credit ne peut etre consomme que dans sa propre categorie.
  • Lorsque activee, le credit peut egalement etre consomme par des transactions d'autres categories.

Si un credit n'a pas de categorie de portefeuille attribuee, il est traite comme un credit a usage general et peut etre consomme par toute transaction quelle que soit la categorie.

Fonctionnement des rechargements

Les fonds de portefeuille peuvent etre ajoutes par plusieurs methodes :

  1. Achat de forfait de campagne : lorsqu'un membre achete un forfait base sur l'argent depuis une campagne, le systeme cree automatiquement des credits de portefeuille selon la definition du forfait. Un seul achat de forfait peut creer plusieurs credits (un pour la partie payee, un pour la partie bonus).

  2. Chargement manuel : un caissier peut ajouter manuellement des fonds au portefeuille d'un membre depuis le panneau de detail du membre. Cela cree une entree de credit avec le type "Manuel".

  3. Migration : lors de la mise en place du systeme, les soldes existants d'un systeme precedent peuvent etre importes comme entrees de credit avec le type "Migration".

Consommation du portefeuille durant les sessions

Lorsqu'un membre disposant d'un solde de portefeuille démarre une session, le système peut automatiquement payer la session depuis le portefeuille :

  1. Le moteur de tarification calcule le cout par minute en fonction du creneau tarifaire actif et des remises de niveau applicables.
  2. Pendant le deroulement de la session, le systeme deduit periodiquement le cout accumule des credits de portefeuille eligibles du membre.
  3. Les credits sont consommes par ordre de date d'expiration (les credits expirant le plus tot sont utilises en premier) pour minimiser les pertes dues a l'expiration.
  4. Si la vente du portefeuille est épuisée avant la fin de la session, le cout restant est facture en espèces de paiement à la clôture de la session.
  5. Chaque déduction crée un enregistrement de consommation situé à la session en tant qu'entrée "Utilisation de session".