Utiliser les champs personnalisés WooCommerce
Utilisez la section Orders de WooCommerce, puis Edit order, pour gérer les activations d’une commande donnée :

Lorsque le client active le classeur compilé EXE, l’application web modifie la commande WooCommerce concernée en ajoutant un champ personnalisé nommé xlspadlock_activations:

La valeur du champ personnalisé xlspadlock_activations contient une liste d’identifiants système. Ces identifiants système uniques représentent les ordinateurs sur lesquels le client a activé le classeur compilé EXE. Les identifiants système sont séparés par le caractère |.
Par exemple, « CD78-4563-3F2B|HC78-1243-EF74 » indique que le classeur compilé EXE a été activé sur deux ordinateurs différents. Si vous avez configuré l’application web pour n’autoriser que 2 activations, une erreur sera déclenchée la prochaine fois (plus aucune activation disponible).
Vous pouvez effacer manuellement les activations existantes en supprimant l’identifiant système correspondant. Mais il est préférable de proposer la désactivation à vos clients afin de ne pas avoir à effacer vous-même les identifiants système lorsque les clients souhaitent transférer leur licence vers de nouveaux ordinateurs.
Champs personnalisés pour l’expiration des licences et la gestion de l’utilisation
Section titled “Champs personnalisés pour l’expiration des licences et la gestion de l’utilisation”Le serveur peut gérer les limites d’expiration et d’utilisation afin d’éviter le piratage local. Voici les champs et leur fonctionnement :
- Server-Side Expiration Control: Si `use_server_expiration` est activé dans config.ini, le serveur contrôlera automatiquement l’expiration de la licence afin d’empêcher toute modification locale.
- Maximum Days Expiration (`xlspadlock_expiration_{productId}_{systid}`): Ce champ personnalisé est créé lorsqu’une durée maximale définie (`variationMaxDays`) existe pour la validité de la licence à partir de la date d’activation. La date d’expiration est définie en fonction de cette durée et est comparée à la date actuelle à chaque demande d’activation.
- Si la date d’expiration est dépassée, le serveur bloquera l’activation et affichera une erreur : “Your license for this activation has expired. Cannot activate.”
- Exemple : `xlspadlock_expiration_1234_CD78-4563-3F2B`
- Fixed Expiration Date (`variationExpireDate`): Si une date d’expiration fixe est définie, elle est stockée dans ce champ. Chaque demande d’activation vérifiera si la date actuelle est au-delà de cette date d’expiration.
- Si la licence a expiré, la tentative d’activation est refusée avec l’erreur : “Your license has expired. Cannot activate.”
- Maximum Runs Limit (`xlspadlock_runs_{productId}_{systid}`): Pour les licences qui expirent après un nombre limité d’utilisations, ce champ suit les activations restantes.
- Initialement défini sur le nombre total d’exécutions autorisées (`variationMaxRuns`), ce compteur diminue à chaque activation du classeur par le client.
- Si le nombre d’exécutions restantes atteint zéro, l’activation est refusée et le message suivant s’affiche : “You have reached the maximum number of allowed runs. Cannot activate.”
- Exemple : `xlspadlock_runs_1234_CD78-4563-3F2B`
- Maximum Days Expiration (`xlspadlock_expiration_{productId}_{systid}`): Ce champ personnalisé est créé lorsqu’une durée maximale définie (`variationMaxDays`) existe pour la validité de la licence à partir de la date d’activation. La date d’expiration est définie en fonction de cette durée et est comparée à la date actuelle à chaque demande d’activation.
Note : à chaque fois que le client active le fichier classeur compilé EXE, une note est ajoutée à la commande WooCommerce, comme vous pouvez le voir ici :
