OneSpan Signe Comment: Signer tous les documents
Avec OneSpan Sign SDK 11 maintenant publié, j'ai pensé que ce serait un bon moment pour écrire un blog rapide sur le signe de toutes les fonctionnalités qui a été ajouté dans cette version. En bref, cette fonctionnalité permet de signer tous les documents d'une transaction (précédemment paquet de documents) en un seul appel, au lieu de naviguer successivement dans les documents et de signer chaque signature de façon séquentielle.
Par exemple, dites que vous êtes gestionnaire d'une compagnie d'assurance et que vous avez plus d'une centaine de demandes en attente d'approbation. La fonctionnalité de signe vous permet de signer chaque application dans une seule transaction en un seul appel. En d'autres termes, cette fonctionnalité vous donne la possibilité d'approuver les documents en caoutchouc.
Notez que cette fonctionnalité n'est disponible que dans la version 11 du bac à sable et de la production (c'est-à-dire https://sandbox.onespan.com et https://apps.onespan.com). Dans ce blog, je vais vous montrer comment utiliser le signe de toutes les fonctionnalités avec le Java et .NET SDK.
Le code
Vous pouvez aller de l'avant et passer à la section qui s'applique à votre méthode. Je vais couvrir les mêmes informations dans chaque segment. Vous pouvez obtenir le code d'exemple complet à partir de la part de code communautaire développeur: Java, et .NET.
Java SDK
Tout d'abord, je vais commencer par le Java SDK. Dans mon exemple que j'ai mis en place, il y a deux destinataires (c'est-à-d. signataires) dans la transaction : l'expéditeur (moi-même) et un client. En outre, il y a deux documents dans la transaction. Une signature pour chaque destinataire est requise par document. En outre, j'ai utilisé des ancres de texte pour positionner les signatures sur les documents. Si vous avez besoin de plus d'informations sur les ancres de texte, vous pouvez lire mon blogprécédent . Voici un exemple de code sur la façon dont j'ai créé ma transaction:
Paquet PackageBuilder packageToBuild - PackageBuilder.newPackageNamed ("Sign Documents Test"); Expéditeur SignerBuilder signataire1 - SignerBuilder.newSignerWithEmail@example("sender .com") .avecFirstName ("Haris") .avecLastName ("Haidary") .avecCustomId ("Sender"); Client SignerBuilder signataire2 - SignerBuilder.newSignerWithEmail@example("client .com") .avecFirstName ("John") .avecLastName ("Smith") .avecCustomId ("Signer"); Signature de l'expéditeur sur le premier document Signature SignatureBuilder1 - SignatureBuilder.signatureFor("[email protected]") .withPositionAnchor(TextAnchorBuilder.newTextAnchor("Signature de l'entrepreneur") .atPosition(TextAnchorPosition.TOPLEFT) .withSize(150, 40) .avecOffset(0, -50) .avecCharacter(0) .withOccurence(0)); Signature du client sur le premier document Signature SignatureBuilder2 - SignatureBuilder.signatureFor("[email protected]") .withPositionAnchor(TextAnchorBuilder.newTextAnchor("Signature du client") .atPosition(TextAnchorPosition.TOPLEFT) .withSize(150, 40) .avecOffset(0, -50) .avecCharacter(0) .withOccurence(0)); Premier document DocumentBuilder document1 - DocumentBuilder.newDocumentWithName ("Contrat de nettoyage") .fromFile ("DOC_FILE_PATH") .withSignature(signature1) .avecSignature(signature2); Construire le paquet DocumentPackage packageToSend - packageToBuild.withSigner (signer1).withSigner (signer2).withDocument(document1).withDocument(document2).build(); Créer et envoyer le colis PackageId packageId - client.createAndSendPackage(packageToSend); signer tous les documents pour l'expéditeur client.signDocuments(packageId);
La dernière ligne dans le code d'exemple ci-dessus signera automatiquement tous les documents pour l'expéditeur. Il est important de noter que cette fonctionnalité ne fonctionnera pas pour les signatures de capture. Si vous avez besoin d'une comparaison avec la création d'objet document de base ou si c'est votre première fois la création d'un paquet avec le Java SDK, voir ce blog.
SDK .NET
Ensuite, je vais passer en charge le SDK .NET. Dans mon exemple que j'ai mis en place, il y a deux destinataires (c'est-à-d. signataires) dans la transaction : l'expéditeur (moi-même) et un client. En outre, il y a deux documents dans la transaction. Une signature pour chaque destinataire est requise par document. En outre, j'ai utilisé des ancres de texte pour positionner les signatures sur les documents. Si vous avez besoin de plus d'informations sur les ancres de texte, vous pouvez lire mon blogprécédent . Voici un exemple de code sur la façon dont j'ai créé ma transaction:
Paquet PackageBuilder packageToBuild - PackageBuilder.NewPackageNamed ("Sign Documents Test"); Expéditeur SignerBuilder signataire1 - SignerBuilder.NewSignerWithEmail("[email protected]") . WithFirstName ("Haris") . WithLastName ("Haidary") . WithCustomId ("Sender"); Client SignerBuilder signataire2 - SignerBuilder.NewSignerWithEmail@example("client .com") . WithFirstName (" John ") . WithLastName ("Smith") . WithCustomId ("Signer"); Signature de l'expéditeur sur le premier document Signature SignatureBuilder1 - SignatureBuilder.SignatureFor("[email protected]") . WithPositionAnchor(TextAnchorBuilder.NewTextAnchor("Signature de l'entrepreneur") . AtPosition(TextAnchorPosition.TOPLEFT) . WithSize(150, 40) . WithOffset(0, -50) . AvecCharacter(0) . AvecOccurrence(0)); Signature du client sur le premier document Signature SignatureBuilder2 - SignatureBuilder.SignatureFor("[email protected]") . WithPositionAnchor(TextAnchorBuilder.NewTextAnchor("Signature du client") . AtPosition(TextAnchorPosition.TOPLEFT) . WithSize(150, 40) . WithOffset(0, -50) . AvecCharacter(0) . AvecOccurrence(0)); Premier document DocumentBuilder document1 - DocumentBuilder.NewDocumentNamed ("Contrat de nettoyage") . FromFile ("DOC_FILE_PATH") . WithSignature(signature1) . WithSignature (signature2); Construire le paquet DocumentPackage packageToSend - packageToBuild.WithSigner (signer1). WithSigner (signer2). AvecDocument (document1). AvecDocument (document2). Construire(); Créer et envoyer le colis PackageId packageId - client. CreateAndSendPackage(packageToSend); Signez tous les documents pour l'expéditeur Client. SignDocuments (packageId);
La dernière ligne dans le code d'exemple ci-dessus signera automatiquement tous les documents pour l'expéditeur. Il est important de noter que cette fonctionnalité ne fonctionnera pas pour les signatures de capture. Si vous avez besoin d'une comparaison avec la création d'objet document de base ou si c'est votre première fois la création d'un paquet avec le .NET SDK, voir ce blog.
Exécution de votre code
Vous pouvez maintenant aller de l'avant et exécuter votre code. Une fois que vous l'avez fait, si vous vous connectez à OneSpan Sign, vous verrez une coche à côté de l'expéditeur dans votre vue de transaction. Cela confirme que toutes les signatures pour l'expéditeur ont été signées.
Si vous avez des questions concernant ce blog ou toute autre chose concernant l'intégration de OneSpan Sign dans votre application, visitez les forums de la communauté des développeurs: https://developer.onespan.com. C'est moi qui l'ai fait. Merci de lire! Si vous avez trouvé ce message utile, s'il vous plaît le partager sur Facebook, Twitter, ou LinkedIn.
Haris Haidary
Évangéliste technique junior
LinkedIn - France Twitter (en)