Configuration des notifications de rappel
  • 27 Nov 2024
  • 20 Minutes à lire
  • Sombre
    Lumière
  • PDF

Configuration des notifications de rappel

  • Sombre
    Lumière
  • PDF

Résumé de l’article

Java SDK.NET SDKREST API

Java SDK

Pour télécharger l’exemple de code complet, consultez notre site Code Share .

Les notifications d’événements de rappel vous permettent d’être automatiquement informé des événements liés à un package (dans la nouvelle expérience utilisateur, les packages sont appelés « transactions »). Lorsqu’un événement spécifique se produit, le système envoie automatiquement un message à une destination que vous avez choisie.

Emplacement dans l’interface utilisateur

Tout d’abord, vous devez localiser cette zone dans votre interface utilisateur. Après avoir exécuté votre code, vous pourrez vérifier ici pour vous assurer qu’il s’est exécuté avec succès. Pour trouver la zone de rappel à partir de l’interface utilisateur, connectez-vous à OneSpan Sign et cliquez sur Admin > Notification d’événement.

Notifications disponibles

Avant de passer au code, il serait bon de connaître toutes les notifications disponibles. Comme vous pouvez le voir sur l’image ci-dessus, il y en a plusieurs. Le tableau suivant les répertorie tels qu’ils doivent être représentés, dans votre code :

Dans le tableau suivant :

  • La taille maximale de tous les sessionUser champs est de 255 caractères.

  • La taille maximale de tous les packageId champs est de 255 caractères.

  • Le  sessionUser champ varie selon que l’événement a été généré ou non par un expéditeur ou par un signataire. Les événements déclenchés par l’expéditeur auront l’ID de l’expéditeur. Les événements déclenchés par le signataire auront l’ID du signataire.

Événement

Signification

Charge utile JSON

COBROWSE_REQUEST

Une demande de co-navigation se produit lorsqu’un signataire habituel demande une session de co-navigation avec l’expéditeur de la transaction, généralement pour recevoir de l’aide pour terminer la transaction. Cette demande notifie l’expéditeur sous la forme d’une notification de rappel.

{

"name": "COBROWSE_REQUEST",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-

02T20:17:58.408Z"

"phone":"......",

"comment":"......",

"selectedSupportBusinessHours":["Morning - 9AM to 12PM ((GMT 0:00) GMT)"]

}

DOCUMENT_SIGNED

Un document a été signé ou des consentements ou des ententes de divulgation ont été acceptés.

{

"name": "DOCUMENT_SIGNED",

"sessionUser": "...",

"packageId": "......",

"documentId": "......", (max 256 chars)

"createdDate": "2017-05-

02T20:17:58.408Z"

}

DOCUMENT_VIEWED

Un document a été consulté.

{

"name": "DOCUMENT_VIEWED",

"sessionUser": "...",

"packageId": "......",

"documentId": "......", (max 256 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

EMAIL_BOUNCE

Un e-mail a rebondi. Les types de rebond sont les suivants :

  • « BOUNCE » (un rebond dur)

  • « COMPLAINT » (un rebond doux)

  • « OOTO » (hors du bureau)

  • « INCONNU »

Pour plus d’informations, consultez notre liste de modèles.

{

"name": "EMAIL_BOUNCE",

"sessionUser": "...",

"packageId": "......",

"message": "bounce type",

"createdDate": "2017-05-02T20:17:58.408Z"

}

EDEPOSIT_SUCCESS

La transaction ou les documents ont été déposés avec succès sur eOriginal.

{

"name": "EDEPOSIT_SUCCESS",

"sessionUser": null,

"packageId": "COQj6taUQpUFpzPX76RP_eBhiMk=",

"message": "success.edeposit",

"documentId": null,

"createdDate": 1732287648000

}

EDEPOSIT_FAILURE

La transaction / les documents ne peuvent pas être déposés sur eOriginal d’une manière irrécupérable. Notez que la raison de l’échec peut varier.

{

"name": "EDEPOSIT_FAILURE",

"sessionUser": null,

"packageId": "6Ve4c5qod3joGJL-dRPzRs9g2vM=",

"message": "unrecoverable.error.edeposit: Failed to upload to eOriginal vault.",

"documentId": null,

"createdDate": 1732287802000

}

EDEPOSIT_FAILURE_ATTEMPT

La transaction ou les documents ne peuvent pas être déposés sur eOriginal d’une manière irrécupérable, et il y aura d’autres tentatives automatisées de dépôt des documents.

{  

"name": "EDEPOSIT_ATTEMPT_FAILURE",  

"sessionUser": null,  

"packageId": "VOcc64OByg6jNUpbwixkwFCJhiI=",  

"message": "Callback attempt retry 1/144 failed for GUID: VOcc64OByg6jNUpbwixkwFCJhiI=",  

"documentId": null,  

"createdDate": "2023-10-13T14:24:11.000Z"}

KBA_FAILURE

Il y a eu un échec de l’authentification KBA.

{

"name": "KBA_FAILURE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ACTIVATE

Un paquet est passé de l’état BROUILLON ou SUPPRIMÉ à l’état ENVOYÉ. Par défaut, un package est créé à l’état BROUILLON et est déplacé vers l’état ENVOYÉ lorsqu’il est prêt à être traité par les signataires.

{

"name": "PACKAGE_ACTIVATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ARCHIVE

Une notification de rappel indique qu’un paquet a été archivé.

{

"name": "PACKAGE_ARCHIVE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ATTACHMENT

Une notification de rappel indique qu’un signataire a téléchargé une pièce jointe.

{

"name": "PACKAGE_ATTACHMENT",

"sessionUser": "...",

"packageId": "......",

"message": "attachment name", (max 255 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_COMPLETE

Un paquet a terminé le processus de signature.

S’il y a plusieurs signataires, alors le « sessionUser » : « ... », sera l’ID du signataire du dernier signataire à signer.

{

"name": 'PACKAGE_COMPLETE',

"sessionUser": '...',

"packageId": '......',

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_CREATE

Un package a été créé. Ainsi, le système d’origine peut enregistrer l’ID de package de OneSpan Sign.com, ainsi que l’ID de transaction du système d’origine.

{

"name": "PACKAGE_CREATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DEACTIVATE

Le statut d’un paquet est passé de ENVOYÉ à BROUILLON.

{

"name": "PACKAGE_DEACTIVATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DECLINE

Un destinataire a refusé de signer un package et a spécifié une raison pour le faire, Le système d’origine peut utiliser cette raison pour déterminer l’étape suivante pour le package.

{

"name": "PACKAGE_DECLINE",

"sessionUser": "...",

"packageId": "......",

"message": "decline reason", (max 4000 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DELETE

Un paquet a été supprimé du système de Sign.com OneSpan.

{

"name": "PACKAGE_DELETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_EXPIRE

La date d’expiration d’un paquet est dépassée.

{

"name": "PACKAGE_EXPIRE",

"sessionUser": "...",

"packageId": "...",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_READY_FOR_COMPLETE

Un colis a été marqué comme DO_NOT_AUTOCOMPLETE. Une action de la part de l’expéditeur sera nécessaire pour compléter le colis.

{

"name": "PACKAGE_READY_FOR_COMPLETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_RESTORE

Un colis a été mis à la poubelle, mais il est remis dans l’état où il se trouvait avant d’être mis à la poubelle.

{

"name": "PACKAGE_RESTORE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_TRASH

Un paquet a été déplacé dans le dossier corbeille de la boîte de réception de OneSpan Sign (statut = CORBEILLE).

{

"name": "PACKAGE_TRASH",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

RECORDINGS_READY

Une fois que tous les signataires ont terminé de signer une transaction de salle virtuelle, la session enregistrée est traitée. Une fois que les enregistrements sont prêts à être téléchargés, cette notification est envoyée.

{

"name":"RECORDINGS_READY",

"sessionUser":"...",

"packageId": "......",

"createdDate":"2022-06-03T14:46:36.808Z"

}

ROLE_REASSIGN

Un signataire a délégué sa signature à un autre signataire.

Lorsque cela se produit, OneSpan Sign crée un nouveau rôle avec un nouveau signataire. À ce stade, il est judicieux d’obtenir l’identifiant du signataire de ce nouveau rôle. C’est l’identifiant du signataire, et non l’identifiant du rôle, qui fera partie des événements futurs, tels que SIGNER_COMPLETE. Connaître l’identifiant du signataire, qui est passé dans l’élément sessionUser de cet événement (et d’autres), facilitera le suivi de l’état des signataires.

{

"name": "ROLE_REASSIGN",

"sessionUser": "...",

"packageId": "......",

"newRoleId": "......", (max 255 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

SIGNER_COMPLETE

Un signataire a terminé la signature de tous les documents.

{

"name": "SIGNER_COMPLETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

SIGNER_LOCKED

Une notification de rappel indique qu’un signataire a été verrouillé en raison d’échecs répétés d’authentification par SMS/questions-réponses.

{

"name": "SIGNER_LOCKED",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

TEMPLATE_CREATE

Une notification de rappel indique qu’un modèle a été créé.

{

"name": "TEMPLATE_CREATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

Réception de notifications d’événements

Une fois que vous vous êtes inscrit pour être informé d’un ou de plusieurs types d’événements, il vous suffit d’écouter les notifications associées. Lorsqu’un événement pertinent est déclenché, OneSpan Sign envoie un HTTP POST à l’URL que vous avez enregistrée. Ce message contient une charge utile au format JSON, décrivant l’événement qui a déclenché la notification.

La clé de rappel que vous avez enregistrée est transmise via l’en-tête Authorization en tant que « Basic {callbackKey} ». Vous devez l’utiliser pour vous assurer que vous recevez des notifications contenant le secret partagé, afin de savoir que vous ne recevez pas d’appels frauduleux et que vous pouvez réagir en conséquence.

Vous trouverez ci-dessous quelques exemples de charge utile de rappel :

// Package was Created
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_CREATE",
  "sessionUser": "18EZDL44xgsX",
  "packageId": "wVdZEaPD2igwUnFGJBjDD0dpO7k=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:04:55.384Z"
}

// Package was Sent
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_ACTIVATE",
  "sessionUser": "18EZDL44xgsX",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:09:50.425Z"
}

// Signer 1 accepted consent document
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "DOCUMENT_SIGNED",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": "default-consent",
  "createdDate": "2018-06-30T20:10:51.002Z"
}

// Signer 1 completed a document
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "DOCUMENT_SIGNED",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": "7caf46cdd75f7a411bf8c22793b84fa79d8d180becc40691",
  "createdDate": "2018-06-30T20:12:12.256Z"
}

// Signer 1 completed signing package
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "SIGNER_COMPLETE",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:12:12.272Z"
}

// Package was Complete
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_COMPLETE",
  "sessionUser": "e00696ec-d6f5-4feb-89c5-a5ce002a6c66",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:15:01.038Z"
}

Configuration des notifications de rappel

Les exemples de code suivants peuvent être utilisés pour définir l’URL de rappel, la clé de rappel et vous abonner à trois notifications d’événements différentes.

  1. Créez votre EslClient avec votre API_KEY et vos API_URL (n’oubliez pas d’utiliser des applications au lieu de votre bac à sable pour les environnements de production). Assurez-vous de remplacer l’API_KEY, le API_URL, l’URL et la KEY par vos propres valeurs.

    final String API_KEY = "YOUR_API_KEY";
    						final String API_URL = "https://sandbox.esignlive.com/api";
    						final String URL = "http://my.url.com";
    						final String KEY = "myCallbackKey";
    				EslClient eslClient = new EslClient( API_KEY, API_URL );
  2. Faites appel à votre EventNotificationService pour vous inscrire aux notifications PACKAGE_CREATE, PACKAGE_DECLINE et PACKAGE_COMPLETE . Vous pouvez également ajouter d’autres abonnements aux notifications à partir du tableau des options ci-dessus.

    eslClient.getEventNotificationService().register(newEventNotificationConfig(URL)
    					.withKey(KEY)
    					.forEvent(NotificationEvent.PACKAGE_CREATE)
    					.forEvent(NotificationEvent.PACKAGE_DECLINE)
    				.forEvent(NotificationEvent.PACKAGE_COMPLETE));

Le résultat

Après avoir exécuté votre code, cliquez sur Admin > Notification d’événement. Vous verrez que les notifications d’événements que vous avez sélectionnées ont été activées.

Kit de développement logiciel (SDK) .NET

Pour télécharger l’exemple de code complet, consultez notre site Code Share .

Les notifications d’événements de rappel vous permettent d’être automatiquement informé des événements liés à un package (dans la nouvelle expérience utilisateur, les packages sont appelés « transactions »). Lorsqu’un événement spécifique se produit, le système envoie automatiquement un message à une destination que vous avez choisie.

Emplacement dans l’interface utilisateur

Tout d’abord, vous devez localiser cette zone dans votre interface utilisateur. Après avoir exécuté votre code, vous pourrez vérifier ici pour vous assurer qu’il s’est exécuté avec succès. Pour trouver la zone de rappel à partir de l’interface utilisateur, connectez-vous à OneSpan Sign et cliquez sur Admin > Notification d’événement.

Notifications disponibles

Avant de passer au code, il serait bon de connaître toutes les notifications disponibles. Comme vous pouvez le voir sur l’image ci-dessus, il y en a plusieurs. Le tableau suivant les répertorie tels qu’ils doivent être représentés, dans votre code :

Dans le tableau suivant :

  • La taille maximale de tous les sessionUser champs est de 255 caractères.

  • La taille maximale de tous les packageId champs est de 255 caractères.

  • Le  sessionUser champ varie selon que l’événement a été généré ou non par un expéditeur ou par un signataire. Les événements déclenchés par l’expéditeur auront l’ID de l’expéditeur. Les événements déclenchés par le signataire auront l’ID du signataire.

Événement

Signification

Charge utile JSON

COBROWSE_REQUEST

Une demande de co-navigation se produit lorsqu’un signataire habituel demande une session de co-navigation avec l’expéditeur de la transaction, généralement pour recevoir de l’aide pour terminer la transaction. Cette demande notifie l’expéditeur sous la forme d’une notification de rappel.

{

"name": "COBROWSE_REQUEST",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-

02T20:17:58.408Z"

"phone":"......",

"comment":"......",

"selectedSupportBusinessHours":["Morning - 9AM to 12PM ((GMT 0:00) GMT)"]

}

DOCUMENT_SIGNED

Un document a été signé ou des consentements ou des ententes de divulgation ont été acceptés.

{

"name": "DOCUMENT_SIGNED",

"sessionUser": "...",

"packageId": "......",

"documentId": "......", (max 256 chars)

"createdDate": "2017-05-

02T20:17:58.408Z"

}

DOCUMENT_VIEWED

Un document a été consulté.

{

"name": "DOCUMENT_VIEWED",

"sessionUser": "...",

"packageId": "......",

"documentId": "......", (max 256 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

EMAIL_BOUNCE

Un e-mail a rebondi. Les types de rebond sont les suivants :

  • « BOUNCE » (un rebond dur)

  • « COMPLAINT » (un rebond doux)

  • « OOTO » (hors du bureau)

  • « INCONNU »

Pour plus d’informations, consultez notre liste de modèles.

{

"name": "EMAIL_BOUNCE",

"sessionUser": "...",

"packageId": "......",

"message": "bounce type",

"createdDate": "2017-05-02T20:17:58.408Z"

}

EDEPOSIT_SUCCESS

La transaction ou les documents ont été déposés avec succès sur eOriginal.

{

"name": "EDEPOSIT_SUCCESS",

"sessionUser": null,

"packageId": "COQj6taUQpUFpzPX76RP_eBhiMk=",

"message": "success.edeposit",

"documentId": null,

"createdDate": 1732287648000

}

EDEPOSIT_FAILURE

La transaction / les documents ne peuvent pas être déposés sur eOriginal d’une manière irrécupérable. Notez que la raison de l’échec peut varier.

{

"name": "EDEPOSIT_FAILURE",

"sessionUser": null,

"packageId": "6Ve4c5qod3joGJL-dRPzRs9g2vM=",

"message": "unrecoverable.error.edeposit: Failed to upload to eOriginal vault.",

"documentId": null,

"createdDate": 1732287802000

}

EDEPOSIT_FAILURE_ATTEMPT

La transaction ou les documents ne peuvent pas être déposés sur eOriginal d’une manière irrécupérable, et il y aura d’autres tentatives automatisées de dépôt des documents.

{  

"name": "EDEPOSIT_ATTEMPT_FAILURE",  

"sessionUser": null,  

"packageId": "VOcc64OByg6jNUpbwixkwFCJhiI=",  

"message": "Callback attempt retry 1/144 failed for GUID: VOcc64OByg6jNUpbwixkwFCJhiI=",  

"documentId": null,  

"createdDate": "2023-10-13T14:24:11.000Z"}

KBA_FAILURE

Il y a eu un échec de l’authentification KBA.

{

"name": "KBA_FAILURE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ACTIVATE

Un paquet est passé de l’état BROUILLON ou SUPPRIMÉ à l’état ENVOYÉ. Par défaut, un package est créé à l’état BROUILLON et est déplacé vers l’état ENVOYÉ lorsqu’il est prêt à être traité par les signataires.

{

"name": "PACKAGE_ACTIVATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ARCHIVE

Une notification de rappel indique qu’un paquet a été archivé.

{

"name": "PACKAGE_ARCHIVE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ATTACHMENT

Une notification de rappel indique qu’un signataire a téléchargé une pièce jointe.

{

"name": "PACKAGE_ATTACHMENT",

"sessionUser": "...",

"packageId": "......",

"message": "attachment name", (max 255 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_COMPLETE

Un paquet a terminé le processus de signature.

S’il y a plusieurs signataires, alors le « sessionUser » : « ... », sera l’ID du signataire du dernier signataire à signer.

{

"name": 'PACKAGE_COMPLETE',

"sessionUser": '...',

"packageId": '......',

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_CREATE

Un package a été créé. Ainsi, le système d’origine peut enregistrer l’ID de package de OneSpan Sign.com, ainsi que l’ID de transaction du système d’origine.

{

"name": "PACKAGE_CREATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DEACTIVATE

Le statut d’un paquet est passé de ENVOYÉ à BROUILLON.

{

"name": "PACKAGE_DEACTIVATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DECLINE

Un destinataire a refusé de signer un package et a spécifié une raison pour le faire, Le système d’origine peut utiliser cette raison pour déterminer l’étape suivante pour le package.

{

"name": "PACKAGE_DECLINE",

"sessionUser": "...",

"packageId": "......",

"message": "decline reason", (max 4000 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DELETE

Un paquet a été supprimé du système de Sign.com OneSpan.

{

"name": "PACKAGE_DELETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_EXPIRE

La date d’expiration d’un paquet est dépassée.

{

"name": "PACKAGE_EXPIRE",

"sessionUser": "...",

"packageId": "...",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_READY_FOR_COMPLETE

Un colis a été marqué comme DO_NOT_AUTOCOMPLETE. Une action de la part de l’expéditeur sera nécessaire pour compléter le colis.

{

"name": "PACKAGE_READY_FOR_COMPLETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_RESTORE

Un colis a été mis à la poubelle, mais il est remis dans l’état où il se trouvait avant d’être mis à la poubelle.

{

"name": "PACKAGE_RESTORE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_TRASH

Un paquet a été déplacé dans le dossier corbeille de la boîte de réception de OneSpan Sign (statut = CORBEILLE).

{

"name": "PACKAGE_TRASH",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

RECORDINGS_READY

Une fois que tous les signataires ont terminé de signer une transaction de salle virtuelle, la session enregistrée est traitée. Une fois que les enregistrements sont prêts à être téléchargés, cette notification est envoyée.

{

"name":"RECORDINGS_READY",

"sessionUser":"...",

"packageId": "......",

"createdDate":"2022-06-03T14:46:36.808Z"

}

ROLE_REASSIGN

Un signataire a délégué sa signature à un autre signataire.

Lorsque cela se produit, OneSpan Sign crée un nouveau rôle avec un nouveau signataire. À ce stade, il est judicieux d’obtenir l’identifiant du signataire de ce nouveau rôle. C’est l’identifiant du signataire, et non l’identifiant du rôle, qui fera partie des événements futurs, tels que SIGNER_COMPLETE. Connaître l’identifiant du signataire, qui est passé dans l’élément sessionUser de cet événement (et d’autres), facilitera le suivi de l’état des signataires.

{

"name": "ROLE_REASSIGN",

"sessionUser": "...",

"packageId": "......",

"newRoleId": "......", (max 255 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

SIGNER_COMPLETE

Un signataire a terminé la signature de tous les documents.

{

"name": "SIGNER_COMPLETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

SIGNER_LOCKED

Une notification de rappel indique qu’un signataire a été verrouillé en raison d’échecs répétés d’authentification par SMS/questions-réponses.

{

"name": "SIGNER_LOCKED",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

TEMPLATE_CREATE

Une notification de rappel indique qu’un modèle a été créé.

{

"name": "TEMPLATE_CREATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

Réception de notifications d’événements

Une fois que vous vous êtes inscrit pour être informé d’un ou de plusieurs types d’événements, il vous suffit d’écouter les notifications associées. Lorsqu’un événement pertinent est déclenché, OneSpan Sign envoie un HTTP POST à l’URL que vous avez enregistrée. Ce message contient une charge utile au format JSON, décrivant l’événement qui a déclenché la notification.

La clé de rappel que vous avez enregistrée est transmise via l’en-tête Authorization en tant que « Basic {callbackKey} ». Vous devez l’utiliser pour vous assurer que vous recevez des notifications contenant le secret partagé, afin de savoir que vous ne recevez pas d’appels frauduleux et que vous pouvez réagir en conséquence.

Vous trouverez ci-dessous quelques exemples de charge utile de rappel :

// Package was Created
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_CREATE",
  "sessionUser": "18EZDL44xgsX",
  "packageId": "wVdZEaPD2igwUnFGJBjDD0dpO7k=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:04:55.384Z"
}

// Package was Sent
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_ACTIVATE",
  "sessionUser": "18EZDL44xgsX",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:09:50.425Z"
}

// Signer 1 accepted consent document
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "DOCUMENT_SIGNED",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": "default-consent",
  "createdDate": "2018-06-30T20:10:51.002Z"
}

// Signer 1 completed a document
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "DOCUMENT_SIGNED",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": "7caf46cdd75f7a411bf8c22793b84fa79d8d180becc40691",
  "createdDate": "2018-06-30T20:12:12.256Z"
}

// Signer 1 completed signing package
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "SIGNER_COMPLETE",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:12:12.272Z"
}

// Package was Complete
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_COMPLETE",
  "sessionUser": "e00696ec-d6f5-4feb-89c5-a5ce002a6c66",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:15:01.038Z"
}

Configuration des notifications de rappel

Les exemples de code suivants peuvent être utilisés pour définir l’URL de rappel, la clé de rappel et vous abonner à trois notifications d’événements différentes.

  1. Créez votre EslClient avec votre API_KEY et vos API_URL (n’oubliez pas d’utiliser des applications au lieu de votre bac à sable pour les environnements de production). Assurez-vous de remplacer le API_KEY, le API_URL, l’URL et la KEY par vos propres valeurs.

    final String API_KEY = "YOUR_API_KEY";
    final String API_URL = "https://sandbox.esignlive.com/api";
    final String URL = "http://my.url.com";
    final String KEY = "myCallbackKey";
    
    EslClient eslClient = new EslClient(API_KEY, API_URL);
  2. Faites appel à votre EventNotificationService pour vous inscrire aux notifications PACKAGE_CREATE, PACKAGE_DECLINE et PACKAGE_COMPLETE . Vous pouvez également ajouter d’autres abonnements aux notifications à partir du tableau des options ci-dessus.

    eslClient.getEventNotificationService().register(newEventNotificationConfig(URL)
                    .withKey(KEY)
                    .forEvent(NotificationEvent.PACKAGE_CREATE)
                    .forEvent(NotificationEvent.PACKAGE_DECLINE)
                    .forEvent(NotificationEvent.PACKAGE_COMPLETE));

Le résultat

Après avoir exécuté votre code, cliquez sur Admin > Notification d’événement. Vous verrez que les notifications d’événements que vous avez sélectionnées ont été activées.

REST API

Pour télécharger l’exemple de code complet, consultez notre site Code Share.

Les notifications d’événements de rappel vous permettent d’être automatiquement informé des événements liés à un package (dans la nouvelle expérience utilisateur, les packages sont appelés « transactions »). Lorsqu’un événement spécifique se produit, le système envoie automatiquement un message à une destination que vous avez choisie.

Emplacement dans l’interface utilisateur

Tout d’abord, vous devez localiser cette zone dans votre interface utilisateur. Après avoir exécuté votre code, vous pourrez vérifier ici pour vous assurer qu’il s’est exécuté avec succès. Pour trouver la zone de rappel à partir de l’interface utilisateur, connectez-vous à OneSpan Sign et cliquez sur Admin > Notification d’événement.

Notifications disponibles

Avant de passer au code, il serait bon de connaître toutes les notifications disponibles. Comme vous pouvez le voir sur l’image ci-dessus, il y en a plusieurs. Le tableau suivant les répertorie tels qu’ils doivent être représentés, dans votre code :

Dans le tableau suivant :

  • La taille maximale de tous les sessionUser champs est de 255 caractères.

  • La taille maximale de tous les packageId champs est de 255 caractères.

  • Le  sessionUser champ varie selon que l’événement a été généré ou non par un expéditeur ou par un signataire. Les événements déclenchés par l’expéditeur auront l’ID de l’expéditeur. Les événements déclenchés par le signataire auront l’ID du signataire.

Événement

Signification

Charge utile JSON

COBROWSE_REQUEST

Une demande de co-navigation se produit lorsqu’un signataire habituel demande une session de co-navigation avec l’expéditeur de la transaction, généralement pour recevoir de l’aide pour terminer la transaction. Cette demande notifie l’expéditeur sous la forme d’une notification de rappel.

{

"name": "COBROWSE_REQUEST",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-

02T20:17:58.408Z"

"phone":"......",

"comment":"......",

"selectedSupportBusinessHours":["Morning - 9AM to 12PM ((GMT 0:00) GMT)"]

}

DOCUMENT_SIGNED

Un document a été signé ou des consentements ou des ententes de divulgation ont été acceptés.

{

"name": "DOCUMENT_SIGNED",

"sessionUser": "...",

"packageId": "......",

"documentId": "......", (max 256 chars)

"createdDate": "2017-05-

02T20:17:58.408Z"

}

DOCUMENT_VIEWED

Un document a été consulté.

{

"name": "DOCUMENT_VIEWED",

"sessionUser": "...",

"packageId": "......",

"documentId": "......", (max 256 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

EMAIL_BOUNCE

Un e-mail a rebondi. Les types de rebond sont les suivants :

  • « BOUNCE » (un rebond dur)

  • « COMPLAINT » (un rebond doux)

  • « OOTO » (hors du bureau)

  • « INCONNU »

Pour plus d’informations, consultez notre liste de modèles.

{

"name": "EMAIL_BOUNCE",

"sessionUser": "...",

"packageId": "......",

"message": "bounce type",

"createdDate": "2017-05-02T20:17:58.408Z"

}

EDEPOSIT_SUCCESS

La transaction ou les documents ont été déposés avec succès sur eOriginal.

{

"name": "EDEPOSIT_SUCCESS",

"sessionUser": null,

"packageId": "COQj6taUQpUFpzPX76RP_eBhiMk=",

"message": "success.edeposit",

"documentId": null,

"createdDate": 1732287648000

}

EDEPOSIT_FAILURE

La transaction / les documents ne peuvent pas être déposés sur eOriginal d’une manière irrécupérable. Notez que la raison de l’échec peut varier.

{

"name": "EDEPOSIT_FAILURE",

"sessionUser": null,

"packageId": "6Ve4c5qod3joGJL-dRPzRs9g2vM=",

"message": "unrecoverable.error.edeposit: Failed to upload to eOriginal vault.",

"documentId": null,

"createdDate": 1732287802000

}

EDEPOSIT_FAILURE_ATTEMPT

La transaction ou les documents ne peuvent pas être déposés sur eOriginal d’une manière irrécupérable, et il y aura d’autres tentatives automatisées de dépôt des documents.

{  

"name": "EDEPOSIT_ATTEMPT_FAILURE",  

"sessionUser": null,  

"packageId": "VOcc64OByg6jNUpbwixkwFCJhiI=",  

"message": "Callback attempt retry 1/144 failed for GUID: VOcc64OByg6jNUpbwixkwFCJhiI=",  

"documentId": null,  

"createdDate": "2023-10-13T14:24:11.000Z"}

KBA_FAILURE

Il y a eu un échec de l’authentification KBA.

{

"name": "KBA_FAILURE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ACTIVATE

Un paquet est passé de l’état BROUILLON ou SUPPRIMÉ à l’état ENVOYÉ. Par défaut, un package est créé à l’état BROUILLON et est déplacé vers l’état ENVOYÉ lorsqu’il est prêt à être traité par les signataires.

{

"name": "PACKAGE_ACTIVATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ARCHIVE

Une notification de rappel indique qu’un paquet a été archivé.

{

"name": "PACKAGE_ARCHIVE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_ATTACHMENT

Une notification de rappel indique qu’un signataire a téléchargé une pièce jointe.

{

"name": "PACKAGE_ATTACHMENT",

"sessionUser": "...",

"packageId": "......",

"message": "attachment name", (max 255 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_COMPLETE

Un paquet a terminé le processus de signature.

S’il y a plusieurs signataires, alors le « sessionUser » : « ... », sera l’ID du signataire du dernier signataire à signer.

{

"name": 'PACKAGE_COMPLETE',

"sessionUser": '...',

"packageId": '......',

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_CREATE

Un package a été créé. Ainsi, le système d’origine peut enregistrer l’ID de package de OneSpan Sign.com, ainsi que l’ID de transaction du système d’origine.

{

"name": "PACKAGE_CREATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DEACTIVATE

Le statut d’un paquet est passé de ENVOYÉ à BROUILLON.

{

"name": "PACKAGE_DEACTIVATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DECLINE

Un destinataire a refusé de signer un package et a spécifié une raison pour le faire, Le système d’origine peut utiliser cette raison pour déterminer l’étape suivante pour le package.

{

"name": "PACKAGE_DECLINE",

"sessionUser": "...",

"packageId": "......",

"message": "decline reason", (max 4000 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_DELETE

Un paquet a été supprimé du système de Sign.com OneSpan.

{

"name": "PACKAGE_DELETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_EXPIRE

La date d’expiration d’un paquet est dépassée.

{

"name": "PACKAGE_EXPIRE",

"sessionUser": "...",

"packageId": "...",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_READY_FOR_COMPLETE

Un colis a été marqué comme DO_NOT_AUTOCOMPLETE. Une action de la part de l’expéditeur sera nécessaire pour compléter le colis.

{

"name": "PACKAGE_READY_FOR_COMPLETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_RESTORE

Un colis a été mis à la poubelle, mais il est remis dans l’état où il se trouvait avant d’être mis à la poubelle.

{

"name": "PACKAGE_RESTORE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

PACKAGE_TRASH

Un paquet a été déplacé dans le dossier corbeille de la boîte de réception de OneSpan Sign (statut = CORBEILLE).

{

"name": "PACKAGE_TRASH",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

RECORDINGS_READY

Une fois que tous les signataires ont terminé de signer une transaction de salle virtuelle, la session enregistrée est traitée. Une fois que les enregistrements sont prêts à être téléchargés, cette notification est envoyée.

{

"name":"RECORDINGS_READY",

"sessionUser":"...",

"packageId": "......",

"createdDate":"2022-06-03T14:46:36.808Z"

}

ROLE_REASSIGN

Un signataire a délégué sa signature à un autre signataire.

Lorsque cela se produit, OneSpan Sign crée un nouveau rôle avec un nouveau signataire. À ce stade, il est judicieux d’obtenir l’identifiant du signataire de ce nouveau rôle. C’est l’identifiant du signataire, et non l’identifiant du rôle, qui fera partie des événements futurs, tels que SIGNER_COMPLETE. Connaître l’identifiant du signataire, qui est passé dans l’élément sessionUser de cet événement (et d’autres), facilitera le suivi de l’état des signataires.

{

"name": "ROLE_REASSIGN",

"sessionUser": "...",

"packageId": "......",

"newRoleId": "......", (max 255 chars)

"createdDate": "2017-05-02T20:17:58.408Z"

}

SIGNER_COMPLETE

Un signataire a terminé la signature de tous les documents.

{

"name": "SIGNER_COMPLETE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

SIGNER_LOCKED

Une notification de rappel indique qu’un signataire a été verrouillé en raison d’échecs répétés d’authentification par SMS/questions-réponses.

{

"name": "SIGNER_LOCKED",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

TEMPLATE_CREATE

Une notification de rappel indique qu’un modèle a été créé.

{

"name": "TEMPLATE_CREATE",

"sessionUser": "...",

"packageId": "......",

"createdDate": "2017-05-02T20:17:58.408Z"

}

Réception de notifications d’événements

Une fois que vous vous êtes inscrit pour être informé d’un ou de plusieurs types d’événements, il vous suffit d’écouter les notifications associées. Lorsqu’un événement pertinent est déclenché, OneSpan Sign envoie un HTTP POST à l’URL que vous avez enregistrée. Ce message contient une charge utile au format JSON, décrivant l’événement qui a déclenché la notification.

La clé de rappel que vous avez enregistrée est transmise via l’en-tête Authorization en tant que « Basic {callbackKey} ». Vous devez l’utiliser pour vous assurer que vous recevez des notifications contenant le secret partagé, afin de savoir que vous ne recevez pas d’appels frauduleux et que vous pouvez réagir en conséquence.

Vous trouverez ci-dessous quelques exemples de charge utile de rappel :

// Package was Created
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_CREATE",
  "sessionUser": "18EZDL44xgsX",
  "packageId": "wVdZEaPD2igwUnFGJBjDD0dpO7k=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:04:55.384Z"
}

// Package was Sent
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_ACTIVATE",
  "sessionUser": "18EZDL44xgsX",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:09:50.425Z"
}

// Signer 1 accepted consent document
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "DOCUMENT_SIGNED",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": "default-consent",
  "createdDate": "2018-06-30T20:10:51.002Z"
}

// Signer 1 completed a document
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "DOCUMENT_SIGNED",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": "7caf46cdd75f7a411bf8c22793b84fa79d8d180becc40691",
  "createdDate": "2018-06-30T20:12:12.256Z"
}

// Signer 1 completed signing package
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "SIGNER_COMPLETE",
  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:12:12.272Z"
}

// Package was Complete
{
  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",
  "name": "PACKAGE_COMPLETE",
  "sessionUser": "e00696ec-d6f5-4feb-89c5-a5ce002a6c66",
  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,
  "documentId": null,
  "createdDate": "2018-06-30T20:15:01.038Z"
}

Configuration des notifications de rappel

Les exemples de code suivants peuvent être utilisés pour définir l’URL de rappel, la clé de rappel et vous abonner à trois notifications d’événements différentes.

Requête HTTP

 POST /api/callback

En-têtes HTTP

Accept: application/json   
Content-Type: application/json   

Charge utile de la demande

{
  "url": "https://www.esl.com/callbackNotifications",
  "key": "secureKey#1",
  "events": [
    "PACKAGE_CREATE",
    "PACKAGE_DECLINE",
    "PACKAGE_COMPLETE"
  ]
}

Pour une description complète de chaque champ, consultez le tableau Charge utile de la demande ci-dessous.

Charge utile de réponse

{
  "url": "https://www.esl.com/callbackNotifications",
  "key": "secureKey#1",
  "events": [
    "PACKAGE_CREATE",
    "PACKAGE_DECLINE",
    "PACKAGE_COMPLETE"
  ]
}

Le résultat

Après avoir exécuté votre code, cliquez sur Admin > Notification d’événement. Vous verrez que les notifications d’événements que vous avez sélectionnées ont été activées.

Tableau des données utiles de la demande

Propriété

Type

Modifiable

Obligatoire

Faire défaut

Exemples de valeurs

URL

corde

Oui

Non

n/a

https://www.esl.com/callbackNotifications

clé

corde

Oui

Non

n/a

secureKey#1


Cet article vous a-t-il été utile ?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.
ESC

Ozzy, facilitant la découverte de connaissances grâce à l’intelligence conversationnelle