Enviar PDF para firma a distancia

El PDF se mostrará embebido en un visor web disponible en una página web disponible en un link seguro y único. El link de acceso a esta página web podrá notificarse automáticamente al usuario final mediante tres mecanismos:

  • SMS
  • Email
  • o bien, obtener el link de firma para montar la página de forma embebida en un sistema externo, por ejemplo, una web-wiew o iframe.

Para hacer uso de cualquiera de los mecanismos previstos para la FIRMA a DISTANCIA, tendremos que indicar el tipo WEB en el flujo de trabajo, o en su defecto para versiones anteriores a 3.6 el código EX06.

{
  "workflow" : {
    "code" : "EX006",
    "type" : "WEB"
  }
}
  • workflow.code: en versiones anteriores a 3.6 se usa para definir el tipo de flujo de trabajo, y en los mecanismos previstos para firmas a distancia, se debe usar el código EX006. Esto habilitará la generación automática del link de firma con el que permitiremos al usuario final participar en el proceso de firma.
  • workflow.type: en versiones 3.6 sustituye al atributo CODE, y en los mecanismos previstos para firmas a distancia, se debe usar el tipo WEB. Ambos atributos se podrán usar conjuntamente para mantener compatibilidad hacia atrás en caso de usar modelos diseñados con versiones anteriores.

Una vez definido el tipo de flujo de trabajo que vamos a habilitar para la firma, se debe definir el DOCUMENTO que deseamos firmar. Para ello usaremos el ojbeto DOCUMENT, tal y como se detalla en capítulo "Cómo enviar un PDF".

Para este ejemplo usaremos una configuración básica de documento:

{
  "document": {
    templateReference:"https://www.viafirma.com/myPDF_sample.pdf",
    templateType:"url",
    policyCode:"myPolicyCode_sample_001"
  }
}

Con el flujo de trabajo y documento definido, ya sólo falta definir cómo vamos a comunicarnos con el usuario final, y para ello vamos a explicar la estructura del objeto NOTIFICATION.

Notification {
  text (string),
  detail (string),
  notificationType (string, optional) = ['PUSH_IOS', 'PUSH_ANDROID', 'CALLBACK', 'MAIL', 'SMS'],
  sharedLink (SharedLink, optional),
  devices (Array[Device], optional)
}

objeto Notification:

  • Notification.text: título de la notificación.
  • Notification.detail: descripción de la notificación.
  • Notification.notificationType: tipo de notificación elegida: 'PUSH_IOS', 'PUSH_ANDROID', 'CALLBACK', 'MAIL', 'SMS'
  • Notification.sharedLink: sólo en caso de notificaciones tipo mail, SML o generación de links de firma.
  • Notification.devices: sólo en caso de notificaciones tipo iOS y Android.

objeto Device:

Para las notificaciones en procedimientos de firmas presenciales, donde usaremos las apps de viafirma documents, usaremos el objeto Device:

Device {
  appCode (string),
  code (string),
  userCode (string)
}
  • Device.appCode: código de la app a la que queremos hacer llegar el PDF. Por ejemplo, com.viafirma.documents.
  • Device.code: código del dispositivo; este código es elegido por el usuario, o bien auto-asignado por el sistema, dependiendo de la configuración del servicio, por ejemplo "customer_care_ipad01".
  • Device.userCode: username del usuario de la app, por ejemplo "[email protected]".

Cuando usemos notificaciones vía SMS o Email, o usemos el link de firma para embeberlo en un sistema externo, usaremos el objeto SharedLink:

SharedLink {
  email (string, optional),
  subject (string, optional),
  phone (string, optional)
}
  • SharedLink.email: email del destinatario.
  • SharedLink.subject: asunto del email remitido al destinatario.
  • SharedLink.phone: número de teléfono móvil, incluyendo prefijo internacional, al que se le notificará vía SMS.

Resumen de la estructura del mensaje

En resumen, el mensaje que tendremos que intercambiar con viafirma tendrá la siguiente estructura:

Ejemplo de uso para firma a distancia:

{
  "notification" : {
    "text" : "Nuevo contrato pendiente de firma",
    "detail" : "Cliente con ref. A1882",
    "notificationType" : "MAIL",
    "sharedLink" : {
      "email" : "[email protected]",
      "subject" : "viafirma: testing with ref. number [MESSAGE_CODE]"
    }
  },
  "document" : {
    templateReference:"https://www.viafirma.com/myPDF_sample.pdf",
    templateType:"url",
    policyCode:"myPolicyCode_sample_001"
  },
  "workflow" : {
    "code" : "EX006",
    "type" : "WEB"
  }
}

results matching ""

    No results matching ""