Skip to main content
Firma vous permet d’ajouter des signatures électroniques juridiquement contraignantes à toute application mobile créée avec Rork. Comme Rork génère des applications React Native (Expo), vous pouvez appeler l’API Firma depuis un backend léger et afficher l’expérience de signature dans une WebView au sein de votre application mobile. Ce guide couvre le parcours d’intégration recommandé : une fonction backend serverless qui appelle l’API REST Firma, avec une WebView React Native pour la signature intégrée.

Prérequis

  • Un compte Firma avec une clé API
  • Une application mobile générée avec Rork (React Native / Expo)
  • Au moins un modèle Firma avec des champs de signature configurés
  • Un backend pour les appels API sécurisés. Les options incluent Rork Backend, les fonctions Edge Supabase, les fonctions Serverless Vercel, ou tout serveur Node.js/Python
Firma utilise la clé API brute comme valeur de l’en-tête Authorization - ne la préfixez pas avec Bearer. Cela diffère de nombreuses autres API.

Étape 1 : Configurer votre backend

Les applications Rork s’exécutent côté client, vous avez donc besoin d’une couche côté serveur pour garder votre clé API secrète. Cet exemple utilise une fonction Edge Supabase, mais la même logique s’applique à tout backend. Créez la fonction Edge :
Stockez votre clé API Firma en tant que secret :
N’appelez jamais l’API Firma directement depuis votre application React Native. La clé API serait exposée dans le bundle de l’application et pourrait être extraite par quiconque télécharge votre application.
Remplacez ensuite le fichier index.ts généré par ce qui suit :
Le endpoint create-and-send crée la demande de signature et l’envoie aux destinataires de manière atomique. Si vous devez examiner ou modifier la demande avant de l’envoyer, utilisez POST /signing-requests pour créer un brouillon, puis POST /signing-requests/{id}/send séparément.
Déployez la fonction :

Étape 2 : Appeler le backend depuis React Native

Depuis votre application Rork, envoyez une requête POST à votre fonction Edge lorsque l’utilisateur déclenche le flux de signature :

Étape 3 : Signature intégrée dans une WebView

Pour les applications mobiles, l’expérience de signature s’affiche dans une WebView plutôt que dans un iframe. Installez react-native-webview :
Créez ensuite un composant d’écran de signature. La réponse de create-and-send inclut un first_signer.id (le signing_request_user_id) et un first_signer.signing_link prêt à l’emploi. Utilisez l’un ou l’autre pour construire l’URL de signature :
Transmettez first_signer.id de la réponse de l’étape 2 comme prop signingRequestUserId. Consultez le guide de signature intégrée pour la configuration complète, y compris les bonnes pratiques de sécurité.

Intégration webhook

Pour suivre le moment où les documents sont signés, ajoutez une fonction Edge de webhook et enregistrez-la dans le tableau de bord Firma.
Déployez et enregistrez le webhook :
  1. Déployez la fonction : supabase functions deploy firma-webhook --no-verify-jwt
  2. Dans le tableau de bord Firma, sous Paramètres → Webhooks, ajoutez un webhook pointant vers https://<your-project-ref>.supabase.co/functions/v1/firma-webhook
  3. Sélectionnez les événements que vous souhaitez recevoir. Consultez le guide des webhooks pour tous les types d’événements et la vérification de signature
Pour une utilisation en production, vérifiez toujours la signature du webhook à l’aide de votre secret de signature de webhook Firma. Consultez le guide des webhooks pour les détails d’implémentation.

Bonus : connexion MCP pour le développement assisté par IA

Firma propose un serveur MCP de documentation qui peut être connecté aux outils de codage IA. Une fois connectés, les assistants IA recherchent dans la documentation Firma pendant la génération de code afin d’utiliser les bons endpoints, noms de champs et modèles. Il s’agit d’une aide au moment du développement qui n’affecte pas votre application déployée.

Étapes suivantes