Firma Web desde link

Este flujo está pensado para poder firmar una petición desde un navegador web y sin necesidad de abrir sesión.

Para su uso, tenemos dos opciones:

  • Enviar por correo electrónico un enlace que redirecciona a la página web pública donde se realizará la firma web.
  • Recuperar el mensaje a través del servicio message y localizar el link de la firma web en el json obtenido.

En caso de que se requiera aprobación, el usuario deberá confirmar o rechazar dicha aprobación (Ver la sección Servicios para aprobación más abajo).

Por tanto, el ciclo de vida de este flujo se resumen en los siguientes pasos:

  • se recibe nuevo mensaje,
  • se envía el enlace por correo electrónico o recuperamos el link a través del servicio message,
  • se firma la petición desde el navegador web,
  • si la petición requiere aprobación, desde el backend o el backoffice integrado se confirma o rechaza la aprobación,
  • si la petición no requiere ninguna aprobación, el flujo finaliza.

Mensaje de Ejemplo

nota: puedes parametrizar el siguiente JSON de ejemplo y usarlo tal y como se explica en el capítulo 2 "Testing" a través de la UI habilitada en el backend de viafirma documents.

Envío de enlace por correo electrónico

{
  "workflow" : {
    "code" : "EX006",
    "type" : "WEB"
  },
  "notification" : {
    "text" : "Firma biométricas simple con check en backend",
    "detail" : "Check en backend requerido",
    "sharedLink" : {
      "appCode" : "com.viafirma.documents",
      "email" : "[email protected]",
      "subject" : "Asunto del correo"
    }
  },
  "document" : {
    "templateCode" : "firma_web_test",
    "items" : [ {
      "key" : "KEY_01",
      "value" : "Test value"
    }, {
      "key" : "KEY_02",
      "value" : "Test value"
    }, {
      "key" : "KEY_03",
      "value" : "Test value"
    }, {
      "key" : "KEY_04",
      "value" : "Test value"
    } ]
  },
  "policies": [
      {
        "evidences": [
          {
            "type": "SIGNATURE",
            "helpText": "Firma del usuario",
            "typeFormatSign": "XADES_B"
          }
        ],
        "signatures": [
          {
            "type": "SERVER",
            "helpText": "Firma del servicio",
            "typeFormatSign": "PADES_B"
          }
        ]
      }
    ]
}

Generación de enlace sin correo electrónico


{
  "workflow" : {
    "code" : "EX006",
    "type" : "WEB"
  },
  "notification" : {
    "text" : "Firma biométricas simple con check en backend",
    "detail" : "Check en backend requerido",
    "sharedLink" : {
      "appCode" : "com.viafirma.documents",
    }
  },
  "document" : {
    "templateCode" : "firma_web_test",
    "items" : [ {
      "key" : "KEY_01",
      "value" : "Test value"
    }, {
      "key" : "KEY_02",
      "value" : "Test value"
    }, {
      "key" : "KEY_03",
      "value" : "Test value"
    }, {
      "key" : "KEY_04",
      "value" : "Test value"
    } ]
  },
  "policies": [
      {
        "evidences": [
          {
            "type": "SIGNATURE",
            "helpText": "Firma del usuario",
            "typeFormatSign": "XADES_B"
          }
        ],
        "signatures": [
          {
            "type": "SERVER",
            "helpText": "Firma del servicio",
            "typeFormatSign": "PADES_B"
          }
        ]
      }
    ]
}

Servicios para aprobación

Los servicios para confirmar o rechazar una aprobación son públicos, de forma que son accesibles desde la aplicación con usuario logado, en la parte de documentación de los servicios REST, introduciendo la clave public-key.

Confirmar

Para confirmar la aprobación, será necesario indicar el código de mensaje, así como el código de la aprobación. Además, se podrá requerir un código de validación configurable desde la política de la petición.

Rechazar

Para rechazar la aprobación, será necesario indicar el código de mensaje, así como el código de la aprobación. De forma opcional, el usuario podrá indicar un comentario con el motivo de rechazo. Además, se podrá requerir un código de validación, configurable desde la política de la petición.

results matching ""

    No results matching ""