> ## 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.

# Incrémenter variable

> Action de stratégie qui ajoute une valeur à une variable utilisateur numérique. Idéale pour tenir un compteur qui déclenche d'autres règles au fil de la conversation.

L'action **"Incrémenter variable"** s'utilise dans une règle de [stratégie](/fr/advanced/jobs/autoreply#workflow) pour **ajouter une valeur** à une variable utilisateur numérique quand la règle matche. Elle sert à tenir un **compteur** propre à chaque utilisateur, que d'autres règles peuvent ensuite lire via les [conditions sur variables](/fr/advanced/strategy/conditions).

## Cas d'usage typiques

* **Compter les relances envoyées** : incrémenter un compteur à chaque relance pour arrêter au bout de N tentatives.
* **Suivre un engagement** : ajouter 1 à chaque fois que l'utilisateur répond, franchir un palier au-delà d'un seuil.
* **Cumuler un score d'intention** : ajouter un montant variable selon le contexte détecté par l'IA.
* **Compter les refus ou objections** pour adapter le discours après plusieurs occurrences.

## Options

### Nom de la variable

Champ **"Nom de la variable"** *(obligatoire)*. Indique la variable utilisateur à incrémenter.

<Warning>
  La variable doit **déjà exister** pour l'utilisateur. Si elle n'existe pas au moment de l'exécution, l'action n'a aucun effet et la stratégie continue avec les actions suivantes. Définissez la variable au préalable (par une action qui l'initialise) avant de l'incrémenter.
</Warning>

### Montant

Champ **"Montant"** *(optionnel, défaut `1`)*. Valeur ajoutée à la variable. Il supporte les [jetons dynamiques](/fr/advanced/strategy/tokens), résolus au moment de l'exécution.

* Les nombres **décimaux** sont acceptés (utilisez le point comme séparateur, par exemple `0.5`).
* Une valeur **négative** (par exemple `-2`) **soustrait** au lieu d'ajouter.
* Si le champ est laissé vide, la valeur `1` est utilisée.

## Selon le type de la variable

Le résultat dépend du contenu actuel de la variable.

| Contenu actuel                                          | Effet                                                                                                                                                                                        |
| ------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Un nombre**                                           | Le montant est **ajouté** à ce nombre.                                                                                                                                                       |
| **Une date ISO 8601** (ex. `2025-01-20T14:30:00Z`)      | La date est **avancée** du montant exprimé en **jours** (les décimales sont acceptées : `0.5` = 12 heures).                                                                                  |
| **Un texte contenant un nombre** (ex. `J'ai 5 animaux`) | Le **premier nombre** trouvé dans le texte est incrémenté, le reste du texte est conservé (ex. `J'ai 6 animaux`). Le format est préservé : un entier reste entier, un décimal reste décimal. |

<Note>
  Le cas « date » est pratique pour **décaler une échéance** stockée dans une variable — par exemple repousser une date de relance de quelques jours sans la recalculer.
</Note>

## Comportement à l'exécution

Quand la variable est bien incrémentée, la stratégie **continue** normalement avec les actions suivantes de la règle. La nouvelle valeur est immédiatement disponible pour les règles évaluées ensuite.

L'action **n'a aucun effet** (et la stratégie continue quand même) dans ces situations :

* La variable **n'existe pas**.
* La variable ne contient **ni** un nombre, **ni** une date, **ni** un texte comportant un nombre (par exemple un booléen, ou un texte purement alphabétique).
* Le **Montant** renseigné n'est **pas un nombre valide** après résolution des jetons.

<Tip>
  Pour qu'une variable soit reconnue comme numérique, initialisez-la avec un nombre. Combinez ensuite cette action avec la condition [Variable >](/fr/advanced/strategy/conditions/user-variables/uservar_greaterthan) pour déclencher une règle une fois un seuil franchi.
</Tip>

## Voir aussi

* [Jetons dynamiques](/fr/advanced/strategy/tokens) — Insérer une valeur dynamique dans le champ **Montant**.
* [Conditions sur variables](/fr/advanced/strategy/conditions) — Lire une variable pour déclencher d'autres règles.
* [Variable >](/fr/advanced/strategy/conditions/user-variables/uservar_greaterthan) — Réagir quand un compteur dépasse un seuil.
