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

# Utiliser les variables dynamiques

> Insérez des variables dynamiques dans les modèles de contrat et les modèles d'e-mail pour remplir automatiquement les données clients, devis et produits.

{/* AUDIT NOTE: Variable syntax ({{variable.name}}) and date/number/conditional formatting are consistent with what was observed in the contract model editor. Nav path to contract model editor now confirmed: Content → Contract Models → [model name]. Whether typing {{ opens an autocomplete picker unverified. Email template location and variable reference panel button label remain as TODOs. Custom field variable syntax unverified. */}

Les variables dynamiques vous permettent d'insérer des espaces réservés dans les modèles de contrat, les modèles d'e-mail et les documents, qui se remplissent automatiquement avec des données réelles lorsque vous les générez ou les envoyez. Vous pouvez référencer les informations client, les totaux de devis, les noms de produits et les champs personnalisés.

## Syntaxe

Les variables dynamiques utilisent des doubles accolades : `{{variable.name}}`. Elles extraient les données du dossier client, du devis ou des lignes d'articles associés au document.

Catégories de variables courantes :

* `{{customer.*}}` — Informations client (nom, e-mail, adresse, champs personnalisés)
* `{{quote.*}}` — Détails du devis (numéro, total, sous-total, statut, dates)
* `{{product.*}}` — Détails des lignes produits (nom, quantité, prix, remise)
* `{{user.*}}` — Informations sur le commercial ou le responsable (nom, e-mail, titre, téléphone)
* `{{company.*}}` — Détails de votre entreprise (nom, adresse, URL du logo)

<Note>
  Les noms de variables sont sensibles à la casse. Utilisez le format exact affiché dans le panneau de référence des variables.
</Note>

## Insérer une variable dans un modèle de contrat

<Steps>
  <Step title="Ouvrir l'éditeur de modèle de contrat">
    Dans le menu latéral gauche, cliquez sur **Content** → **Contract Models**, puis sélectionnez le modèle de contrat que vous souhaitez modifier, ou créez-en un nouveau.
  </Step>

  <Step title="Positionner votre curseur">
    Cliquez à l'endroit où vous souhaitez que la variable apparaisse dans le corps du document.
  </Step>

  <Step title="Insérer la variable">
    Tapez `{{` pour ouvrir le sélecteur de variables, ou saisissez manuellement le nom complet de la variable, par exemple `{{customer.name}}`. {/* TODO: verify if autocomplete picker exists */}

    Sélectionnez la variable dans la liste ou appuyez sur **Entrée** pour confirmer.
  </Step>

  <Step title="Prévisualiser le résultat">
    Cliquez sur **\[BUTTON LABEL]** pour voir comment la variable s'affiche avec des données d'exemple. {/* TODO: verify preview button label */}
  </Step>

  <Step title="Enregistrer le modèle de contrat">
    Cliquez sur **Save** pour appliquer vos modifications.
  </Step>
</Steps>

## Formater les variables

Vous pouvez appliquer des modificateurs de format pour contrôler l'affichage des variables.

### Formatage des dates

Ajoutez un modificateur de format après le nom de la variable :

* `{{quote.created_date | date: "MM/DD/YYYY"}}` → 12/31/2024
* `{{quote.expiry_date | date: "MMMM D, YYYY"}}` → December 31, 2024

### Formatage des nombres

Formatez les valeurs monétaires et décimales :

* `{{quote.total | currency}}` → \$10,000.00
* `{{product.quantity | number: 2}}` → 1,234.56

### Logique conditionnelle

Affichez ou masquez du contenu en fonction des valeurs des variables :

```
{{#if quote.discount}}
Une remise de {{quote.discount}}% a été appliquée.
{{/if}}
```

<Info>
  La logique conditionnelle avancée et les boucles requièrent une syntaxe spécifique. Contactez le support pour des besoins de formatage personnalisé.
</Info>

## Utiliser des variables dans les modèles d'e-mail

Vous pouvez insérer des variables dynamiques dans les lignes d'objet et le corps des e-mails lors de la configuration des notifications automatisées ou des e-mails de devis. {/* TODO: verify email template location */}

Accédez à **\[MENU PATH]** et sélectionnez le modèle d'e-mail. Utilisez la même syntaxe `{{variable.name}}` dans les champs d'objet ou de corps.

## Référence des variables courantes

| Variable                 | Description                  | Exemple de résultat                         |
| ------------------------ | ---------------------------- | ------------------------------------------- |
| `{{customer.name}}`      | Nom complet du client        | Acme Corporation                            |
| `{{customer.email}}`     | Adresse e-mail du client     | [contact@acme.com](mailto:contact@acme.com) |
| `{{quote.number}}`       | Numéro de référence du devis | Q-2024-00123                                |
| `{{quote.total}}`        | Montant total du devis       | 10000.00                                    |
| `{{quote.created_date}}` | Date de création du devis    | 2024-01-15                                  |
| `{{user.name}}`          | Nom complet du commercial    | John Smith                                  |
| `{{user.email}}`         | E-mail du commercial         | [john@company.com](mailto:john@company.com) |
| `{{company.name}}`       | Nom de votre entreprise      | Your Company Inc.                           |

<Tip>
  Pour voir la liste complète des variables disponibles pour votre instance, cliquez sur **\[BUTTON LABEL]** dans l'éditeur de modèle de contrat. {/* TODO: verify variable reference panel access */}
</Tip>

## Étapes suivantes

Lorsque vous publiez un devis ou générez un contrat, Qwoty remplace toutes les variables par les données réelles issues des dossiers associés. Si une variable référence un champ sans valeur, elle s'affiche comme vide, sauf si vous configurez une valeur de remplacement.

## Résolution des problèmes

<AccordionGroup>
  <Accordion title="La variable s'affiche comme {{customer.name}} au lieu de la valeur réelle">
    Le nom de la variable est peut-être mal orthographié ou le champ n'existe pas. Vérifiez le panneau de référence des variables pour la syntaxe correcte. Assurez-vous que le dossier client contient des données dans ce champ.
  </Accordion>

  <Accordion title="La date s'affiche dans le mauvais format">
    Ajoutez un modificateur de format de date : `{{quote.created_date | date: "MM/DD/YYYY"}}`. Vérifiez que la chaîne de format correspond aux jetons de date pris en charge.
  </Accordion>

  <Accordion title="La variable apparaît vide dans le document généré">
    Le champ référencé est vide dans le dossier source. Ajoutez une valeur par défaut à l'aide de la syntaxe conditionnelle ou renseignez le champ avant de générer le document.
  </Accordion>

  <Accordion title="Les variables de champs personnalisés ne fonctionnent pas">
    Les variables de champs personnalisés peuvent utiliser une syntaxe différente, comme `{{custom.field_name}}` ou `{{customer.custom_field_name}}`. Consultez votre administrateur ou le panneau de référence des variables pour les conventions de nommage des champs personnalisés. {/* TODO: verify custom field variable syntax */}
  </Accordion>
</AccordionGroup>

## En lien

<CardGroup cols={2}>
  <Card title="Créer un modèle de contrat" icon="file-contract" href="/user-guide/documents/how-tos/create-contract-model">
    Créez des modèles de contrat avec des variables et une mise en forme
  </Card>

  <Card title="Configurer les modèles d'e-mail" icon="envelope" href="/user-guide/settings/introduction">
    Configurez des e-mails automatisés avec du contenu dynamique
  </Card>

  <Card title="Champs personnalisés" icon="table-columns" href="/user-guide/settings/users/manage-users">
    Ajoutez des champs personnalisés aux devis et aux clients
  </Card>

  <Card title="Générer des contrats" icon="file-export" href="/user-guide/quotes/reference/lifecycle">
    Créez des contrats définitifs à partir de devis approuvés
  </Card>
</CardGroup>
