OneSpan Sign Developer: Cycle de vie d'un paquet

Duo Liang, mars 27, 2019

Une fois que vous avez créé une transaction dans OneSpan Sign, votre paquet commence son cycle de vie dans l'état «DRAFT». Les comportements des destinataires comme un signataire qui termine la signature ou qui ne signe pas avant la date d'expiration peuvent déclencher des changements d'état, mais vous pouvez également manipuler l'état du paquet de manière programmatique. Dans ce blog, nous allons d'abord explorer le cycle de vie d'un paquet du début à la fin et discuter des relations entre le statut de paquet et le statut de signature dans un avenir très proche. L'état du paquet et le statut de signature du signataire sont deux indicateurs clés représentant un processus de signature électronique.

Voici un diagramme de machine d'état qui vous montre tous les statuts possibles dans OneSpan Sign et deux actions concernant la gestion du cycle de vie du paquet.

3-27-1

Pour commencer, passons en revue les différents statuts possibles :

  • DRAFT: Le colis n'a pas encore été envoyé.

  • SENT: Le paquet a été distribué pour les signatures mais n'a pas encore été complété.

  • COMPLETED: Le paquet a été signé par tous les destinataires.

  • OPTED_OUT/DECLINED: Le paquet a au moins un destinataire qui a choisi de ne pas signer le document ou a refusé de signer le document(s).

  • EXPIRED: Le paquet a expiré. Sa date d'expiration est dans le passé.

  • ARCHIVÉ: Le paquet a été archivé.

Il existe également deux actions de gestion du cycle de vie des forfaits :

  • Trash (Trash) Action : L'action Trash est utilisée pour déplacer un paquet sélectionné vers le dossier Trash. Les paquets saccagés seront conservés pendant deux semaines, puis définitivement supprimés par la suite.

  • Supprimer Action : Votre colis sera définitivement supprimé et ne pourra pas être rétabli.

Dans la section suivante, nous nous concentrerons sur les points 1 à 5 du diagramme ci-dessus. Pour les actions de déchets et de suppression, allez consulter le blog précédent: Archive, Trash, et Supprimer.

1. PROJET ENVOYÉ-->

Une fois que vous avez entièrement cuit votre paquet et êtes prêt à envoyer à vos signataires, vous pouvez le faire en appelant la fonction ci-dessous:

Java SDK:

eslClient.sendPackage(packageId);				projet à envoyer

.NET SDK:

eslClient.SendPackage(packageId);				projet à envoyer

API REST:

Demande HTTP
PUT /api/packages/ 'packageId'
En-têtes HTTP
Accepter : application/json
Content-type: application/JSON
Autorisation: api_key de base
Demande de charge utile
{
   "statut": "SENT"
}

Si vous souhaitez effectuer des modifications aux paquets « SENT », modifiez l'état de votre paquet pour que vous fassiez un brouillage à travers :

Java SDK:

eslClient.changePackageStatusToDraft(packageId);		envoyé au projet

.NET SDK:

eslClient.ChangePackageStatusToDraft(packageId);		envoyé au projet

API REST:

Demande HTTP
PUT /api/packages/ 'packageId'
En-têtes HTTP
Accepter : application/json
Content-type: application/JSON
Autorisation: api_key de base
Demande de charge utile
{
   "statut": "DRAFT"
}

2. ENVOYÉ - TERMINÉ

Par défaut, un package signé par tous ses destinataires passe automatiquement au statut COMPLETED. OneSpan Sign vous donne également la possibilité de mettre une pause sur ce changement de statut automatique, vous donnant le temps d'examiner un paquet avant de le marquer complet manuellement. Pour basculer cette option, créez d'abord votre paquet comme ci-dessous :

Java SDK:

DocumentPackage pkg1 - PackageBuilder.newPackageNamed("Exemple Package" - System.currentTimeMillis())
        .autocomplete(faux)
        ......
        .construire();

.NET SDK:

DocumentPackage pkg1 - PackageBuilder.NewPackageNamed("Exemple package" - System.DateTime.Now)
        . SansAutomaticCompletion()
        ......
        . Build ();

API REST

Demande HTTP
POST /api/packages
En-têtes HTTP
Autorisation: api_key de base
Accepter : application/json
Type de contenu : multiparties/form-data
Demande de charge utile
------WebKitFormBoundary1bNO60n7FqP5WO4t
Content-Disposition: formulaire-données; nom "fichier"; nom de fichier "testDocumentExtraction.pdf"
Type de contenu : application/pdf

%PDF-1.5
%µµµµ
1 0 obj
>>
endobj .... 

------WebKitFormBoundary1bNO60n7FqP5WO4t
Content-Disposition: formulaire-données; nom "charge utile"
{
   "rôles":[
      ......
   ],
   "documents":[
      ......
   ],
   "nom":"Exemple paquet",
   "type":"PACKAGE",
   "langue":"fr",
   "emailMessage":"",
   "description":"Nouveau paquet",
   "autocomplete":faux,
   "statut":"SENT"
}
------WebKitFormBoundary1bNO60n7FqP5WO4t--
Charge utile de réponse
{
    "id": "9sKhW-h-qS9m6Ho3zRv3n2a-rkI"
}

Une fois que vous avez reçu l'événement de rappel « Signature terminée du bénéficiaire », vous pouvez utiliser la fonction ci-dessous pour marquer le paquet complet.

Java SDK:

eslClient.getPackageService().markComplete(packageId); 		envoyé pour compléter

.NET SDK:

eslClient.packageService.MarkComplete(packageId); 		archivé sa d'archives à

API REST

Demande HTTP
PUT /api/packages/ 'packageId'
En-têtes HTTP
Accepter : application/json
Content-type: application/JSON
Autorisation: api_key de base
Demande de charge utile
{
   "statut": "COMPLETED"
}

4. OPTED_OUT/DECLINED - SENT

Si un signataire a choisi de ne pas signer électroniquement ou a refusé de signer le document, vous pouvez modifier le paquet en fonction de ses motifs et le renvoyer. Pour renvoyer, il suffit d'appeler la fonction de paquet d'envoi de la section 1.

 Consultez également notre guide de désistement et de messages refusés pour savoir comment récupérer les messages d'opt-out et les messages refusés.

5. EXPIRÉ - PROJET

Selon votre exigence, si un paquet était déjà en état "EXPIRED", mais vous souhaitez toujours prolonger la date d'expiration pour vos signataires. Il suffit de mettre à jour le paquet avec une date d'expiration future, et le paquet sera automatiquement converti en "DRAFT" statut:

Java SDK:

Paquet de documents1 - eslClient.getPackage(packageId);
package1.setExpiryDate (newDate);
eslClient.updatePackage(packageId, package1);

NET SDK:

Paquet de documents1 - eslClient.GetPackage(packageId);
paquet1. ExpiryDate - new DateTime(2019, 3, 12, 1, 0, 0);
eslClient.UpdatePackage(packageId, package1);

API REST:

Demande HTTP
PUT /api/packages/ 'packageId'
En-têtes HTTP
Accepter : application/json
Content-type: application/JSON
Autorisation: api_key de base
Demande de charge utile
{
   "due": "2019-03-13"
}

Ensuite, vous pouvez modifier le paquet, si nécessaire, et le renvoyer.

Grâce à ce blog, nous avons trié tous les statuts du paquet sur la façon dont ils peuvent être déclenchés par les signataires et par votre application. Par conséquent, vous pouvez décider combien de statuts de paquet s'impliqueraient et s'attendre aient dans votre flux de travail, cela devient plus important lorsque vous modélisez des objets et conceviez une base de données pour votre application personnalisée intégrée à OneSpan Sign.

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 communautairesdes développeurs . Vos commentaires sont importants pour nous!

OneSpan Sign Developer Community

OneSpan Sign Developer Community

Rejoignez la communauté OneSpan Sign Developer! Forums, blogs, documentation, téléchargements SDK, et plus encore.

Joignez-vous aujourd'hui