--- title: "Mise en œuvre de la capture de signature" slug: "enforcing-signature-capture" updated: 2025-02-28T10:51:23Z published: 2025-02-28T10:51:23Z canonical: "docs.onespan.com/enforcing-signature-capture" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.onespan.com/llms.txt > Use this file to discover all available pages before exploring further. # Mise en œuvre de la capture de signature [SDK Java](/v1/docs/fr/enforcing-signature-capture#sdk-java) [.NET SDK](/v1/docs/fr/enforcing-signature-capture#net-sdk) [API REST](/v1/docs/fr/enforcing-signature-capture#api-rest) ## SDK Java Pour télécharger l'exemple complet de code, consultez notre site [Partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/enforce-capture-signature-approval-leveljava-sdk). Dans OneSpan Sign, les signataires ne seront invités à apposer leur signature qu'une seule fois par défaut. Si la transaction nécessite plusieurs signatures sur le document, OneSpan Sign reproduira automatiquement la première signature dessinée pour toutes les signatures suivantes. Toutefois, vous avez la possibilité d'exiger de votre signataire qu'il dessine sa signature sur toute signature de capture donnée. Ce sujet se concentrera sur l'application de la capture de signature au niveau de la signature. Si vous souhaitez appliquer cette règle au niveau de la transaction, ce qui obligerait à redessiner toutes les signatures de capture, consultez les [Paramètres de l'expérience du signataire](/v1/docs/fr/signer-experience-settings#sdk-java). ### Appliquer la signature par capture Pour activer cette fonction, il suffit d'ajouter l'option enableEnforceCaptureSignature() à votre créateur de signature, comme indiqué ci-dessous : ```java Signature enforceCaptureSignature = SignatureBuilder.captureFor("signer1@example.com")    .onPage(0)    .atPosition(100, 200)    .enableEnforceCaptureSignature()    .build(); ``` > Notez ce qui suit : > > - Par défaut, enforceCaptureSignature est défini comme « faux » au niveau de la transaction et de la signature. Cela signifie que vous ne devez rien faire si vous ne voulez pas utiliser cette fonction. > - Contrairement au paramètre « vrai » enforceCaptureSignature au niveau de la transaction, qui oblige le signataire à capturer sa signature à chaque approbation, au niveau de la signature, enforceCaptureSignature n'oblige le signataire à capturer sa signature que lorsque l'approbation contient le paramètre « vrai ». ### Résultats Dans cet exemple, nous avons trois approbations où seule la deuxième signature a été marquée comme « appliquer la capture ». Voici ce que vous verrez après la signature de la transaction : ![Capture](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/enforcecapturesignature-1(1).png?sv=2026-02-06&spr=https&st=2026-11-13T10%3A21%3A10Z&se=2026-11-13T11%3A21%3A10Z&sr=c&sp=r&sig=13c%2BoTUl8%2B%2Bn84O%2FQRo42LpIGgslX9llaCCo%2F9OUhW8%3D) Pour la deuxième signature, comme nous avons activé le paramètre enforceCaptureSignature, vous verrez que la signature diffère de la première et qu'elle écrase en même temps les données de signature mises en cache. Par conséquent, la signature nouvellement capturée se réplique automatiquement lorsque le signataire signe le troisième champ. ## .NET SDK Pour télécharger l'exemple complet de code, consultez notre site [Partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/enforce-capture-signature-approval-levelnet-sdk). Dans OneSpan Sign, les signataires ne seront invités à apposer leur signature qu'une seule fois par défaut. Si la transaction nécessite plusieurs signatures sur le document, OneSpan Sign reproduira automatiquement la première signature dessinée pour toutes les signatures suivantes. Toutefois, vous avez la possibilité d'exiger de votre signataire qu'il dessine sa signature sur toute signature de capture donnée. Ce sujet se concentrera sur l'application de la capture de signature au niveau de la signature. Si vous souhaitez appliquer cette règle au niveau de la transaction, ce qui obligerait à redessiner toutes les signatures de capture, consultez les [Paramètres de l'expérience du signataire](/v1/docs/fr/signer-experience-settings#net-sdk). ### Appliquer la signature par capture Pour activer cette fonction, il suffit d'ajouter l'option enableEnforceCaptureSignature() à votre créateur de signature, comme indiqué ci-dessous : ```csharp Signature enforceCaptureSignature = SignatureBuilder.CaptureFor("signer1@example.com")    .WithId(new SignatureId("Signature1"))    .OnPage(0)    .AtPosition(100, 200)    .EnableEnforceCaptureSignature()    .Build(); ``` > Notez ce qui suit : > > - Par défaut, enforceCaptureSignature est défini comme « faux » au niveau de la transaction et de la signature. Cela signifie que vous ne devez rien faire si vous ne voulez pas utiliser cette fonction. > - Contrairement au paramètre « vrai » enforceCaptureSignature au niveau de la transaction, qui oblige le signataire à capturer sa signature à chaque approbation, au niveau de la signature, enforceCaptureSignature n'oblige le signataire à capturer sa signature que lorsque l'approbation contient le paramètre « vrai ». ### Résultats Dans cet exemple, nous avons trois approbations où seule la deuxième signature a été marquée comme « appliquer la capture ». Voici ce que vous verrez après la signature de la transaction : ![Capture](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/enforcecapturesignature-1(2).png?sv=2026-02-06&spr=https&st=2026-11-13T10%3A21%3A10Z&se=2026-11-13T11%3A21%3A10Z&sr=c&sp=r&sig=13c%2BoTUl8%2B%2Bn84O%2FQRo42LpIGgslX9llaCCo%2F9OUhW8%3D) Pour la deuxième signature, comme nous avons activé le paramètre enforceCaptureSignature, vous verrez que la signature diffère de la première et qu'elle écrase en même temps les données de signature mises en cache. Par conséquent, la signature nouvellement capturée se réplique automatiquement lorsque le signataire signe le troisième champ. ## API REST Pour télécharger l'exemple complet de code, consultez notre site [Partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/enforce-capture-signature-approval-levelnet-rest). Dans OneSpan Sign, les signataires ne seront invités à apposer leur signature qu'une seule fois par défaut. Si la transaction nécessite plusieurs signatures sur le document, OneSpan Sign reproduira automatiquement la première signature dessinée pour toutes les signatures suivantes. Toutefois, vous avez la possibilité d'exiger de votre signataire qu'il dessine sa signature sur toute signature de capture donnée. Ce sujet se concentrera sur l'application de la capture de signature au niveau de la signature. Si vous souhaitez appliquer cette règle au niveau de la transaction, ce qui obligerait à redessiner toutes les signatures de capture, consultez les [Paramètres de l'expérience du signataire](/v1/docs/fr/signer-experience-settings#api-rest). ### Appliquer la signature par capture L'exemple de demande ci-dessous vous montre comment définir enforceCaptureSignature : true au niveau de l'approbation. #### Requête HTTP ```http POST /api/packages ``` #### En-têtes HTTP ```http Accept: application/json   Content-Type: application/json   Authorization: Basic api_key ``` ### Données utiles de la demande ```json ------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="file"; filename="enforce capture signature.pdf" Content-Type: application/pdf %PDF-1.5 %µµµµ 1 0 obj <>>> endobj.... ------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="payload" {  "documents": [    {      "approvals": [        {          "fields": [            {              "height": 50,              "id": "Signature1",              "left": 100,              "page": 0,              "subtype": "CAPTURE",              "top": 100,              "type": "SIGNATURE",              "width": 200            }          ],          "id": "Signature1",          "role": "signer1"        },        {          "fields": [            {              "height": 50,              "id": "Signature2",              "left": 100,              "page": 0,              "subtype": "CAPTURE",              "top": 200,              "type": "SIGNATURE",              "width": 200            }          ],          "id": "Signature2",          "role": "signer1",          "enforceCaptureSignature": true        },        {          "fields": [            {              "height": 50,              "id": "Signature3",              "left": 100,              "page": 0,              "subtype": "CAPTURE",              "top": 300,              "type": "SIGNATURE",              "width": 200            }          ],          "id": "Signature3",          "role": "signer1"        }      ],      "name": "Document1",      "id": "Document1"    }  ],  "name": "test Enforce Capture at Signature Level",  "roles": [    {      "id": "signer1",      "signers": [        {          "email": "signer1@example.com",          "firstName": "John",          "id": "signer1",          "lastName": "Smith"        }      ]    }  ],  "type": "PACKAGE",  "status": "SENT" } ------WebKitFormBoundary1bNO60n7FqP5WO4t-- ``` Pour une description complète de chaque champ, voir le tableau des données utiles de la demande ci-dessous. #### Données utiles de la réponse ```json {   "id": "Q6v0Tn_v62G5tfRY43VBE-TEbU4="   } ``` > Notez ce qui suit : > > - Par défaut, enforceCaptureSignature est défini comme « faux » au niveau de la transaction et de la signature. Cela signifie que vous ne devez rien faire si vous ne voulez pas utiliser cette fonction. > - Contrairement au paramètre « vrai » enforceCaptureSignature au niveau de la transaction, qui oblige le signataire à capturer sa signature à chaque approbation, au niveau de la signature, enforceCaptureSignature n'oblige le signataire à capturer sa signature que lorsque l'approbation contient le paramètre « vrai ». ### Résultats Dans cet exemple, nous avons trois approbations où seule la deuxième signature a été marquée comme « appliquer la capture ». Voici ce que vous verrez après la signature de la transaction : ![Capture](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/enforcecapturesignature-1(3).png?sv=2026-02-06&spr=https&st=2026-11-13T10%3A21%3A10Z&se=2026-11-13T11%3A21%3A10Z&sr=c&sp=r&sig=13c%2BoTUl8%2B%2Bn84O%2FQRo42LpIGgslX9llaCCo%2F9OUhW8%3D) Pour la deuxième signature, comme nous avons activé le paramètre enforceCaptureSignature, vous verrez que la signature diffère de la première et qu'elle écrase en même temps les données de signature mises en cache. Par conséquent, la signature nouvellement capturée se réplique automatiquement lorsque le signataire signe le troisième champ. ### Tableau des données utiles de la demande | Propriété | Type | Modifiable | Requis | Par défaut | Exemples de valeurs | | --- | --- | --- | --- | --- | --- | | statut | chaîne de caractères | Oui | Non | ÉBAUCHE | ÉBAUCHE / ENVOYÉ / COMPLÉTÉ / ARCHIVÉ / DÉCLINÉ / REFUSÉ / EXPIRÉ | | type | chaîne de caractères | Oui | Non | PACKAGE | PAQUET / MODÈLE / MISE EN PAGE | | nom | chaîne de caractères | Oui | Oui | s.o. | Exemple d'application de signature par capture | | documents | | | | | | | nom | chaîne de caractères | Oui | Non | s.o. | exemple de document | | approbations | | | | | | | champs | | | | | | | sous-type | chaîne de caractères | Oui | Non | s.o. | NOM COMPLET / INITIALES / CAPTURE / CAPTURE_MOBILE / ÉTIQUETTE / CHAMP DE TEXTE / ZONE DE TEXTE / CASE / DATE / RADIO / LISTE | | type | chaîne de caractères | Oui | Non | s.o. | SIGNATURE / ENTRÉE | | extrait | booléen | Oui | Non | faux | vrai / faux | | hauteur | entier | Oui | Non | 50 | 50 / 100 / 150 ... | | gauche | entier | Oui | Non | 0 | 50 / 100 / 150 ... | | page | entier | Oui | Non | 0 | 0 / 1 / 2 ... | | haut | entier | Oui | Non | 0 | 50 / 100 / 150 ... | | largeur | entier | Oui | Non | 200 | 50 / 100 / 150 ... | | | | | | | | | rôle | chaîne de caractères | Oui | Non | s.o. | Client1 | | enforceCaptureSignature | booléen | Oui | Non | faux | vrai / faux | | rôles | | | | | | | id | chaîne de caractères | Oui | Non | s.o. | Client1 | | nom | chaîne de caractères | Oui | Non | s.o. | Client1 | | type | chaîne de caractères | Oui | Non | SIGNER | SIGNATAIRE / EXPÉDITEUR | | signataires | | | | | | | courriel | chaîne de caractères | Oui | Oui | s.o. | courriel.préparateur@exemple.com | | Prénom | chaîne de caractères | Oui | Oui | s.o. | John | | Nom de famille | chaîne de caractères | Oui | Oui | s.o. | Smith | | téléphone | chaîne de caractères | Oui | Non | s.o. | 514-555-8888 | | id | chaîne de caractères | Oui | Non | s.o. | Client1 | | entreprise | chaîne de caractères | Oui | Non | s.o. | Acme Inc. | | titre | chaîne de caractères | Oui | Non | s.o. | Directeur général |