Guides

Personnalisez chaque e-mail : Comment les modèles d'e-mails personnalisés de Firma.dev fonctionnent

Écrit par

Contenu

Lorsque vous intégrez des signatures électroniques dans votre produit, vos clients ne devraient pas avoir à savoir quelle plateforme en est à l'origine. L'expérience de signature doit être à votre image, y compris pour chaque e-mail automatisé envoyé au cours du processus. Firma.dev vous permet désormais de personnaliser chaque e-mail de notification envoyé par la plateforme en votre nom, avec un contrôle total sur les objets, le corps HTML et les surcharges par espace de travail.

Vos clients voient votre marque, pas la nôtre

Chaque flux de signature déclenche une série d'e-mails automatisés : l'invitation initiale, la notification du signataire suivant dans un flux séquentiel, les avis d'expiration, les messages d'annulation et les notifications de refus. Avant les modèles d'e-mails personnalisés, tous ces e-mails étaient envoyés avec le texte et la mise en forme par défaut de Firma.dev.

Vous contrôlez désormais ces cinq éléments :

Type d'e-mail

Moment de l'envoi

signing_invite

Lorsqu'une demande de signature est envoyée pour la première fois à un destinataire

next_signer

Lorsque c'est au tour du signataire suivant dans un ordre de signature

signing_expired

Lorsqu'une demande de signature expire

signing_cancelled

Lorsqu'un expéditeur annule une demande de signature

signing_declined

Lorsqu'un signataire refuse de signer

L'objet (texte brut, 500 caractères max.) et le corps (HTML, 50 000 caractères max.) sont entièrement personnalisables pour chaque type. Vous pouvez ainsi adapter exactement le ton, la mise en page, les couleurs et le texte à l'image de votre marque.

Espaces réservés dynamiques

Les modèles prennent en charge une syntaxe {{placeholder}} pour injecter des valeurs dynamiques au moment de l'envoi. La liste complète des espaces réservés disponibles peut être consultée via GET /email-templates/placeholders, et comprend ceux que vous utiliserez le plus :

  • {{signing_link}} — le lien unique du signataire pour accéder au document

  • {{signer_name}} — le nom du destinataire

  • {{document_name}} — le nom de la demande de signature

Un exemple pratique de corps pour signing_invite :

<p>Bonjour {{signer_name}},</p>
<p>
  {{sender_name}} vous a envoyé un document à relire et à signer.
  Veuillez utiliser le lien ci-dessous pour y accéder.
</p>
<p>
  <a href="{{signing_link}}" style="background:#1a1a1a;color:#fff;padding:12px 24px;border-radius:4px;text-decoration:none;">
    Relire et signer
  </a>
</p>
<p>Ce lien expire dans {{expiration_hours}} heures.</p>
<p>— L'équipe {{company_name}}</p>
<p>Bonjour {{signer_name}},</p>
<p>
  {{sender_name}} vous a envoyé un document à relire et à signer.
  Veuillez utiliser le lien ci-dessous pour y accéder.
</p>
<p>
  <a href="{{signing_link}}" style="background:#1a1a1a;color:#fff;padding:12px 24px;border-radius:4px;text-decoration:none;">
    Relire et signer
  </a>
</p>
<p>Ce lien expire dans {{expiration_hours}} heures.</p>
<p>— L'équipe {{company_name}}</p>
<p>Bonjour {{signer_name}},</p>
<p>
  {{sender_name}} vous a envoyé un document à relire et à signer.
  Veuillez utiliser le lien ci-dessous pour y accéder.
</p>
<p>
  <a href="{{signing_link}}" style="background:#1a1a1a;color:#fff;padding:12px 24px;border-radius:4px;text-decoration:none;">
    Relire et signer
  </a>
</p>
<p>Ce lien expire dans {{expiration_hours}} heures.</p>
<p>— L'équipe {{company_name}}</p>

Note pour les développeurs : si le corps de votre modèle ne contient pas {{signing_link}}, l'API renvoie un avertissement lors de l'enregistrement. L'enregistrement réussit tout de même, mais cet avertissement est là pour éviter qu'un signataire ne reçoive un e-mail sans aucun moyen d'accéder à son document.

Modèles au niveau de l'entreprise et de l'espace de travail

Le système de modèles utilise une hiérarchie à trois niveaux : le modèle de l'espace de travail est prioritaire, puis le modèle de l'entreprise, et enfin le modèle par défaut intégré de Firma.dev. Cela vous offre deux schémas d'intégration naturels.

Définir un modèle par défaut pour toute l'entreprise

Configurez votre modèle personnalisé une seule fois au niveau de l'entreprise et il s'appliquera à tous les espaces de travail qui ne possèdent pas leur propre surcharge. Le schéma du point de terminaison issu du journal des modifications de l'API :

PUT /company/email-templates/{email_type}
{
  "subject": "Veuillez signer : {{document_name}}",
  "body": "<p>Bonjour {{signer_name}},</p><p>Veuillez relire et signer en utilisant ce lien : {{signing_link}}</p>"
}
PUT /company/email-templates/{email_type}
{
  "subject": "Veuillez signer : {{document_name}}",
  "body": "<p>Bonjour {{signer_name}},</p><p>Veuillez relire et signer en utilisant ce lien : {{signing_link}}</p>"
}
PUT /company/email-templates/{email_type}
{
  "subject": "Veuillez signer : {{document_name}}",
  "body": "<p>Bonjour {{signer_name}},</p><p>Veuillez relire et signer en utilisant ce lien : {{signing_link}}</p>"
}

Surcharger par espace de travail

Pour les partenaires utilisant le modèle d'espace de travail client de Firma.dev, chaque espace de travail peut disposer de ses propres modèles d'e-mails. Cet exemple curl est extrait du guide de marque blanche :

curl -X PUT https://api.firma.dev/functions/v1/signing-request-api/workspace/{workspace_id}/email-templates/signing_invite \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Action requise : Veuillez signer {{document_name}}",
    "body": "<p>Bonjour {{signer_name}},</p><p>{{sender_name}} a demandé votre signature sur {{document_name}}.</p><p><a href=\"{{signing_link}}\">Signer maintenant</a></p><p>— L'équipe {{workspace_name}}</p>"
  }'
curl -X PUT https://api.firma.dev/functions/v1/signing-request-api/workspace/{workspace_id}/email-templates/signing_invite \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Action requise : Veuillez signer {{document_name}}",
    "body": "<p>Bonjour {{signer_name}},</p><p>{{sender_name}} a demandé votre signature sur {{document_name}}.</p><p><a href=\"{{signing_link}}\">Signer maintenant</a></p><p>— L'équipe {{workspace_name}}</p>"
  }'
curl -X PUT https://api.firma.dev/functions/v1/signing-request-api/workspace/{workspace_id}/email-templates/signing_invite \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Action requise : Veuillez signer {{document_name}}",
    "body": "<p>Bonjour {{signer_name}},</p><p>{{sender_name}} a demandé votre signature sur {{document_name}}.</p><p><a href=\"{{signing_link}}\">Signer maintenant</a></p><p>— L'équipe {{workspace_name}}</p>"
  }'

Un espace de travail desservant des clients en Allemagne pourrait utiliser des modèles en langue allemande avec la charte graphique spécifique de ce client, tandis qu'un autre espace de travail utilisera les paramètres par défaut de votre entreprise.

La suppression d'un modèle d'espace de travail rétablit cet espace de travail sur le modèle par défaut au niveau de l'entreprise. La suppression du modèle de l'entreprise rétablit le modèle par défaut intégré de Firma.dev. La chaîne de repli dispose ainsi toujours d'une solution de secours.

Référence complète de l'API

Point de terminaison

Description

GET /company/email-templates

Lister tous les modèles au niveau de l'entreprise

PUT /company/email-templates/{email_type}

Créer ou mettre à jour un modèle d'entreprise

DELETE /company/email-templates/{email_type}

Supprimer un modèle d'entreprise

GET /workspace/{id}/email-templates

Lister tous les modèles d'espace de travail

GET /workspace/{id}/email-templates/{email_type}

Obtenir un modèle d'espace de travail spécifique

PUT /workspace/{id}/email-templates/{email_type}

Créer ou mettre à jour un modèle d'espace de travail

DELETE /workspace/{id}/email-templates/{email_type}

Supprimer un modèle d'espace de travail

GET /email-templates/defaults/{language}

Obtenir les valeurs par défaut intégrées pour une langue (ex. : fr)

GET /email-templates/placeholders

Obtenir tous les espaces réservés disponibles

Le point de terminaison GET /email-templates/defaults/{language} est particulièrement utile comme point de départ : récupérez le modèle intégré pour votre langue cible, personnalisez-le et enregistrez-le. Pas besoin de rédiger le texte de l'e-mail de zéro.

Prise en main

Les modèles d'e-mails personnalisés sont disponibles à partir de la version 1.8.0 de l'API, sans changement majeur. Si vous êtes déjà intégré, vous pouvez commencer à personnaliser vos e-mails dès aujourd'hui sans modifier la logique de vos demandes de signature existantes.

Commencez à utiliser Firma.dev gratuitement, sans carte de crédit requise. Toutes les demandes de signature sont à 0,049 € par enveloppe, sans minimum mensuel.

  1. Titre

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,049 € par enveloppe lorsque vous serez prêt à lancer votre activité.

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,049 € par enveloppe lorsque vous serez prêt à lancer votre activité.

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,049 € par enveloppe lorsque vous serez prêt à lancer votre activité.