Connecteur K2 pour DocuSign – Part 4

Cet article fait partie d’une série de 4 articles :

  1. Introduction sur le connecteur K2 pour DocuSign.
  2. Que peut-on faire avec le connecteur DocuSign ?
  3. Comment le configurer ?
  4. Comment l’utiliser ? (vous êtes ici )

Comment l’utiliser ?

Pour cet exemple, l’idée est de faire signer un document de type “contrat de partenariat” à 2 parties : tout d’abord le partenaire puis ensuite le représentant des partenaires dans l’organisation émettrice. Le contrat exemple est un document de 3 pages où les signatures, ainsi que les nom et prénom puis poste des 2 signataires doivent être apposées sur la 3ème page.

Comme indiqué, dans la partie 2 de cette série d’articles, il est conseillé de décomposer le processus en 2. Le processus principal qui contiendra le cycle de validation du contrat entre les différents intervenants, puis un sous-processus spécifique pour la signature, qui contiendra l’ensemble des intégrations avec DocuSign qui vont de la constitution de l’objet DocuSign jusqu’à son envoi. Dans ce billet, nous allons traiter uniquement du processus spécifique à la constitution de la signature. Ce processus devra être adapté aux documents à signer et au nombre de signataires, mais globalement il sera toujours constitué des éléments suivants :

  1. Création de l’objet DocuSign enveloppe.
  2. Ajout des documents à l’enveloppe.
  3. Ajout des signataires.
  4. Ajout des espaces de signature (les Tabs).
  5. Envoi de l’enveloppe.
  6. Vérification de la complétude.

Le point 6 est optionnel et il est possible de considérer le processus comme terminé en fin de point 5. Cela va dépendre du fait qu’il y ait ou non une suite à la signature du document dans votre processus principal.

Voici un exemple de ce que cela peut donner une fois modélisé avec K2 :

A chaque fois que vous créez un objet DocuSign (création d’enveloppe, ajout de document, ajout de signataire, ajout de tab), un identifiant lui est assigné, il est nécessaire de conserver cet identifiant afin de pouvoir créer les objets y afférant. Par exemple, la création d’un tab (ou d’un espace de saisie d’information dans le document PDF) est relatif au signataire, au document et à l’enveloppe, il faut donc connaître chacun des identifiants pour pouvoir le paramétrer.

 

Pas à Pas

I. Commençons par créer l’enveloppe : (documentation DocuSign)
  • Il faut sélectionner l’instance de service broker DocuSign que vous souhaitez utiliser. NB : cette instance a été créée lors de la partie 3 de cette série d’articles.
  • Ensuite, vous avez la possibilité de sélectionner un modèle d’enveloppe parmi les modèles disponibles sur votre interface d’administration DocuSign.
  • Puis vous pouvez paramétrer le texte qui accompagnera le mail envoyé aux différents signataires.
  • Sur la 2nde page, vous avez un ensemble d’options DocuSign, permettant d’autoriser le transfert de signature, les copies, la visibilité des documents limitées à ceux disposant de tags associés à l’utilisateur courant, l’autorisation d’édition des documents etc.
  • Sur la dernière page, point important, vous avez la possibilité de récupérer l’ID de l’enveloppe DocuSIgn afin de le sauvegarder parmi les données de votre processus. L’ID en question est un GUID que je vous propose de sauvegarder dans un DataField K2, appelé pour l’exemple EnvelopeID.
II. Ajoutons des documents :(documentation DocuSign)
  • Sélection de l’instance de service broker à utiliser.
  • Récupération du DataField K2 EnvelopeID créé en fin d’étape I pour spécifier que le document va être ajouté dans cette enveloppe.
  • Dépôt du document. Dans la copie d’écran, la propriété de type document d’un smartobject a été déposée.
  • Les autres champs, optionnels, permettent de définir soit même l’ID du document qui vient d’être ajouté et l’ordre des documents dans le cas où plusieurs documents sont attachés
  • Sauvegarde de l’ID du document ajouté dans un DataField nommé “DocID” pour référencement futur du document dans d’autres assistants.
III. Ajoutons des signataires :(documentation DocuSign)
  • Sélection de l’instance de service broker à utiliser.
  • Récupération du DataField K2 EnvelopeID créé en fin d’étape I pour spécifier que le document va être ajouté dans cette enveloppe.
  • Les autres champs, optionnels, permettent de sélectionner des éléments liés à vos modèles DocuSign.
  • Choix de l’ordre de signature.
  • Choix du type d’intervention (signataire, personne en copie…).
  • Nom du signataire (apparaîtra dans le mail de notification et sur l’interface de signature).
  • Adresse mail qui recevra la demande de signature.
  • Option pour demander une authentification par SMS.
  • Divers champs optionnels permettant de définir un code d’accès à l’interface de signature, un corps et un sujet de message différent de celui paramétré en étape I.
  • Sauvegarde de l’ID du signataire ajouté dans un DataField nommé “SignatairePartenaireID” pour référencement futur du document dans d’autres assistants.
IV. Ajoutons des tabs :(documentation DocuSign)
  • Sélection de l’instance de service broker à utiliser.
  • Récupération du DataField K2 EnvelopeID créé en fin d’étape I pour spécifier que le document va être ajouté dans cette enveloppe.
  • Récupération du DataField K2 SignatairePartenaireID afin de définir pour quel signataire cette zone de saisie va être créée.
  • Récupération du DataField K2 DocID afin d’indiquer sur quel document de l’enveloppe la zone de saisie va être ajoutée.
  • Choix d’un nom et d’un type de zone de saisie (zone de signature, de saisie de texte, d’affichage de nom, case à cocher, attachement de documents etc.).
  • Définition du positionnement de la zone de saisie dans le document. Dans la copie ci-contre, on s’appuie sur une position absolue sur la page 3.
  • Ces champs peuvent être dynamiques, et peuvent se baser sur des ancres disponibles dans le document.
  • Ensemble de champs optionnels pour les zones de saisie.
  • Sauvegarde de l’ID de la zone ajoutée dans un DataField nommé “tabID”. Ceci n’est pas obligatoire si vous n’avez pas besoin de faire de modification plus tard dans votre processus sur cette zone.
V. Envoyons l’enveloppe :
  • Ici, il est simplement nécessaire de paramétrer l’ordre d’envoi, il y a donc simplement à positionner le GUID de l’enveloppe à envoyer.

Une fois l’envoi effectué, les signataires vont recevoir dans l’ordre spécifié des mails leur donnant un lien d’accès à l’interface de signature du document, comme on peut le voir sur les copies d’écran ci-dessous :

Une fois que tous les signataires auront apposé leur signature, chacun recevra une version signée du document PDF.

Et après…

Le processus pourrait s’arrêter là… mais il peut être intéressant que la fin des signatures (on ne parle pas de l’envoi, mais bien une fois que tout le monde aura signé) déclenche une suite dans le processus K2. Pour le moment, il n’y a pas de notification technique faite à K2 lorsque les signatures sont terminées (il n’y a pas d’intégration dans le sens DocuSign vers K2). Ce qui est proposé consiste donc à demander au workflow K2 d’aller vérifier l’état de l’enveloppe de manière régulière, mais ne pas le faire de manière indéfinie afin de ne pas avoir une instance de K2 qui tourne sans jamais s’arrêter dans le cas où les signatures ne seraient jamais apposées.

L’idée est donc de définir une date de fin de vérification des signatures, puis une période pour les vérifications et d’appliquer les règles suivantes :

  1. Calcul de la date de fin des vérifications envoyé dans un DataField “DateFinVerif” (une inline function pour ajouter à la date du jour, un nombre de jours que l’on peut rendre paramétrable – par exemple 15 jours).
  2. Définition d’une règle de démarrage (start rule) basée sur un nombre d’heures paramétrable (par exemple 8h – à l’échelle d’une production, il s’agit d’un délai raisonnable et qui permettra de ne pas déclencher des milliers de vérification pour une même enveloppe).
  3. Mise à jour d’un DataField “StatutEnveloppe” par exécution de smartobject : méthode “List” du smo “Envelope Audit Event” afin de récupérer la propriété “Envelope Status”.
  4. Règle de lien : StatutEnveloppe=’completed’.
  5. Règle de lien : StatutEnveloppe≠’completed’ AND now()≤DateFinVerif.
  6. Règle de lien : StatutEnveloppe≠’completed’ AND now()>DateFinVerif.
  7. Création d’une étape humaine assignée au responsable du dossier et qui lui permettra de relancer les signataires puis la vérification (dans ce cas, il faut mettre à jour la DateFinVerif) ou d’annuler le dossier.

J’espère que cette série de billets vous a aidé à y voir plus clair sur le fonctionnement des intégrations K2/DocuSign.

N’hésitez pas à commenter pour poser vos questions.

Happy K2ing!

jean

Directeur technique de K2 France depuis 2006 et passionné par les technologies, je travaille dans le monde du BPM et des applications métier depuis… que je travaille :). Vous pouvez également me suivre sur twitter, linkedin.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *