Uso de formularios desde API
Última revisión: 04 Febrero 2022
Si tu proceso de firma cuenta con un formulario y necesitas que parte de dicho formulario sea completada por el usuario final, y la otra parte
la completas tú desde API, debes hacer uso del atributo "formDisabled" : true
.
Con este atributo a true el usuario final SOLO podrá completar aquellos campos del formulario que estén vacío.
formDisabled: true
= el usuario final solo podrá completar los campos de formulario que estén vacíosformDisabled: false
= el usuario final podrá completar los campos de formulario que estén vacíos y además podrá editar los que ya vengan informados desde el API
Este atributo siempre debe usarse junto al atributo formRequired: true
, que sirve para mostrar el formulario como paso previo a la firma.
"document" : {
"formRequired" : true,
"formDisabled" : true
}
También debes saber:
- el formulario NO se puede diseñar desde API
- el formulario deber haber sido diseñado previametne en tu plantilla,
- los ítems del formulario los puedes referencias de dos formas: como un array de ítems dentro del objeto "document" o bien como un array de metadata en las propiedades del message.
- no es necesario incluir en el array todos los ítems del formulario, puedes incluir solo los ítems a los que quieras agregarle un valor, los que nos incluyas se pintarán en el formulario acorde al diseño que hayas hecho desde tu plantilla pero sin valor, a menos que en el diseño del formulario hayas configurado para dichos ítems un valor por defecto.
Ejemplo de uso
En el siguiente ejemplo se dejan vacío los campos SIGNER_01_MAIL y SIGNER_02_MAIL, y serán los únicos que el usuario final podrá completar. Los otros los verá deshabilitados.
{
"groupCode" : "viafirma",
"externalCode" : "testExternal_00",
"workflow" : {
"type" : "WEB"
},
"notification" : {
"text" : "TEST Firma web con formulario mixto",
"detail" : "el usuario solo completa los campos vacíos"
},
"document" : {
"templateCode" : "test_form_mixto",
"readRequired" : false,
"watermarkText" : "Borrador",
"formRequired" : true,
"formDisabled" : true
},
"metadataList" : [{
"key" : "SIGNER_01_NAME",
"value" : "John Doe"
},{
"key" : "SIGNER_01_MAIL",
"value" : ""
},{
"key" : "SIGNER_02_NAME",
"value" : "Sara Conor"
},{
"key" : "SIGNER_02_MAIL",
"value" : ""
}]
}
Poniendo "formDisabled" : false
, el usuario podrá completar los vacíos e incluso podrá editar los campos que ya vinieran informados.
En este ejemplo el usuario solo podrá completar los campos que no fueron informados con valor desde el API:
En este vídeo te mostramos cómo usarlo:
https://drive.google.com/file/d/1CoB3Sl7izxmbNvLrTIpKd0rIMY8C8rGa/view?usp=sharing
Uso de formularios en los SETS de documentos desde el API
En los documentos con más de un firmante que tienen un formulario asociado, este formulario debe asignarse a uno de los firmante mediantes el atributo formRecipientKey
.
Es importante indicar que en las solicitudes, los firmantes deben tener un orden y el firmante asociado al formulario debe ser el primero en el orden.
{
"groupCode" : "<here_your_groupCode>",
"title" : "<here_your_title>",
"description" : "<here_your_description>",
"recipients": [
{
"key": "signer01",
"phone": "<here_signer01_mobile_with_prefix>",
"mail": "<here_signer01_email>",
"name": "<here_signer01_name>",
"order": "1",
"id": "<here_signer01_id>"
},{
"key": "signer02",
"phone": "<here_signer01_mobile_with_prefix>",
"mail": "<here_signer02_email>",
"name": "<here_signer02_name>",
"order": "2",
"id": "<here_signer02_id>"
}
],
"customization": {
"requestMailSubject": "Contrato listo para firmar",
"requestMailBody": "Hola {{recipient.name}}. <br /><br />Ya puedes revisar y firmar el contrato. Haz click en el siguiente enlace y sigue las instrucciones.",
"requestSmsBody": "En el siguiente link puedes revisar y firmar el contrato"
},
"messages" : [{
"document" : {
"templateCode" : "<templateCode_1>",
"formRequired" : true,
"formRecipientKey": "signer01"
}
}]
}
results matching ""
No results matching ""