Firma desatendida

Última revisión: 24 Enero 2022

El API de Viafirma te permite firmar documentos PDF y XML de forma desatendida, es decir, sin la participación del usuario.

Firma desatendida de ficheros PDF y XML:

  • Formatos admitidos para PDF: PADES_B, PADES_T,PADES_LT,PADES_LTA
  • Formatos admitidos para XML: XADES_B, XADES_T, XADES_LT, XADES_LTA

Firma desatendida con método síncrono

El servicio genera una solicitud, construye el documento, lo firma en servidor y devuelve un link para descarga del documento firmado de manera síncrona. Recomendado para procesos de baja concurrencia, uso esporádico o puntual.

  • SERVICIO: {urlbase}/documents/api/v3/messages/document/build
  • METHOD: POST
  • CONTENT/APPLICATION: JSON
{
  "groupCode" : "string",
  "externalCode" : "string",
  "notification" : {
    "text" : "string",
    "detail" : "string"
  },
  "document" : {
    "templateType": "string",
    "templateReference" : "string"
  },
  "policies" : [ {
    "signatures" : [ {
      "type" : "string",
      "typeFormatSign" : "string"
    } ]
  } ]
}

Donde:

groupCode: string (required)
externalCode: string (optional)

notification:

 text: string (optional)
 detail: string (optional)

document:

 templateType: string (required) [base64|url|messsage|uploaded]
 templateReference: string (required) [base64_value|URL_value|messageCode|token]

policies signatures:

 type: string (required) ['SERVER']
 typeFormatSign = (required) ['PADES_B'|'PADES_T'|'PADES_LT'|'PADES_LTA'|'XADES_B'|'XADES_T'|'XADES_LT'|'XADES_LTA']

Ejemplo:

{
  "groupCode" : "myGroup001",
  "externalCode" : "myContratNumber_001",
  "notification" : {
    "text" : "Test firma desatendida SÍNCRONA",
    "detail" : "Firma sin intervención de usuarios"
  },
  "document" : {
    "templateType": "uploaded",
    "templateReference" : "<..here your token..>"
  },
  "policies" : [ {
    "signatures" : [ {
      "type" : "SERVER",
      "typeFormatSign" : "PADES_B"
    } ]
  } ]
}

Respuesta

  • RESPONSE: 200 HTTP status code 200/OK
  • RESPONSE CONTENT TYPE: application/json
{
  "md5": "string",
  "fileName": "string",
  "base64": "string",
  "code": "string",
  "signedID": "string"
}
  • md5: MD5 del documento firmado
  • fileName: nombre del documento firmado
  • base64: base64 del documento firmado
  • code: identificador único del proceso de firma
  • signedID: identificador único del código de firma (nota: proceso de firma podrá tener 1 ó N firmas, por lo tanto, N signedID)

Respuestas Error

Respuestas alternativas en caso de fallo: se devolverán HTTP status codes distintos de 200/OK. En ese caso siempre se devolverá un JSON con la descripción del problema:

    {
      "code": "string",
      "type": "string",
      "message": "string",
      "trace" : "string"
    }

Firma desatendida con método asíncrono

El servicio genera una solicitud y devuelve un código del proceso, a partir del cual podrá ser consultado el estado de la firma y en cuyo caso, se podrá solicitar el link de descarga. Recomendado para procesos de alta concurrencia o procesos en lote.

  • SERVICIO: {urlbase}/documents/api/v3/messages/build
  • METHOD: POST
  • CONTENT/APPLICATION: JSON
{
  "groupCode" : "string",
  "externalCode" : "string",
  "notification" : {
    "text" : "string",
    "detail" : "string"
  },
  "document" : {
    "templateType": "string",
    "templateReference" : "string"
  },
  "policies" : [ {
    "signatures" : [ {
      "type" : "string",
      "typeFormatSign" : "string"
    } ]
  } ]
}

Donde:

groupCode: string (required)
externalCode: string (optional)

notification:

 text: string (optional)
 detail: string (optional)

document:

 templateType: string (required) [base64|url|messsage|uploaded]
 templateReference: string (required) [base64_value|URL_value|messageCode|token]

policies signatures:

 type: string (required) ['SERVER']
 typeFormatSign = (required) ['PADES_B'|'PADES_T'|'PADES_LT'|'PADES_LTA'|'XADES_B'|'XADES_T'|'XADES_LT'|'XADES_LTA']

Ejemplo:

{
  "groupCode" : "myGroup001",
  "externalCode" : "myContratNumber_001",
  "notification" : {
    "text" : "Test firma desatendida SÍNCRONA",
    "detail" : "Firma sin intervención de usuarios"
  },
  "document" : {
    "templateType": "uploaded",
    "templateReference" : "<..here your token..>"
  },
  "policies" : [ {
    "signatures" : [ {
      "type" : "SERVER",
      "typeFormatSign" : "PADES_B"
    } ]
  } ]
}

Respuesta

  • RESPONSE: 200 HTTP status code 200/OK
  • RESPONSE CONTENT TYPE: application/json
{
  "messageCode": "string"
}
  • messageCode: identificador único del proceso de firma con el que podrás consultar el estado y solicitar la descarga del documento firmado

Respuestas Error

Respuestas alternativas en caso de fallo: se devolverán HTTP status codes distintos de 200/OK. En ese caso siempre se devolverá un JSON con la descripción del problema:

    {
      "code": "string",
      "type": "string",
      "message": "string",
      "trace" : "string"
    }

results matching ""

    No results matching ""