Saltar para o conteúdo principal
Cada passo de Assinatura eletrónica produz um resultado por signatário. Encontra-o como um item de signatures[] em: signatures só está presente na decisão quando o fluxo tem um passo de Assinatura eletrónica. É uma matriz vazia até que um signatário chegue ao passo. Um passo de KYC tem um item; um passo de KYB tem um item por signatário.

Exemplo

O objeto de assinatura

Nunca considere que um signatário assinou até que status seja signed. Numa assinatura Avançada (AES), um certificado, carimbo de data/hora ou signed_file com valor null significa que ainda não existe assinatura. Uma assinatura Simples assinada tem um signed_file, mas tem sempre um certificado e carimbo de data/hora null.

Signatário

Documentos

Campos

Cada item de documents[].fields[] é um campo do documento, com o respetivo valor na cópia do signatário:

Descarregar os documentos assinados

Utilize os caminhos em signed_file e evidence_file com a sua chave de API. Cada rota responde com o próprio PDF.
Antes de responder, a Didit compara o ficheiro armazenado com o respetivo SHA-256 registado. Se divergirem, as rotas do PDF assinado e da evidência devolvem 409 e a rota da imagem devolve 400, cada uma com signature_document_changed. Transmita sempre o signature_id para a rota da evidência quando um passo de KYB tiver múltiplos signatários.

O PDF assinado

O PDF assinado contém, por ordem:
  1. As páginas do documento que foram apresentadas ao signatário, com o valor de cada campo gravado no local onde o posicionou.
  2. A página de evidência, a menos que tenha desativado a opção signature_evidence_page.
  3. Apenas para a assinatura avançada (AES), a assinatura PAdES, com o carimbo de data/hora RFC 3161 emitido pela Didit e os dados de revogação necessários para a validar no futuro. Um PDF simples termina após a página de evidência e não contém assinatura digital, selo nem carimbo de data/hora.
Num PDF avançado (AES), a assinatura cobre todos os bytes anteriores, incluindo os valores dos campos e a página de evidência. Alterar qualquer elemento no ficheiro posteriormente invalida-o, e qualquer validador compatível com PAdES apresentará esse facto. Os detalhes da assinatura identificam o signatário e referenciam a respetiva sessão de identidade verificada e a confirmação por código. Os valores dos campos passam a fazer parte integrante do conteúdo da página e não de campos de formulário, pelo que não podem ser editados posteriormente e são visíveis em qualquer leitor de PDF. Uma caixa de seleção assinalada apresenta uma marca de seleção, e uma que não foi assinalada é mantida conforme desenhada no documento. Uma caixa de assinatura com mais de 24 pontos de altura inclui também uma pequena legenda sob a assinatura: Signed with Didit · seguida dos primeiros 8 carateres do id da assinatura. A Didit adiciona os valores dos campos, a página de evidência e a assinatura a seguir aos bytes do documento que foi apresentado ao signatário. Esse documento é um prefixo exato do ficheiro assinado, pelo que o sha256_original ainda pode ser verificado em relação ao PDF assinado.

O PDF de evidência

O PDF de evidência regista, para um determinado signatário:
  • O nível e o formato.
  • O nome do signatário, a qualidade em que assina e, para KYB, a empresa.
  • A sessão de identidade verificada (apenas para Advanced (AES)).
  • A confirmação: canal, destino mascarado e hora (apenas para Advanced (AES)).
  • O endereço IP do signatário.
  • Cada documento: título, número de páginas e SHA-256 do original. Para um documento Word, o nome e o SHA-256 do ficheiro Word, a versão do conversor e o SHA-256 do PDF.
  • A assinatura adotada: digitada (com o respetivo estilo de caligrafia) ou desenhada, quando foi adotada, e as imagens da assinatura e da rubrica.
  • Cada campo, por documento: a etiqueta, página e tipo, o respetivo valor (a imagem para uma assinatura ou rubrica), a origem do valor (por exemplo, Digitado pelo signatário, Documento de identificação verificado ou A sua API), quando foi preenchido (UTC) e, para um valor digitado pelo signatário, o respetivo endereço IP nesse momento.
  • O consentimento final: o texto que o signatário aceitou no ecrã de revisão e o momento em que o fez.
  • O SHA-256 de cada ficheiro assinado e, para a assinatura avançada (AES), o certificado (emitido para, entidade emissora, número de série e validade) e o carimbo de data/hora.
A página anexada a cada PDF assinado contém o mesmo conteúdo, exceto a secção do certificado, uma vez que a página é adicionada antes de a assinatura ser aplicada.

Validar novamente uma assinatura

O endpoint POST /v3/session/{session_id}/signatures/{node_id}/validate/ relê cada PDF assinado do passo e verifica o respetivo SHA-256. No caso de uma assinatura Avançada (AES), também valida a assinatura PAdES, o respetivo certificado, os dados de revogação e o carimbo de data/hora. Uma assinatura Simples não possui assinatura digital, pelo que a verificação incide unicamente na integridade do ficheiro. Guarda o resultado em validation e devolve o array signatures[] atualizado. Envie signature_id para verificar um único signatário. Requer write:sessions e, na consola, corresponde ao botão Validar novamente. Um PDF assinado armazenado que já não coincida com o respetivo sha256_signed devolve 400 com signature_document_changed. Até os documentos serem assinados, validation é null. Se a Didit não conseguir confirmar o resultado da assinatura, validation fica com { "valid": null, "reason": "signature_provider_outcome_unknown", "checked_at" } e status mantém-se em signing até estar resolvido: trate-o como não assinado.

No relatório em PDF

O relatório em PDF imprime uma secção de assinatura com o signatário, a confirmação, o certificado, o carimbo de data/hora e os documentos com os respetivos hashes. Quando os documentos contêm campos, segue-se uma página Assinatura eletrónica · campos, com uma tabela por documento: o valor de cada campo, as imagens da assinatura e das rubricas, as horas e as fontes. A secção de assinatura surge após a verificação bancária num relatório de KYC e após Documentos num relatório de KYB. Transmita pages=signature para imprimir apenas essa secção.

Relacionados

Última modificação em 7 de novembro de 2026