> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fanifyai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Décrémenter variable

> Action de stratégie qui retranche une valeur à une variable utilisateur numérique. Sert de compteur décroissant, de crédit à consommer ou de recul de date.

L'action **"Décrémenter variable"** s'utilise dans une règle de [stratégie](/fr/advanced/jobs/autoreply#workflow) pour **retrancher une valeur** à une variable de l'utilisateur quand la règle matche. Elle est le pendant de l'incrément : là où l'incrément fait monter un compteur, celle-ci le fait descendre.

Les variables utilisateur sont des valeurs libres attachées à un fan (compteurs, crédits, jalons...). Vous pouvez ensuite les tester dans vos règles avec les conditions de [variables utilisateur](/fr/advanced/strategy/conditions/user-variables/uservar_greaterthan).

## Cas d'usage typiques

* **Consommer un crédit** : un fan dispose d'un quota (contenus offerts, réductions restantes) ; chaque utilisation retranche 1.
* **Compte à rebours** : décompter le nombre de relances autorisées avant de passer à une autre approche.
* **Solde d'un objectif** : réduire le montant restant à atteindre au fil des paiements.
* **Reculer une échéance** : ramener une date stockée dans une variable de quelques jours en arrière.

## Configuration

| Champ                  | Rôle                                                                                                 | Défaut |
| ---------------------- | ---------------------------------------------------------------------------------------------------- | ------ |
| **Nom de la variable** | Nom de la variable à décrémenter. Obligatoire.                                                       | —      |
| **Montant**            | Valeur à retrancher. Accepte les décimales et les [jetons dynamiques](/fr/advanced/strategy/tokens). | `1`    |

Le **Montant** est [tokenisé](/fr/advanced/strategy/tokens) : vous pouvez y insérer un jeton dynamique au lieu d'une valeur fixe. Le jeton est résolu au moment de l'exécution, juste avant le calcul.

<Tip>
  Un **Montant négatif** inverse l'effet : décrémenter de `-2` **ajoute** 2. Utile si la valeur à retrancher provient d'un jeton dont le signe peut varier.
</Tip>

## Comportement selon le type de variable

L'action s'adapte au contenu de la variable ciblée.

| Contenu de la variable                                   | Effet                                                                                                |
| -------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| **Nombre** (ex. `5`)                                     | La valeur est diminuée du montant (`5` devient `4`).                                                 |
| **Texte contenant un nombre** (ex. `J'ai 5 animaux`)     | Le nombre présent dans le texte est détecté, décrémenté, et le texte est réécrit (`J'ai 4 animaux`). |
| **Date au format ISO 8601** (ex. `2025-01-20T14:30:00Z`) | La date **recule du montant exprimé en jours** (décrémenter de `3` retire 3 jours).                  |
| **Texte sans nombre, booléen, ou valeur vide**           | Aucune modification. L'action échoue silencieusement.                                                |

<Info>
  Le montant accepte les **décimales**. Vous pouvez donc décrémenter un solde de `0.5`, ou reculer une date d'une demi-journée.
</Info>

## Comportement à l'exécution

L'action modifie la variable puis **laisse la stratégie se poursuivre** normalement avec les actions suivantes de la règle.

Dans plusieurs situations, l'action ne fait **rien** et la stratégie continue quand même (échec silencieux, sans interrompre le job ni les autres actions) :

* **La variable n'existe pas** encore pour cet utilisateur.
* **La variable n'est pas numérique** et ne contient aucun nombre exploitable.
* **Le Montant n'est pas un nombre valide** une fois les jetons résolus.

<Note>
  Cette action ne **crée pas** la variable si elle n'existe pas. Assurez-vous qu'elle a été initialisée au préalable (par exemple par une action qui la définit) avant de la décrémenter.
</Note>

<Warning>
  Cette action ne borne pas la valeur : une variable peut passer **en dessous de zéro** ou devenir négative. Si vous voulez éviter cela, encadrez l'action d'une condition (par exemple [Variable supérieure à](/fr/advanced/strategy/conditions/user-variables/uservar_greaterthan)) pour ne décrémenter que tant que la valeur reste positive.
</Warning>

## Voir aussi

* [Variable supérieure à](/fr/advanced/strategy/conditions/user-variables/uservar_greaterthan) — Déclencher une règle selon la valeur atteinte par un compteur.
* [Variable égale à](/fr/advanced/strategy/conditions/user-variables/uservar_equals) — Réagir quand un compteur atteint une valeur précise.
* [Jetons dynamiques](/fr/advanced/strategy/tokens) — Insérer une valeur dynamique dans le champ Montant.
